@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;700&family=IBM+Plex+Sans:wght@400;500;600;700&family=Cairo:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap");

:root{
  --bg:#ffffff;
  --bg-2:#f4f9ff;
  --card:#ffffff;
  --card-2:#f7fbff;
  --text:#1b1a18;
  --muted:#4b4f57;
  --line:#d2dbe6;
  --accent:#1aa0d6;
  --accent-strong:#117cab;
  --accent-2:#49a84b;
  --danger:#c5363c;
  --shadow:0 12px 30px rgba(40,34,26,0.12);
  --radius:18px;
  --font-body:"Merriweather","Noto Naskh Arabic",serif;
  --font-display:"Merriweather","Noto Naskh Arabic",serif;
  --font-mono:"JetBrains Mono","Menlo",monospace;
  --status-info-bg:rgba(26,160,214,0.18);
  --status-info-text:#0f5f85;
  --status-warn-bg:rgba(241,166,26,0.2);
  --status-warn-text:#8a4f00;
  --status-ok-bg:rgba(73,168,75,0.2);
  --status-ok-text:#1e7d3a;
  --status-hold-bg:rgba(100,116,139,0.16);
  --status-hold-text:#475569;
  --status-danger-bg:rgba(197,54,60,0.18);
  --status-danger-text:#9c2d33;
}

*{box-sizing:border-box}

body{
  margin:0;
  color:var(--text);
  font-family:var(--font-body);
  direction:inherit;
  background:
    radial-gradient(1200px 600px at 8% -12%, rgba(26,160,214,0.12) 0%, var(--bg) 60%),
    radial-gradient(1000px 500px at 110% 6%, rgba(73,168,75,0.12) 0%, var(--bg) 55%),
    linear-gradient(180deg, var(--bg), var(--bg-2));
  min-height:100vh;
}

body[data-lang="ar"]{
  --font-body:"Noto Naskh Arabic",serif;
  --font-display:"Noto Naskh Arabic",serif;
  line-height:1.45;
}

body::before,
body::after{
  content:none;
}

.page{
  position:relative;
  z-index:1;
  max-width:1180px;
  margin:0 auto;
  padding:18px 16px 40px;
}

.topbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding-bottom:8px;
}

.brand{
  display:flex;
  align-items:center;
  gap:14px;
}

.logo{
  width:66px;
  height:66px;
  border-radius:20px;
  background:#fff;
  color:var(--text);
  border:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
  letter-spacing:0.02em;
  font-size:14px;
  overflow:hidden;
}

.logo img{
  width:100%;
  height:100%;
  object-fit:contain;
}

.brand-text h1{
  margin:0;
  font-size:22px;
  font-family:var(--font-display);
  font-weight:700;
}

.sub{
  color:var(--muted);
  font-size:13px;
  margin-top:2px;
}

.station-pill{
  display:inline-block;
  margin-inline-start:6px;
  padding:4px 8px;
  border-radius:999px;
  background:var(--accent);
  color:#fff;
  font-size:11px;
  letter-spacing:0.02em;
}

.auth{
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--muted);
  font-size:13px;
  flex-wrap:wrap;
  background:rgba(255,255,255,0.65);
  border:1px solid var(--line);
  border-radius:14px;
  padding:6px 10px;
  box-shadow:0 6px 16px rgba(40,34,26,0.12);
}

.who{
  font-weight:500;
}

.ops-env-badge{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 9px;
  border-radius:999px;
  border:1px solid rgba(17,124,171,0.20);
  background:rgba(219,234,254,0.72);
  color:#0f5e82;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
}

.ops-env-badge.is-local{
  border-color:rgba(245,158,11,0.34);
  background:rgba(254,243,199,0.82);
  color:#92400e;
}

.ops-env-badge.is-shared{
  border-color:rgba(34,197,94,0.26);
  background:rgba(220,252,231,0.82);
  color:#166534;
}

.station-nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:8px 0 16px;
}

.admin-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:8px 0 12px;
}

.operations-tabs{
  padding:10px;
  border:1px solid rgba(26,160,214,0.18);
  border-radius:18px;
  background:linear-gradient(140deg, rgba(255,255,255,0.92), rgba(236,246,255,0.86));
  box-shadow:0 10px 24px rgba(40,34,26,0.08);
}

.operations-nav-shell{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin:8px 0 14px;
}

.operations-tab-groups{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.operations-group-btn{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:10px 16px;
  border-radius:14px;
  border:1px solid rgba(26,160,214,0.18);
  background:linear-gradient(155deg, rgba(255,255,255,0.98), rgba(242,247,255,0.92));
  color:var(--text);
  font-size:14px;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(31,88,130,0.08);
  transition:transform 0.12s ease, box-shadow 0.12s ease, border-color 0.2s ease, background 0.2s ease;
}

.operations-group-btn:hover{
  transform:translateY(-1px);
  border-color:rgba(26,160,214,0.32);
  box-shadow:0 12px 22px rgba(31,88,130,0.12);
}

.operations-group-btn.active{
  background:linear-gradient(145deg, rgba(26,160,214,0.22), rgba(13,132,180,0.1));
  color:var(--accent);
  border-color:rgba(26,160,214,0.36);
  box-shadow:0 12px 24px rgba(26,160,214,0.14);
}

.operations-group-hint{
  margin:-2px 2px 0;
  color:var(--muted);
  font-size:13px;
  font-weight:600;
}

.operations-advanced-nav{
  display:flex;
  align-items:center;
  gap:10px;
  margin:6px 2px 0;
  flex-wrap:wrap;
}

.operations-advanced-nav .secondary-btn{
  padding:8px 12px;
}

.operations-advanced-nav-hint{
  color:var(--muted);
  font-size:12px;
  font-weight:600;
}

.operations-tabs .admin-tab-btn{
  padding:9px 14px;
  border-radius:12px;
  border-color:rgba(128,146,168,0.3);
  background:linear-gradient(160deg, rgba(255,255,255,0.96), rgba(243,248,255,0.9));
  box-shadow:0 4px 10px rgba(25,35,52,0.06);
}

.operations-tabs .admin-tab-btn:hover{
  transform:translateY(-1px);
  border-color:rgba(26,160,214,0.34);
  box-shadow:0 10px 18px rgba(31,88,130,0.12);
}

.operations-tabs .admin-tab-btn.active{
  background:linear-gradient(145deg, rgba(26,160,214,0.22), rgba(13,132,180,0.1));
  color:var(--accent);
  border-color:rgba(26,160,214,0.38);
  box-shadow:0 10px 20px rgba(26,160,214,0.16);
}

.operations-subtabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:8px 10px 2px;
  margin-top:-4px;
  border-top:1px solid rgba(26,160,214,0.14);
}

.operations-subtabs[hidden]{
  display:none !important;
}

.operations-subtabs .admin-tab-btn{
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,0.88);
  border-color:rgba(128,146,168,0.24);
  box-shadow:none;
}

.operations-subtabs .admin-tab-btn.active{
  background:rgba(26,160,214,0.16);
  border-color:rgba(26,160,214,0.32);
  box-shadow:0 8px 16px rgba(26,160,214,0.10);
}

.operations-tabs .admin-tab-btn.is-group-hidden{
  display:none !important;
}

[hidden]{
  display:none !important;
}

.admin-tab-btn{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid var(--line);
  background:var(--card-2);
  color:var(--text);
  font-size:13px;
  cursor:pointer;
  transition:transform 0.12s ease, box-shadow 0.12s ease, background 0.2s ease, border-color 0.2s ease;
}

.admin-tab-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(40,34,26,0.08);
}

.admin-tab-btn.active{
  background:rgba(26,160,214,0.16);
  color:var(--accent);
  border-color:rgba(26,160,214,0.32);
}

.tab-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:18px;
  height:18px;
  padding:0 6px;
  border-radius:999px;
  background:linear-gradient(135deg, #ef4444, #dc2626);
  color:#fff;
  font-size:11px;
  font-weight:700;
  line-height:1;
  box-shadow:0 6px 14px rgba(220,38,38,0.24);
}

.table-action-group{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

/* Admin — stock change requests tab */
.stock-requests-panel-head{
  flex-direction:column;
  align-items:stretch;
  gap:14px;
}
.stock-requests-panel-head h2{
  margin:0;
}
.stock-requests-toolbar{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px 20px;
}
.stock-requests-filters{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:12px 16px;
}
.stock-requests-field{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}
.stock-requests-field .field-label{
  font-size:12px;
  font-weight:600;
  color:var(--muted);
}
.stock-requests-field select{
  min-width:min(100%, 200px);
  max-width:100%;
}
.stock-requests-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}
.stock-requests-summary{
  margin:-4px 0 12px;
  font-size:13px;
  color:var(--muted);
  font-weight:600;
}
.stock-requests-list-host{
  display:flex;
  flex-direction:column;
  gap:0;
}
.stock-requests-stack{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.stock-request-card{
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--card-2);
  padding:14px 16px;
  box-shadow:0 4px 14px rgba(40,34,26,0.06);
}
.stock-request-card-header{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px 14px;
}
.stock-request-card-identity{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 10px;
  min-width:0;
}
.stock-request-id{
  font-weight:800;
  font-size:15px;
  color:var(--text);
  font-variant-numeric:tabular-nums;
}
.entity-kind-pill{
  display:inline-flex;
  align-items:center;
  padding:2px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  text-transform:lowercase;
  background:rgba(26,160,214,0.12);
  color:var(--accent);
  border:1px solid rgba(26,160,214,0.22);
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.stock-request-card-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  flex-shrink:0;
}
.stock-request-card-actions .btn{
  padding:6px 12px;
  font-size:13px;
}
.stock-request-card-sub{
  margin-top:8px;
  font-size:13px;
  color:var(--text);
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px 10px;
}
.stock-request-entity-id{
  font-weight:600;
  font-variant-numeric:tabular-nums;
}
.stock-request-type-tag{
  font-size:12px;
  font-weight:700;
  color:var(--muted);
}
.stock-request-card-meta{
  margin-top:6px;
  font-size:12px;
  color:var(--muted);
  line-height:1.4;
}
.stock-request-reason{
  margin-top:8px;
  font-size:13px;
  line-height:1.45;
  color:var(--text);
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.stock-request-details{
  margin-top:10px;
  border-top:1px solid var(--line);
  padding-top:8px;
}
.stock-request-details > summary{
  cursor:pointer;
  font-size:13px;
  font-weight:700;
  color:var(--accent);
  list-style:none;
  padding:4px 0;
}
.stock-request-details > summary::-webkit-details-marker{
  display:none;
}
.stock-request-details > summary::before{
  content:"▸ ";
  display:inline-block;
  transition:transform 0.15s ease;
}
.stock-request-details[open] > summary::before{
  transform:rotate(90deg);
}
.stock-request-dl{
  margin:10px 0 0;
  display:grid;
  grid-template-columns:minmax(100px, 140px) 1fr;
  gap:8px 12px;
  font-size:13px;
}
.stock-request-dl dt{
  margin:0;
  font-weight:700;
  color:var(--muted);
}
.stock-request-dl dd{
  margin:0;
  word-break:break-word;
  line-height:1.45;
}
@media (max-width:520px){
  .stock-request-dl{
    grid-template-columns:1fr;
  }
  .stock-request-dl dt{
    margin-top:4px;
  }
  .stock-request-dl dt:first-child{
    margin-top:0;
  }
}

.admin-tab-panel{
  display:none;
}

.admin-tab-panel.active{
  display:block;
}

#operationsMain .admin-tab-panel{
  display:none;
  flex-direction:column;
  gap:18px;
}

#operationsMain .admin-tab-panel.active{
  display:flex;
}

#operationsMain .admin-tab-panel > .hint,
#operationsMain .admin-tab-panel > .op-kpis,
#operationsMain .admin-tab-panel > .ops-furnace-summary-shell,
#operationsMain .admin-tab-panel > .stock-balance-summary-shell,
#operationsMain .admin-tab-panel > .stock-balance-summary-grid,
#operationsMain .admin-tab-panel > .table-scroll,
#operationsMain .admin-tab-panel > .receive-grid,
#operationsMain .admin-tab-panel > .create-grid,
#operationsMain .admin-tab-panel > .furnace-summary-grid,
#operationsMain .admin-tab-panel > .furnace-balance-groups,
#operationsMain .admin-tab-panel > .production-workorder-grid,
#operationsMain .admin-tab-panel > .row,
#operationsMain .admin-tab-panel > .msg,
#operationsMain .admin-tab-panel > details,
#operationsMain .admin-tab-panel > .ops-tab-notifications{
  margin:0;
}

#opsMaterialsPanel .ops-section-block + .ops-section-block{
  margin-top:8px;
}

.ops-sales-explorer{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:10px 0 14px;
}

.facebook-inbox-shell{
  display:grid;
  grid-template-columns:minmax(230px, 0.35fr) minmax(360px, 1fr) minmax(300px, 0.52fr);
  gap:12px;
  min-height:620px;
}

.facebook-inbox-list-panel,
.facebook-ticket-panel,
.facebook-inbox-thread{
  min-width:0;
  border:1px solid var(--border);
  border-radius:8px;
  background:rgba(255,255,255,0.72);
}

.facebook-inbox-list-panel{
  display:flex;
  flex-direction:column;
  overflow:hidden;
}

.facebook-inbox-column-head{
  align-items:center;
  border-bottom:1px solid var(--border);
  display:flex;
  justify-content:space-between;
  min-height:48px;
  padding:12px 14px;
}

.facebook-inbox-column-head strong{
  font-size:14px;
}

.facebook-inbox-list{
  display:flex;
  flex-direction:column;
  flex:1;
  min-height:0;
  overflow:auto;
}

.facebook-inbox-conversation{
  appearance:none;
  border:0;
  border-bottom:1px solid var(--border);
  background:transparent;
  color:var(--text);
  cursor:pointer;
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:12px;
  text-align:left;
  width:100%;
}

.facebook-inbox-conversation:hover,
.facebook-inbox-conversation.active{
  background:rgba(26,160,214,0.10);
}

.facebook-inbox-conversation-top{
  align-items:center;
  display:flex;
  gap:8px;
  justify-content:space-between;
}

.facebook-inbox-preview,
.facebook-inbox-date,
.facebook-inbox-message-meta,
.facebook-inbox-empty{
  color:var(--muted);
  font-size:12px;
}

.facebook-inbox-ticket-chips{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
}

.facebook-inbox-ticket-chips span{
  background:rgba(26,160,214,0.10);
  border:1px solid rgba(26,160,214,0.18);
  border-radius:999px;
  color:var(--muted);
  font-size:11px;
  padding:2px 7px;
}

.facebook-inbox-preview{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  width:100%;
}

.facebook-inbox-unread{
  align-items:center;
  background:var(--accent);
  border-radius:999px;
  color:#fff;
  display:inline-flex;
  font-size:11px;
  font-weight:700;
  justify-content:center;
  min-width:22px;
  padding:2px 7px;
}

.facebook-inbox-thread{
  display:flex;
  flex-direction:column;
  min-height:620px;
  overflow:hidden;
}

.facebook-inbox-thread-head{
  border-bottom:1px solid var(--border);
  padding:12px 14px;
}

.facebook-inbox-thread-head h3{
  font-size:16px;
  margin:0 0 4px;
}

.facebook-ticket-panel{
  display:flex;
  flex-direction:column;
  min-height:620px;
  overflow:hidden;
}

.facebook-ticket-tools-scroll{
  display:flex;
  flex:1;
  flex-direction:column;
  gap:12px;
  min-height:0;
  overflow:auto;
  padding:12px;
}

.facebook-ticket-report{
  display:grid;
  gap:6px;
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.facebook-ticket-report-item{
  align-items:center;
  background:rgba(255,255,255,0.72);
  border:1px solid var(--border);
  border-radius:8px;
  display:flex;
  gap:8px;
  justify-content:space-between;
  min-width:0;
  padding:7px 9px;
}

.facebook-ticket-report-item span{
  color:var(--muted);
  font-size:11px;
}

.facebook-ticket-report-item strong{
  font-size:12px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.facebook-tool-section{
  border:1px solid var(--border);
  border-radius:8px;
  display:grid;
  gap:10px;
  padding:10px;
}

.facebook-ticket-form{
  display:grid;
  gap:8px;
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.facebook-ticket-form textarea,
.facebook-ticket-form input,
.facebook-ticket-form select{
  min-width:0;
  width:100%;
}

.facebook-ticket-form textarea{
  grid-column:1 / -1;
}

.facebook-quote-form{
  display:grid;
  gap:10px;
}

.facebook-quote-form-head{
  align-items:center;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:space-between;
}

.facebook-quote-form-head strong{
  font-size:14px;
}

.facebook-doc-builder{
  display:grid;
  gap:10px;
}

.facebook-doc-section{
  border:1px solid var(--border);
  border-radius:8px;
  display:grid;
  gap:10px;
  padding:10px;
}

.facebook-doc-section-product{
  background:rgba(255,255,255,0.42);
}

.facebook-doc-section-title{
  color:var(--muted);
  font-size:11px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.facebook-quote-field{
  display:grid;
  gap:4px;
  min-width:0;
}

.facebook-quote-field span{
  color:var(--muted);
  font-size:11px;
  font-weight:700;
}

.facebook-quote-field-wide{
  grid-column:1 / -1;
}

.facebook-dimension-row{
  display:grid;
  gap:8px;
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

.facebook-quote-grid{
  display:grid;
  gap:8px;
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.facebook-quote-grid-terms{
  grid-template-columns:1fr;
}

.facebook-quote-form input,
.facebook-quote-form select{
  min-width:0;
  width:100%;
}

.facebook-quote-check{
  align-items:center;
  border:1px solid var(--border);
  border-radius:8px;
  display:flex;
  gap:6px;
  min-height:38px;
  padding:0 10px;
}

.facebook-quote-options-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.facebook-quote-check input{
  width:auto;
}

.facebook-doc-send-panel{
  align-items:stretch;
  background:rgba(255,255,255,0.92);
  border-top:1px solid var(--border);
  display:grid;
  gap:8px;
  grid-template-columns:1fr;
  padding:12px;
}

.facebook-doc-send-panel .btn{
  justify-content:center;
  min-height:40px;
  width:100%;
}

.facebook-inbox-messages{
  display:flex;
  flex:1;
  flex-direction:column;
  gap:10px;
  overflow:auto;
  padding:16px;
}

.facebook-inbox-message{
  display:flex;
  flex-direction:column;
  max-width:min(74%, 620px);
}

.facebook-inbox-message.outgoing{
  align-self:flex-end;
  align-items:flex-end;
}

.facebook-inbox-message.incoming{
  align-self:flex-start;
}

.facebook-inbox-bubble{
  background:#fff;
  border:1px solid var(--border);
  border-radius:8px;
  line-height:1.45;
  padding:10px 12px;
  white-space:pre-wrap;
}

.facebook-inbox-message.outgoing .facebook-inbox-bubble{
  background:rgba(18,111,92,0.10);
  border-color:rgba(18,111,92,0.24);
}

.facebook-inbox-attachments{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:8px;
}

.facebook-inbox-attachments span,
.facebook-inbox-attachments a{
  background:rgba(0,0,0,0.06);
  border-radius:999px;
  color:var(--muted);
  font-size:11px;
  padding:3px 8px;
  text-decoration:none;
}

.facebook-inbox-reply{
  align-items:flex-end;
  background:rgba(255,255,255,0.92);
  border-top:1px solid var(--border);
  display:grid;
  gap:10px;
  grid-template-columns:minmax(0, 1fr) auto;
  padding:12px;
}

.facebook-inbox-reply textarea{
  min-height:82px;
  max-height:160px;
  resize:vertical;
  width:100%;
}

.facebook-inbox-empty{
  padding:14px;
}

.ops-sales-business-hero{
  display:grid;
  gap:12px;
  margin:8px 0 6px;
}

.ops-sales-business-hero-main{
  padding:16px 18px;
  border-radius:18px;
  border:1px solid rgba(26,160,214,0.20);
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.22), transparent 34%),
    linear-gradient(135deg, rgba(26,160,214,0.16), rgba(255,255,255,0.92));
  box-shadow:0 16px 34px rgba(26,160,214,0.10);
}

.ops-sales-business-eyebrow{
  font-size:11px;
  font-weight:700;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--muted);
}

.ops-sales-business-hero-title{
  margin:6px 0 0;
  font-size:28px;
  line-height:1.15;
}

.ops-sales-business-hero-text{
  margin:8px 0 0;
  color:var(--muted);
  max-width:72ch;
}

.ops-sales-business-strip,
.ops-sales-business-grid,
.ops-sales-business-agenda{
  display:grid;
  gap:12px;
}

.ops-sales-business-strip{
  grid-template-columns:repeat(auto-fit, minmax(190px, 1fr));
}

.ops-sales-business-grid{
  grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
  margin:12px 0;
}

.ops-sales-business-signal,
.ops-sales-business-card,
.ops-sales-business-agenda-item{
  border-radius:16px;
  border:1px solid var(--line);
  background:var(--card);
  box-shadow:0 10px 24px rgba(15,23,42,0.05);
}

.ops-sales-business-signal{
  padding:12px 14px;
}

.ops-sales-business-signal[data-tone="good"],
.ops-sales-business-agenda-item[data-tone="good"]{
  border-color:rgba(74,151,97,0.20);
  background:linear-gradient(180deg, rgba(74,151,97,0.10), rgba(255,255,255,0.94));
}

.ops-sales-business-signal[data-tone="warn"],
.ops-sales-business-agenda-item[data-tone="warn"]{
  border-color:rgba(198,132,39,0.24);
  background:linear-gradient(180deg, rgba(198,132,39,0.10), rgba(255,255,255,0.94));
}

.ops-sales-business-signal[data-tone="critical"],
.ops-sales-business-agenda-item[data-tone="critical"]{
  border-color:rgba(186,67,62,0.24);
  background:linear-gradient(180deg, rgba(186,67,62,0.10), rgba(255,255,255,0.94));
}

.ops-sales-business-signal-label,
.ops-sales-business-agenda-label{
  font-size:11px;
  font-weight:700;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--muted);
}

.ops-sales-business-signal-value,
.ops-sales-business-agenda-value{
  margin-top:6px;
  font-size:24px;
  line-height:1.1;
  font-family:var(--font-display);
  color:var(--text);
}

.ops-sales-business-signal-note,
.ops-sales-business-agenda-note,
.ops-sales-business-agenda-action{
  margin-top:6px;
  font-size:13px;
  color:var(--muted);
}

.ops-sales-business-card{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:14px;
}

.ops-sales-business-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}

.ops-sales-business-card h3{
  margin:0;
  font-size:18px;
}

.ops-sales-business-card .hint{
  margin:4px 0 0;
}

.ops-sales-business-agenda{
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
}

.ops-sales-business-agenda-item{
  padding:12px 14px;
}

.ops-sales-business-agenda-title{
  margin-top:4px;
  font-size:16px;
  font-weight:700;
  color:var(--text);
}

.ops-sales-business-agenda-action{
  font-weight:600;
  color:var(--text);
}

.ops-sales-subtabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:4px 0 2px;
}

.ops-followup-subtabs{
  margin:8px 0 6px;
}

.ops-sales-subtab-panels{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.ops-sales-subtab-panel[hidden],
[data-ops-followup-subtab-panel][hidden]{
  display:none !important;
}

.ops-sales-queue-cell{
  min-width:220px;
}

.ops-sales-inline-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:6px;
}

.ops-sales-inline-meta span{
  display:inline-flex;
  align-items:center;
  padding:3px 8px;
  border-radius:999px;
  background:rgba(26,160,214,0.10);
  border:1px solid rgba(26,160,214,0.14);
  color:var(--muted);
  font-size:11px;
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:uppercase;
}

.ops-sales-cell{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:132px;
}

.ops-sales-cell-main{
  font-weight:700;
  color:var(--text);
}

.ops-sales-cell-sub{
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

.nav-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid var(--line);
  background:var(--card-2);
  color:var(--text);
  text-decoration:none;
  font-size:13px;
  transition:transform 0.12s ease, box-shadow 0.12s ease, background 0.2s ease, border-color 0.2s ease;
}

.nav-link:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(40,34,26,0.08);
}

.nav-link.active{
  background:rgba(26,160,214,0.16);
  color:var(--accent);
  border-color:rgba(26,160,214,0.32);
}

.hero{
  background:linear-gradient(135deg, #ffffff 0%, rgba(26,160,214,0.08) 45%, rgba(73,168,75,0.08) 100%);
  border-color:rgba(26,160,214,0.25);
}

.hero-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) minmax(0, 0.8fr);
  gap:16px;
  align-items:stretch;
}

.hero-copy h2{
  margin:0 0 8px;
  font-size:24px;
  font-family:var(--font-display);
}

.hero-copy p{
  margin:0 0 12px;
  color:var(--muted);
  line-height:1.6;
}

.hero-card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:16px;
  padding:14px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.6);
}

.hero-title{
  font-weight:600;
  margin-bottom:8px;
}

.hero-list{
  display:flex;
  flex-direction:column;
  gap:8px;
  color:var(--muted);
  font-size:13px;
}

.hero-item{
  padding-left:12px;
  position:relative;
}

.hero-item::before{
  content:"";
  position:absolute;
  left:0;
  top:7px;
  width:6px;
  height:6px;
  border-radius:999px;
  background:var(--accent);
}

.card-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(210px, 1fr));
  gap:12px;
}

.op-kpis{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
  gap:10px;
  margin:8px 0 12px;
}

.op-kpi-card{
  background:var(--card-2);
  border:1px solid var(--line);
  border-radius:14px;
  padding:10px 12px;
}

#operationsMain .op-kpi-card{
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.18), transparent 40%),
    linear-gradient(180deg, rgba(26,160,214,0.10), rgba(26,160,214,0.03));
  border-color:rgba(26,160,214,0.18);
  box-shadow:0 8px 24px rgba(26,160,214,0.08);
}

.op-kpi-label{
  font-size:11px;
  color:var(--muted);
  letter-spacing:0.02em;
  text-transform:uppercase;
}

.op-kpi-value{
  font-size:20px;
  font-family:var(--font-display);
  margin-top:4px;
}

.stock-balance-summary-shell{
  display:grid;
  gap:14px;
}

.stock-balance-summary-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(190px, 1fr));
  gap:12px;
  margin:2px 0 0;
}

.stock-balance-summary-card{
  background:
    radial-gradient(circle at top right, rgba(95,154,114,0.12), transparent 38%),
    linear-gradient(180deg, rgba(255,255,255,0.92), rgba(244,248,251,0.88));
  border:1px solid rgba(26,160,214,0.14);
  border-radius:16px;
  padding:12px 14px;
  box-shadow:0 10px 22px rgba(26,160,214,0.06);
}

.stock-balance-summary-card.is-warn{
  background:
    radial-gradient(circle at top right, rgba(214,129,26,0.16), transparent 38%),
    linear-gradient(180deg, rgba(255,250,244,0.96), rgba(255,247,237,0.88));
  border-color:rgba(214,129,26,0.2);
}

.stock-balance-summary-card.is-ok{
  background:
    radial-gradient(circle at top right, rgba(95,154,114,0.14), transparent 38%),
    linear-gradient(180deg, rgba(246,252,248,0.96), rgba(240,249,243,0.88));
  border-color:rgba(95,154,114,0.18);
}

.stock-balance-summary-label{
  font-size:11px;
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:uppercase;
  color:var(--muted);
}

.stock-balance-summary-value{
  margin-top:6px;
  font-size:24px;
  font-family:var(--font-display);
  color:var(--text);
}

.stock-balance-summary-note{
  margin-top:6px;
  font-size:13px;
  line-height:1.45;
  color:var(--muted);
}

.stock-business-summary{
  display:grid;
  gap:12px;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(15,118,110,0.16);
  background:
    radial-gradient(circle at top right, rgba(15,118,110,0.12), transparent 42%),
    linear-gradient(180deg, rgba(248,250,252,0.94), rgba(240,253,250,0.86));
  box-shadow:0 12px 28px rgba(15,118,110,0.06);
}

.stock-business-summary-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.stock-business-summary-title{
  font-family:var(--font-display);
  font-size:17px;
  font-weight:700;
  color:var(--text);
}

.stock-business-summary-copy{
  margin-top:4px;
  font-size:13px;
  line-height:1.5;
  color:var(--muted);
}

.stock-business-summary-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  gap:12px;
}

.stock-business-summary-card{
  display:grid;
  gap:10px;
  padding:12px 14px;
  border-radius:16px;
  border:1px solid rgba(148,163,184,0.18);
  background:rgba(255,255,255,0.82);
}

.stock-business-summary-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}

.stock-business-summary-code{
  font-family:var(--font-display);
  font-size:17px;
  font-weight:700;
  color:var(--text);
  word-break:break-word;
}

.stock-business-summary-source{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(15,118,110,0.18);
  background:rgba(240,253,250,0.92);
  color:#0f766e;
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}

.stock-business-summary-metrics{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.stock-business-summary-metrics span{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(241,245,249,0.96);
  color:var(--text);
  font-size:12px;
  font-weight:600;
}

.stock-business-summary-note{
  font-size:13px;
  line-height:1.5;
  color:var(--muted);
}

.stock-business-cell{
  display:grid;
  gap:8px;
  min-width:240px;
}

.stock-business-code-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}

.stock-business-code-main{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  min-width:0;
}

.stock-business-color-marker{
  width:10px;
  height:30px;
  border-radius:999px;
  flex-shrink:0;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.42),
    0 6px 14px rgba(17,24,39,0.12);
}

.stock-business-color-marker.is-tone-green{
  background:linear-gradient(180deg, #86efac 0%, #22c55e 100%);
}

.stock-business-color-marker.is-tone-blue{
  background:linear-gradient(180deg, #93c5fd 0%, #3b82f6 100%);
}

.stock-business-code{
  font-family:var(--font-display);
  font-size:16px;
  font-weight:700;
  color:var(--text);
  line-height:1.35;
  word-break:break-word;
}

.stock-business-color-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:5px 10px;
  border-radius:999px;
  border:1px solid transparent;
  font-size:12px;
  font-weight:800;
  letter-spacing:0.02em;
  line-height:1;
  white-space:nowrap;
  box-shadow:0 8px 16px rgba(17,24,39,0.07);
}

.stock-business-color-chip::before{
  content:"";
  width:10px;
  height:10px;
  border-radius:999px;
  flex-shrink:0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.42);
}

.stock-business-color-chip.is-tone-green{
  background:linear-gradient(180deg, rgba(240,253,244,0.98), rgba(220,252,231,0.94));
  border-color:rgba(34,197,94,0.24);
  color:#166534;
}

.stock-business-color-chip.is-tone-green::before{
  background:linear-gradient(180deg, #86efac 0%, #22c55e 100%);
}

.stock-business-color-chip.is-tone-blue{
  background:linear-gradient(180deg, rgba(239,246,255,0.98), rgba(219,234,254,0.94));
  border-color:rgba(59,130,246,0.24);
  color:#1d4ed8;
}

.stock-business-color-chip.is-tone-blue::before{
  background:linear-gradient(180deg, #93c5fd 0%, #3b82f6 100%);
}

.stock-business-source{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(21,39,58,0.12);
  background:rgba(255,252,247,0.94);
  color:rgba(21,39,58,0.72);
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}

.stock-business-meta{
  font-size:12px;
  line-height:1.5;
  color:var(--muted);
}

.stock-business-owner{
  font-size:14px;
  line-height:1.35;
  font-weight:800;
  color:var(--ink);
}

.stock-business-cell.is-tone-green .stock-business-code{
  color:#166534;
}

.stock-business-cell.is-tone-blue .stock-business-code{
  color:#1d4ed8;
}

.stock-business-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.stock-business-tag{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(248,250,252,0.94);
  border:1px solid rgba(148,163,184,0.18);
  color:var(--text);
  font-size:11px;
  font-weight:600;
}

.stock-business-tag.is-status{
  background:rgba(250,247,241,0.96);
  border-color:rgba(183,121,31,0.16);
  color:rgba(21,39,58,0.82);
}

.stock-business-tag.is-code{
  background:rgba(255,255,255,0.96);
  border-color:rgba(21,39,58,0.12);
  color:var(--text);
}

.stock-title-cell{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.stock-title-main{
  font-weight:700;
  color:var(--text);
}

.stock-title-sub{
  font-size:12px;
  line-height:1.45;
  color:var(--muted);
}

.stock-balance-cell{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:220px;
}

.stock-balance-main{
  font-weight:700;
  line-height:1.45;
  color:var(--text);
}

.stock-balance-sub{
  font-size:12px;
  line-height:1.45;
  color:var(--muted);
}

.stock-preview-card{
  display:grid;
  gap:10px;
  min-width:280px;
}

.stock-preview-metrics{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:8px;
}

.stock-preview-metric{
  display:grid;
  gap:4px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(255,255,255,0.94);
  border:1px solid rgba(21,39,58,0.12);
  box-shadow:0 8px 18px rgba(17,24,39,0.04);
}

.stock-preview-metric.is-highlight{
  background:linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,242,234,0.92));
  border-color:rgba(183,121,31,0.18);
  box-shadow:0 10px 20px rgba(17,24,39,0.06);
}

.stock-preview-metric-label{
  font-size:11px;
  font-weight:700;
  letter-spacing:0.03em;
  text-transform:uppercase;
  color:var(--muted);
}

.stock-preview-metric-value{
  font-family:var(--font-display);
  font-size:18px;
  font-weight:700;
  color:var(--text);
}

.stock-preview-parts{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:8px;
}

.stock-preview-part{
  display:grid;
  gap:4px;
  padding:8px 10px;
  border-radius:12px;
  background:rgba(255,255,255,0.94);
  border:1px solid rgba(21,39,58,0.1);
}

.stock-preview-part.is-zero{
  background:rgba(249,247,243,0.86);
  border-color:rgba(21,39,58,0.08);
}

.stock-preview-part-label{
  font-size:11px;
  font-weight:700;
  color:var(--muted);
  text-transform:uppercase;
}

.stock-preview-part-value{
  font-size:15px;
  font-weight:700;
  color:var(--text);
}

.stock-activity-cell{
  display:grid;
  gap:8px;
  min-width:180px;
}

.stock-activity-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.stock-activity-label{
  font-size:12px;
  font-weight:700;
  color:var(--muted);
}

.stock-activity-value{
  font-size:12px;
  font-weight:600;
  color:var(--text);
  text-align:right;
}

.ops-stock-balance-row td{
  transition:background 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.ops-stock-balance-row.is-tone-blue td{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,243,236,0.94));
}

.ops-stock-balance-row.is-tone-green td{
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,243,236,0.94));
}

.ops-stock-balance-row.is-tone-blue td:first-child{
  box-shadow: inset 6px 0 0 rgba(96,165,250,0.62);
}

.ops-stock-balance-row.is-tone-green td:first-child{
  box-shadow: inset 6px 0 0 rgba(34,197,94,0.66);
}

.card{
  display:block;
  text-decoration:none;
  color:var(--text);
  background:var(--card-2);
  border:1px solid var(--line);
  border-radius:16px;
  padding:14px;
  transition:transform 0.12s ease, box-shadow 0.12s ease, border-color 0.2s ease;
  min-height:96px;
}

.card h3{
  margin:0 0 6px;
  font-size:16px;
  font-family:var(--font-display);
}

.card p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.card:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(40,34,26,0.12);
  border-color:rgba(26,160,214,0.25);
}

.panel{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:16px;
  margin:14px 0;
  box-shadow:var(--shadow);
  animation:rise 0.7s ease both;
  animation-delay:var(--delay, 0s);
}

.panel.login{
  border-left:4px solid var(--accent);
}

.panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}

.panel-head .hint{
  margin-top:0;
}

.panel-head h2{
  margin:0;
  font-size:18px;
  font-family:var(--font-display);
}

.badge{
  font-size:11px;
  letter-spacing:0.02em;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(26,160,214,0.16);
  color:var(--accent);
  border:1px solid rgba(26,160,214,0.3);
}

.badge.muted{
  background:var(--bg-2);
  color:var(--muted);
  border-color:var(--line);
}

.ops-home-layout{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.ops-home-hero-actions{
  gap:10px;
  flex-wrap:wrap;
}

.ops-home-admin-toggle{
  min-height:44px;
  padding-inline:16px;
  border-radius:14px;
  border-color:rgba(26,160,214,0.18);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.92), rgba(240,248,253,0.88));
  color:var(--text);
  font-weight:700;
  box-shadow:0 10px 22px rgba(26,160,214,0.08);
}

.ops-home-admin-toggle.is-active{
  border-color:rgba(26,160,214,0.28);
  background:
    linear-gradient(180deg, rgba(232,245,252,0.98), rgba(216,239,250,0.92));
  color:var(--accent);
}

.ops-home-overview-grid{
  display:grid;
  grid-template-columns:repeat(12, minmax(0, 1fr));
  gap:16px;
  align-items:start;
}

.ops-home-feed-panel,
.ops-home-website-leads,
.home-consumables-panel,
.ops-home-admin-watch{
  grid-column:span 4;
  min-width:0;
}

.ops-home-overview-grid[data-admin-watch="1"][data-website-leads="1"] .ops-home-feed-panel,
.ops-home-overview-grid[data-admin-watch="1"][data-website-leads="1"] .ops-home-website-leads,
.ops-home-overview-grid[data-admin-watch="1"][data-website-leads="1"] .home-consumables-panel,
.ops-home-overview-grid[data-admin-watch="1"][data-website-leads="1"] .ops-home-admin-watch{
  grid-column:span 6;
}

.ops-home-feed-panel,
.ops-home-website-leads,
.ops-home-admin-watch{
  display:flex;
  flex-direction:column;
}

@media (max-width:1180px){
  .ops-home-feed-panel,
  .ops-home-website-leads,
  .home-consumables-panel{
    grid-column:span 6;
  }

  .ops-home-admin-watch{
    grid-column:1 / -1;
  }

  .ops-home-overview-grid[data-admin-watch="1"][data-website-leads="1"] .ops-home-admin-watch{
    grid-column:span 6;
  }
}

@media (max-width:720px){
  .ops-home-feed-panel,
  .ops-home-website-leads,
  .home-consumables-panel,
  .ops-home-admin-watch{
    grid-column:1 / -1;
  }
}

.ops-home-overview-grid[data-admin-watch="0"] .ops-home-feed-panel,
.ops-home-overview-grid[data-admin-watch="0"] .ops-home-website-leads,
.ops-home-overview-grid[data-admin-watch="0"] .home-consumables-panel{
  grid-column:span 4;
}

.ops-home-overview-grid[data-admin-watch="0"][data-website-leads="0"] .ops-home-feed-panel,
.ops-home-overview-grid[data-admin-watch="0"][data-website-leads="0"] .home-consumables-panel{
  grid-column:span 6;
}

.ops-home-hero{
  background:
    radial-gradient(circle at top left, rgba(26,160,214,0.14), transparent 34%),
    linear-gradient(180deg, rgba(26,160,214,0.08), rgba(26,160,214,0.02));
}

.ops-home-feed-panel{
  background:
    radial-gradient(circle at top right, rgba(214,129,26,0.12), transparent 34%),
    linear-gradient(180deg, rgba(26,160,214,0.04), rgba(26,160,214,0.015));
}

.ops-home-website-leads{
  background:
    radial-gradient(circle at top right, rgba(95,154,114,0.12), transparent 34%),
    linear-gradient(180deg, rgba(26,160,214,0.05), rgba(95,154,114,0.02));
}

.ops-home-feed-counts{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:12px;
}

.ops-home-feed-count-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,0.78);
  border:1px solid rgba(26,160,214,0.12);
  font-size:12px;
  color:var(--muted);
}

.ops-home-feed-count-pill strong{
  color:var(--text);
  font-family:var(--font-display);
}

.ops-home-feed-list,
.ops-home-website-leads-list,
.ops-home-admin-watch-list{
  display:flex;
  flex-direction:column;
  gap:10px;
  max-height:320px;
  overflow-y:auto;
  padding-right:4px;
}

.ops-home-feed-list::-webkit-scrollbar,
.ops-home-website-leads-list::-webkit-scrollbar,
.ops-home-admin-watch-list::-webkit-scrollbar{
  width:8px;
}

.ops-home-feed-list::-webkit-scrollbar-thumb,
.ops-home-website-leads-list::-webkit-scrollbar-thumb,
.ops-home-admin-watch-list::-webkit-scrollbar-thumb{
  background:rgba(26,160,214,0.18);
  border-radius:999px;
}

.ops-home-feed-item,
.ops-home-lead-item,
.ops-home-admin-item{
  border:1px solid rgba(26,160,214,0.12);
  background:rgba(255,255,255,0.84);
  border-radius:16px;
  padding:12px;
  box-shadow:0 8px 20px rgba(26,160,214,0.06);
}

.ops-home-feed-item.tone-warning,
.ops-home-admin-item.tone-warning{
  border-color:rgba(214,129,26,0.22);
}

.ops-home-feed-item.tone-danger,
.ops-home-admin-item.tone-danger{
  border-color:rgba(193,57,43,0.22);
}

.ops-home-feed-head{
  display:flex;
  gap:10px;
  justify-content:space-between;
  align-items:flex-start;
  margin-bottom:6px;
}

.ops-home-feed-head h3,
.ops-home-lead-head h3,
.ops-home-admin-item h3{
  margin:0;
  font-size:15px;
  font-family:var(--font-display);
}

.ops-home-feed-meta,
.ops-home-lead-meta,
.ops-home-admin-meta{
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

.ops-home-feed-body,
.ops-home-lead-body,
.ops-home-admin-body{
  margin-top:8px;
  color:var(--text);
  font-size:13px;
  line-height:1.5;
}

.ops-home-feed-actions,
.ops-home-lead-actions,
.ops-home-admin-actions{
  margin-top:10px;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.ops-home-lead-head{
  display:flex;
  gap:10px;
  justify-content:space-between;
  align-items:flex-start;
}

.ops-home-lead-contact,
.ops-home-lead-product,
.ops-home-lead-plan{
  margin-top:8px;
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
}

.ops-home-lead-plan{
  padding:10px 12px;
  border-radius:12px;
  background:rgba(26,160,214,0.08);
  border:1px solid rgba(26,160,214,0.12);
  color:var(--text);
}

.ops-home-admin-watch{
  background:
    radial-gradient(circle at top right, rgba(193,57,43,0.08), transparent 38%),
    linear-gradient(180deg, rgba(214,129,26,0.05), rgba(26,160,214,0.02));
}

.ops-home-admin-watch-daily{
  margin:12px 0;
  padding:12px;
  border-radius:14px;
  border:1px solid rgba(26,160,214,0.14);
  background:rgba(255,255,255,0.78);
}

.ops-home-admin-watch-daily strong{
  font-family:var(--font-display);
}

.staff-focus-panel{
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.12), transparent 36%),
    linear-gradient(180deg, rgba(26,160,214,0.07), rgba(26,160,214,0.02));
}

.staff-focus-summary{
  margin-bottom:14px;
}

.staff-focus-list{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
  gap:14px;
}

.ops-home-queue-panel .staff-focus-list{
  grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));
}

.staff-focus-card{
  background:rgba(255,255,255,0.82);
  border:1px solid rgba(26,160,214,0.16);
  border-radius:18px;
  padding:14px;
  box-shadow:0 10px 24px rgba(26,160,214,0.08);
}

.staff-focus-card-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}

.staff-focus-card-head h3{
  margin:4px 0 4px;
  font-size:20px;
  font-family:var(--font-display);
}

.staff-focus-card-head p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.staff-focus-rank{
  color:var(--accent-2);
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
}

.staff-focus-chip-group{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:6px;
}

.staff-focus-chip{
  border-radius:999px;
  padding:5px 10px;
  font-size:12px;
  font-weight:700;
  border:1px solid transparent;
  white-space:nowrap;
}

.staff-focus-chip.tone-critical{
  background:rgba(193, 57, 43, 0.12);
  color:#9e2d21;
  border-color:rgba(193, 57, 43, 0.18);
}

.staff-focus-chip.tone-high{
  background:rgba(214, 129, 26, 0.14);
  color:#8a5615;
  border-color:rgba(214, 129, 26, 0.18);
}

.staff-focus-chip.tone-normal,
.staff-focus-chip.tone-neutral{
  background:rgba(26,160,214,0.11);
  color:var(--accent-2);
  border-color:rgba(26,160,214,0.18);
}

.staff-focus-chip.tone-low{
  background:rgba(95, 154, 114, 0.12);
  color:#3b7751;
  border-color:rgba(95, 154, 114, 0.18);
}

.staff-focus-metrics{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:10px;
  margin:14px 0 10px;
}

.staff-focus-metrics div{
  background:rgba(244,248,251,0.86);
  border:1px solid rgba(26,160,214,0.10);
  border-radius:14px;
  padding:12px 14px;
  min-height:108px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:space-between;
}

.staff-focus-metrics span{
  display:block;
  color:var(--muted);
  font-size:12px;
  line-height:1.25;
  min-height:2.5em;
  margin-bottom:8px;
}

.staff-focus-metrics strong{
  font-family:var(--font-display);
  font-size:22px;
  line-height:1;
  margin-top:auto;
}

.staff-focus-pipeline{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  color:var(--muted);
  font-size:13px;
  margin-bottom:12px;
}

.staff-focus-next{
  border-radius:14px;
  border:1px solid rgba(26,160,214,0.16);
  background:rgba(26,160,214,0.08);
  padding:12px;
  margin-bottom:10px;
}

.staff-focus-next-label{
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  color:var(--accent-2);
  margin-bottom:4px;
}

.staff-focus-next-text{
  font-size:15px;
  line-height:1.5;
}

.staff-focus-missing{
  margin-bottom:10px;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,0.74);
  border:1px solid rgba(26,160,214,0.14);
  color:var(--text);
  font-size:13px;
  line-height:1.5;
}

.staff-focus-note{
  font-size:13px;
  line-height:1.5;
  color:var(--text);
  background:rgba(255,255,255,0.72);
  border-radius:12px;
  padding:10px 12px;
  border:1px dashed rgba(26,160,214,0.16);
}

.staff-focus-footer{
  margin-top:12px;
  display:flex;
  gap:10px;
  align-items:flex-start;
  justify-content:space-between;
  flex-wrap:wrap;
}

.staff-focus-wo-preview{
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
}

.staff-focus-card.is-blocked{
  border-color:rgba(214,129,26,0.24);
  box-shadow:0 12px 26px rgba(214,129,26,0.10);
}

.ops-home-card-status{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:10px;
}

.ops-home-update-chip{
  border-radius:999px;
  padding:5px 10px;
  font-size:12px;
  font-weight:700;
  background:rgba(255,255,255,0.8);
  border:1px solid rgba(26,160,214,0.12);
  color:var(--muted);
}

.ops-home-update-chip.tone-started,
.ops-home-update-chip.tone-done{
  color:#3b7751;
  border-color:rgba(95,154,114,0.22);
}

.ops-home-update-chip.tone-blocked{
  color:#8a5615;
  border-color:rgba(214,129,26,0.24);
}

.ops-home-update-chip.tone-note{
  color:var(--accent-2);
}

.ops-home-card-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

.ops-home-last-update{
  margin-top:10px;
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
}

.ops-home-update-preview{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-top:10px;
}

.ops-home-update-preview-item{
  border-left:3px solid rgba(26,160,214,0.18);
  padding-left:10px;
  font-size:12px;
  line-height:1.5;
  color:var(--text);
}

.ops-home-update-preview-item-meta{
  color:var(--muted);
}

.ops-home-note-details{
  width:100%;
  margin-top:10px;
  border-top:1px dashed rgba(26,160,214,0.16);
  padding-top:10px;
}

.ops-home-note-details summary{
  cursor:pointer;
  color:var(--accent-2);
  font-size:13px;
  font-weight:700;
  list-style:none;
}

.ops-home-note-details summary::-webkit-details-marker{
  display:none;
}

.ops-home-note-form{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}

.ops-home-note-form input{
  flex:1 1 220px;
  min-width:0;
}

.staff-focus-admin{
  margin-top:16px;
  border-top:1px solid rgba(26,160,214,0.14);
  padding-top:12px;
}

.ops-home-admin-panel{
  margin-top:0;
  padding-top:16px;
  border-top:none;
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.12), transparent 34%),
    linear-gradient(180deg, rgba(244,250,254,0.98), rgba(236,246,252,0.92));
  border:1px solid rgba(26,160,214,0.16);
  box-shadow:0 14px 30px rgba(26,160,214,0.08);
}

.ops-home-admin-panel-head{
  margin-bottom:4px;
}

.staff-focus-admin summary{
  cursor:pointer;
  font-weight:700;
  color:var(--text);
  list-style:none;
}

.staff-focus-admin summary::-webkit-details-marker{
  display:none;
}

.staff-focus-admin-body{
  margin-top:12px;
}

.staff-focus-form-grid{
  grid-template-columns:repeat(2, minmax(220px, 1fr));
}

.staff-focus-form-note{
  margin-top:12px;
}

.staff-focus-form-note input{
  width:100%;
}

.staff-focus-admin-actions{
  margin:12px 0;
}

.staff-focus-admin-list{
  margin-top:12px;
}

.home-consumables-panel{
  background:
    radial-gradient(circle at top right, rgba(95,154,114,0.10), transparent 34%),
    linear-gradient(180deg, rgba(26,160,214,0.05), rgba(26,160,214,0.015));
}

.home-consumables-list{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  gap:12px;
}

.home-consumables-item{
  background:rgba(255,255,255,0.84);
  border:1px solid rgba(26,160,214,0.12);
  border-radius:16px;
  padding:12px;
  box-shadow:0 8px 20px rgba(26,160,214,0.06);
}

.home-consumables-item-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}

.home-consumables-item-head h3{
  margin:0 0 4px;
  font-size:17px;
  font-family:var(--font-display);
}

.home-consumables-item-head p{
  margin:0;
  color:var(--muted);
  font-size:12px;
}

.home-consumables-item-metrics{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
  margin-top:12px;
}

.home-consumables-item-metrics div{
  background:rgba(244,248,251,0.9);
  border:1px solid rgba(26,160,214,0.10);
  border-radius:12px;
  padding:10px;
}

.home-consumables-item-metrics span{
  display:block;
  color:var(--muted);
  font-size:12px;
  margin-bottom:4px;
}

.home-consumables-item-metrics strong{
  font-family:var(--font-display);
  font-size:17px;
}

.layout{
  display:grid;
  grid-template-columns:minmax(0, 1.1fr) minmax(0, 0.9fr);
  gap:14px;
}

.scan-grid{
  display:grid;
  grid-template-columns:minmax(220px, 1fr) minmax(220px, 1fr);
  gap:12px;
  align-items:start;
}

.scan-frame{
  min-height:260px;
  border-radius:16px;
  border:1px dashed var(--line);
  background:var(--card-2);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px;
  color:var(--muted);
}

#reader video,
#reader canvas,
#reader img{
  width:100% !important;
  height:auto !important;
  border-radius:12px;
}

#reader button{
  background:var(--card-2);
  border:1px solid var(--line);
  color:var(--text);
  border-radius:10px;
  padding:8px 12px;
  font-family:var(--font-body);
  cursor:pointer;
}

.row{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
  margin-top:8px;
}

.row.inline{
  align-items:stretch;
}

.action-row{
  justify-content:flex-start;
}

.ops-form-stack{
  display:grid;
  gap:10px;
  margin-top:10px;
}

.ops-inline-card{
  border:1px solid var(--line);
  background:var(--card-2);
  border-radius:14px;
  padding:12px;
}

input{
  flex:1;
  min-width:160px;
  border:1px solid var(--line);
  background:var(--card);
  color:var(--text);
  border-radius:12px;
  padding:10px 12px;
  font-size:14px;
  font-family:var(--font-body);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.6);
  text-align:left;
}

input[type="checkbox"],
input[type="radio"]{
  flex:0 0 auto;
  min-width:18px;
  width:18px;
  height:18px;
  padding:0;
  border-radius:6px;
  box-shadow:none;
  accent-color:var(--accent);
  margin:0;
}

textarea{
  width:100%;
  border:1px solid var(--line);
  background:var(--card);
  color:var(--text);
  border-radius:14px;
  padding:12px 14px;
  font-size:15px;
  font-family:var(--font-body);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.72);
  resize:vertical;
}

select{
  border:1px solid var(--line);
  background:var(--card);
  color:var(--text);
  border-radius:12px;
  padding:8px 10px;
  font-size:14px;
  font-family:var(--font-body);
  text-align:start;
}

.lang-switch{
  display:inline-flex;
  align-items:center;
}

.lang-select{
  border:1px solid var(--line);
  background:var(--card);
  color:var(--text);
  border-radius:10px;
  padding:6px 10px;
  font-size:13px;
  font-family:var(--font-body);
  min-width:106px;
}

[dir="rtl"] .lang-select{
  direction:rtl;
  text-align:right;
}

.ltr{
  direction:ltr;
  text-align:left;
}

input:focus{
  outline:2px solid rgba(26,160,214,0.25);
  border-color:rgba(26,160,214,0.45);
}

textarea:focus{
  outline:2px solid rgba(26,160,214,0.25);
  border-color:rgba(26,160,214,0.45);
}

.btn{
  background:var(--card-2);
  border:1px solid var(--line);
  color:var(--text);
  padding:10px 14px;
  border-radius:12px;
  font-size:14px;
  cursor:pointer;
  transition:transform 0.12s ease, box-shadow 0.12s ease, background 0.2s ease, border-color 0.2s ease;
}

a.btn{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.btn:hover{
  transform:translateY(-1px);
  box-shadow:0 6px 16px rgba(40,34,26,0.12);
}

.btn.primary{
  background:linear-gradient(135deg, var(--accent) 0%, var(--accent-strong) 100%);
  border-color:var(--accent-strong);
  color:#fff;
  box-shadow:0 10px 24px rgba(26,160,214,0.32);
}
.btn.primary:hover{
  box-shadow:0 12px 26px rgba(26,160,214,0.36);
}
.btn.primary:focus{
  outline:2px solid rgba(26,160,214,0.35);
  outline-offset:1px;
}

.btn.ghost{
  background:transparent;
  border-color:rgba(27,25,22,0.2);
}

.btn:disabled{
  opacity:0.5;
  cursor:not-allowed;
  box-shadow:none;
  transform:none;
}

.msg{
  margin-top:8px;
  color:var(--muted);
  font-size:13px;
  white-space:pre-wrap;
}

.msg.warn{
  color:var(--accent-2);
}

.loading{
  position:fixed;
  inset:0;
  background:rgba(255, 255, 255, 0.92);
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:9999;
}

.loading-card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:18px;
  padding:18px 22px;
  box-shadow:var(--shadow);
  text-align:center;
}

.loading-title{
  font-family:var(--font-display);
  font-size:18px;
  margin:0 0 6px;
}

.loading-sub{
  font-size:13px;
  color:var(--muted);
}

.loading-progress{
  margin-top:14px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
}

.loading-progress-track{
  width:min(100%, 250px);
  height:8px;
  padding:1px;
  border-radius:999px;
  background:rgba(17,124,171,0.12);
  box-shadow:inset 0 0 0 1px rgba(17,124,171,0.06);
  overflow:hidden;
}

.loading-progress-fill{
  width:0;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg, rgba(26,160,214,0.9), rgba(73,168,75,0.86));
  transition:width 0.18s ease-out;
}

.loading-progress-value{
  font-family:var(--font-mono);
  font-size:22px;
  font-weight:600;
  line-height:1;
  color:var(--accent-strong);
  letter-spacing:0.04em;
}

.hint{
  color:var(--muted);
  font-size:12px;
  margin-top:6px;
}

.ops-payroll-tab{
  gap:16px;
}

.ops-payroll-hero{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px 18px;
  padding:1.15rem 1.25rem;
  border:1px solid rgba(26,160,214,0.18);
  border-radius:22px;
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.18), transparent 38%),
    linear-gradient(135deg, rgba(255,255,255,0.98), rgba(240,248,252,0.96));
  box-shadow:0 14px 34px rgba(26,160,214,0.08);
}

.ops-payroll-hero-copy{
  display:flex;
  flex-direction:column;
  gap:0.35rem;
  min-width:0;
  flex:1 1 24rem;
}

.ops-payroll-eyebrow{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:0.28rem 0.65rem;
  border-radius:999px;
  background:rgba(26,160,214,0.12);
  border:1px solid rgba(26,160,214,0.18);
  color:var(--accent);
  font-size:11px;
  font-weight:700;
  letter-spacing:0.05em;
  text-transform:uppercase;
}

.ops-payroll-hero h2{
  margin:0;
  font-size:1.85rem;
  line-height:1.1;
  font-family:var(--font-display);
  color:var(--text);
}

.ops-payroll-hero-text{
  margin:0;
  max-width:42rem;
  font-size:13px;
  line-height:1.6;
}

.ops-payroll-hero-actions{
  display:flex;
  align-items:center;
  gap:0.65rem;
}

.ops-payroll-layout{
  display:grid;
  gap:14px;
  align-items:start;
}

.ops-payroll-layout-split{
  grid-template-columns:1fr;
}

@media (min-width:1500px){
  .ops-payroll-layout-split{
    grid-template-columns:minmax(0,1.08fr) minmax(320px,0.92fr);
  }
}

.ops-payroll-run-card,
.ops-payroll-results-card,
.ops-payroll-snapshot-card,
.ops-payroll-history-card,
.ops-payroll-registry-form-card,
.ops-payroll-registry-table-card,
.ops-payroll-penalty-card{
  padding:1rem 1.1rem 1.1rem;
}

.ops-payroll-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:0.75rem;
  margin-bottom:0.85rem;
}

.ops-payroll-card-head h3{
  margin:0;
  font-size:1.08rem;
  line-height:1.2;
  font-family:var(--font-display);
}

.ops-payroll-card-lead{
  margin:0.3rem 0 0;
  color:var(--muted);
  font-size:12px;
  line-height:1.55;
  max-width:36rem;
}

.ops-payroll-run-controls{
  display:flex;
  flex-direction:column;
  gap:0.9rem;
}

.ops-payroll-file-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:0.9rem;
  padding:0.95rem 1rem;
  border:1px solid rgba(26,160,214,0.18);
  border-radius:18px;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.92), rgba(244,250,253,0.86));
}

.ops-payroll-file-trigger{
  min-width:12.5rem;
  justify-content:center;
}

.ops-payroll-file-state{
  display:flex;
  flex-direction:column;
  gap:0.25rem;
  min-width:0;
  flex:1 1 18rem;
}

.ops-payroll-file-name{
  min-height:1.3em;
  font-size:0.95rem;
  font-weight:700;
  line-height:1.35;
  color:var(--text);
  word-break:break-word;
}

.ops-payroll-file-note{
  margin:0;
}

.ops-payroll-actions{
  display:flex;
  flex-wrap:wrap;
  gap:0.65rem;
}

.ops-payroll-actions .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
}

.ops-payroll-actions-compact{
  margin-top:0.8rem;
}

.ops-payroll-inline-hint{
  margin:0;
  padding:0.8rem 0.9rem;
  border:1px dashed rgba(27,25,22,0.16);
  border-radius:14px;
  background:rgba(255,255,255,0.7);
}

#opsPayrollMeta:empty,
#opsPayrollFaultsWrap:empty,
#opsPayrollPreviewWrap:empty{
  display:none;
}

#opsPayrollMeta:not(:empty),
#opsPayrollFaultsWrap:not(:empty),
#opsPayrollPreviewWrap:not(:empty){
  padding:0.95rem 1rem;
  border:1px solid rgba(26,160,214,0.16);
  border-radius:18px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.96), rgba(244,249,252,0.9));
  box-shadow:0 8px 24px rgba(26,160,214,0.06);
}

#opsPayrollMeta{
  display:flex;
  flex-direction:column;
  gap:0.45rem;
}

.ops-payroll-preview-card{
  display:flex;
  flex-direction:column;
  gap:0.75rem;
}

.ops-payroll-preview-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:0.75rem;
}

.ops-payroll-preview-head h4{
  margin:0;
  font-size:1rem;
  font-family:var(--font-display);
}

.ops-payroll-preview-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(160px, 1fr));
  gap:0.75rem;
}

.ops-payroll-preview-kpi{
  padding:0.8rem 0.9rem;
  border-radius:14px;
  border:1px solid rgba(26,160,214,0.14);
  background:rgba(255,255,255,0.82);
}

.ops-payroll-preview-kpi-label{
  font-size:11px;
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:uppercase;
  color:var(--muted);
}

.ops-payroll-preview-kpi-value{
  margin-top:0.3rem;
  font-size:1.02rem;
  font-weight:700;
  color:var(--text);
}

#opsPayrollMeta .hint,
#opsPayrollFaultsWrap .hint,
#opsPayrollPreviewWrap .hint{
  margin-top:0;
}

.ops-payroll-preview-modal-card{
  width:min(1120px, 92vw);
}

.ops-payroll-results-card #opsPayrollTableWrap{
  min-height:1px;
}

.ops-payroll-snapshot-card{
  min-height:100%;
}

.ops-payroll-snapshot-status{
  padding:0.85rem 0.95rem;
  border-radius:16px;
  border:1px solid rgba(26,160,214,0.12);
  background:rgba(255,255,255,0.72);
}

.ops-payroll-snapshot-card[data-state="needs-period"] .ops-payroll-snapshot-status{
  border-color:rgba(214,129,26,0.22);
  background:rgba(255,247,237,0.92);
}

.ops-payroll-snapshot-card[data-state="ready"] .ops-payroll-snapshot-status{
  border-color:rgba(95,154,114,0.22);
  background:rgba(244,251,246,0.92);
}

.ops-payroll-snapshot-status-label{
  font-size:11px;
  font-weight:700;
  letter-spacing:0.05em;
  text-transform:uppercase;
  color:var(--muted);
}

.ops-payroll-snapshot-status-text{
  margin:0.35rem 0 0;
  font-size:0.98rem;
  line-height:1.45;
  color:var(--text);
}

.ops-payroll-snapshot-note-wrap{
  margin-top:0.85rem;
  max-width:32rem;
}

.ops-payroll-snapshot-note-wrap input{
  width:100%;
  margin-top:2px;
}

.ops-payroll-history-wrap{
  min-height:1px;
}

.ops-payroll-period-card{
  padding:1rem 1.15rem 1.1rem;
}
.ops-payroll-period-header{
  margin-bottom:0.85rem;
}
.ops-payroll-period-heading{
  margin:0 0 0.35rem 0;
  font-size:1.05rem;
  font-weight:600;
  color:var(--text);
  font-family:var(--font-display);
  line-height:1.3;
}
.ops-payroll-period-optional{
  font-weight:500;
  color:var(--muted);
  font-size:0.92em;
}
.ops-payroll-period-lead{
  margin:0;
  font-size:12px;
  color:var(--muted);
  line-height:1.5;
  max-width:40rem;
}
.ops-payroll-period-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:1rem 1.25rem;
  align-items:start;
}
@media (min-width:1320px){
  .ops-payroll-period-layout{
    grid-template-columns:minmax(0,1.18fr) minmax(18rem,0.82fr);
  }
}
.ops-payroll-period-fields{
  display:flex;
  flex-direction:column;
  gap:0.9rem;
  min-width:0;
}
.ops-payroll-period-dates{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0.75rem;
  align-items:end;
}
@media (max-width:480px){
  .ops-home-layout{
    grid-template-columns:1fr;
  }
  .ops-payroll-period-dates{
    grid-template-columns:1fr;
  }
}
.ops-payroll-period-extra input[type="number"]{
  max-width:8rem;
  margin-top:2px;
}
.ops-payroll-period-field-hint{
  margin-top:0.4rem;
  margin-bottom:0;
  max-width:28rem;
}
.ops-payroll-period-rules{
  font-size:12px;
  line-height:1.5;
  color:var(--muted);
  background:var(--card-2);
  border:1px solid var(--line);
  border-radius:10px;
  padding:0.65rem 0.85rem 0.7rem;
  min-width:0;
}
.ops-payroll-period-rules strong{
  color:var(--text);
  font-weight:600;
}
.ops-payroll-rules-list{
  margin:0;
  padding-inline-start:1.15rem;
}
.ops-payroll-rules-list li{
  margin-bottom:0.5rem;
}
.ops-payroll-rules-list li:last-child{
  margin-bottom:0;
}

/* Manual attendance (Attendance & penalties tab) */
.ops-payroll-manual-card{
  margin-bottom:0.75rem;
  padding:0.85rem 1rem 1rem;
  border-radius:var(--radius);
}
.ops-payroll-details-summary{
  cursor:pointer;
  font-weight:600;
  font-size:1.02rem;
  list-style-position:outside;
  color:var(--text);
  font-family:var(--font-display);
  padding:0.15rem 0;
}
.ops-payroll-manual-body{
  margin-top:0.65rem;
}
.ops-payroll-manual-body > .ops-payroll-period-lead{
  margin-bottom:0.75rem;
}
.ops-payroll-optional-label{
  font-weight:500;
  color:var(--muted);
  font-size:0.92em;
}
.ops-payroll-manual-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:1rem 1.25rem;
  align-items:start;
}
@media (min-width:1380px){
  .ops-payroll-manual-layout{
    grid-template-columns:minmax(0,1fr) minmax(0,20rem);
  }
}
.ops-payroll-manual-fields{
  display:flex;
  flex-direction:column;
  gap:0.85rem;
  min-width:0;
}
.ops-payroll-manual-field-employee select{
  width:100%;
  max-width:100%;
  margin-top:2px;
}
.ops-payroll-manual-date-row input[type="date"]{
  width:100%;
  max-width:12rem;
  min-width:0;
  box-sizing:border-box;
  margin-top:2px;
}
.ops-payroll-manual-stack{
  display:flex;
  flex-direction:column;
  gap:1rem;
}
.ops-payroll-manual-block{
  margin:0;
  padding:0.75rem 0.85rem;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--card);
}
.ops-payroll-manual-block-times{
  background:var(--card-2);
}
.ops-payroll-manual-block-title{
  margin:0 0 0.6rem 0;
  font-size:0.82rem;
  font-weight:700;
  letter-spacing:0.02em;
  text-transform:uppercase;
  color:var(--muted);
  font-family:var(--font-display);
}
.ops-payroll-manual-block-compact{
  padding:0.5rem 0.65rem;
}
.ops-payroll-manual-mode-inline{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:0.35rem 0.5rem;
}
.ops-payroll-manual-mode-chip{
  display:inline-flex;
  align-items:center;
  gap:0.35rem;
  margin:0;
  padding:0.28rem 0.5rem;
  border:1px solid var(--line);
  border-radius:6px;
  cursor:pointer;
  background:var(--bg);
  font-size:0.88rem;
  font-weight:600;
  color:var(--text);
  transition:border-color 0.15s ease, box-shadow 0.15s ease;
}
.ops-payroll-manual-mode-chip:has(input:checked){
  border-color:var(--accent);
  box-shadow:0 0 0 1px var(--accent);
  background:var(--card-2);
}
.ops-payroll-manual-mode-chip input{
  margin:0;
  flex-shrink:0;
}
.ops-payroll-manual-mode-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:0.5rem;
}
@media (min-width:640px){
  .ops-payroll-manual-mode-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
.ops-payroll-manual-mode-card{
  display:flex;
  align-items:flex-start;
  gap:0.5rem;
  margin:0;
  padding:0.55rem 0.6rem;
  border:1px solid var(--line);
  border-radius:8px;
  cursor:pointer;
  background:var(--bg);
  transition:border-color 0.15s ease, box-shadow 0.15s ease;
}
.ops-payroll-manual-mode-card:has(input:checked){
  border-color:var(--accent);
  box-shadow:0 0 0 1px var(--accent);
  background:var(--card-2);
}
.ops-payroll-manual-mode-card input{
  margin-top:0.2rem;
  flex-shrink:0;
}
.ops-payroll-manual-mode-card-body{
  display:flex;
  flex-direction:column;
  gap:0.25rem;
  min-width:0;
}
.ops-payroll-manual-mode-title{
  font-weight:600;
  font-size:0.92rem;
  color:var(--text);
}
.ops-payroll-manual-mode-desc{
  font-size:11px;
  line-height:1.4;
  color:var(--muted);
}
.ops-payroll-manual-time-inputs{
  display:grid;
  grid-template-columns:1fr;
  gap:0.75rem;
  align-items:end;
}
.ops-payroll-manual-time-inputs.ops-payroll-manual-time-inputs-range{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
@media (max-width:520px){
  .ops-payroll-manual-time-inputs.ops-payroll-manual-time-inputs-range{
    grid-template-columns:1fr;
  }
}
.ops-payroll-manual-start-wrap input[type="time"],
.ops-payroll-manual-end-wrap input[type="time"]{
  max-width:11rem;
  width:100%;
  min-width:0;
  box-sizing:border-box;
  margin-top:2px;
}
.ops-payroll-manual-note-input{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  margin-top:2px;
}
.ops-payroll-manual-actions{
  margin-top:0.65rem;
  padding-top:0.15rem;
}
.ops-payroll-manual-table-wrap{
  margin-top:1rem;
}
.ops-payroll-manual-aside{
  font-size:12px;
  line-height:1.5;
  color:var(--muted);
  background:var(--card-2);
  border:1px solid var(--line);
  border-radius:10px;
  padding:0.65rem 0.85rem 0.7rem;
  min-width:0;
}
.ops-payroll-manual-aside strong{
  color:var(--text);
  font-weight:600;
}

.ops-payroll-adjustments-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
  align-items:start;
}

@media (min-width:1500px){
  .ops-payroll-adjustments-grid{
    grid-template-columns:minmax(0,1.18fr) minmax(320px,0.82fr);
  }
}

.ops-payroll-details{
  padding:0.9rem 1rem 1rem;
  border-radius:18px;
}

.ops-payroll-penalty-card{
  margin-bottom:0;
}

.ops-payroll-penalty-body{
  margin-top:0.75rem;
}

.ops-payroll-penalty-title{
  margin:0 0 0.35rem;
  font-size:1rem;
  font-family:var(--font-display);
}

.ops-payroll-registry-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
  align-items:start;
}

@media (min-width:1500px){
  .ops-payroll-registry-grid{
    grid-template-columns:minmax(320px,0.94fr) minmax(0,1.18fr);
  }
}

.ops-payroll-form-actions{
  margin-top:0.75rem;
}

.ops-payroll-form-hint{
  margin-top:0.65rem;
}

.ops-payroll-filter-grid{
  align-items:end;
}

.ops-payroll-filter-actions{
  display:flex;
  align-items:flex-end;
}

.ops-payroll-weekday-chips{
  display:flex;
  flex-wrap:wrap;
  gap:0.45rem;
  margin-top:0.3rem;
}

.ops-payroll-weekday-chip{
  display:inline-flex;
  align-items:center;
  gap:0.35rem;
  padding:0.3rem 0.55rem;
  border:1px solid rgba(26,160,214,0.2);
  border-radius:999px;
  background:rgba(255,255,255,0.65);
  font-size:12px;
  color:var(--text);
}

.ops-payroll-weekday-chip input{
  margin:0;
}

.ops-payroll-table-meta{
  margin-top:0.25rem;
  font-size:12px;
  color:var(--muted);
  line-height:1.45;
}

@media (max-width:640px){
  .ops-payroll-hero{
    padding:1rem;
    border-radius:18px;
  }
  .ops-payroll-hero h2{
    font-size:1.45rem;
  }
  .ops-payroll-run-card,
  .ops-payroll-results-card,
  .ops-payroll-snapshot-card,
  .ops-payroll-history-card,
  .ops-payroll-registry-form-card,
  .ops-payroll-registry-table-card,
  .ops-payroll-penalty-card{
    padding:0.95rem;
  }
  .ops-payroll-file-trigger{
    min-width:100%;
  }
  .ops-payroll-actions .btn{
    width:100%;
  }
}

.ops-section-block{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.ops-section-title{
  margin:0;
  font-family:var(--font-display);
  font-size:20px;
  font-weight:700;
  color:var(--text);
}

.ops-purchasing-editor-table{
  width:100%;
  border-collapse:collapse;
  font-size:13px;
}
.ops-purchasing-editor-table th,
.ops-purchasing-editor-table td{
  border:1px solid var(--line);
  padding:6px 8px;
  vertical-align:middle;
}
.ops-purchasing-editor-table input[type="text"],
.ops-purchasing-editor-table input[type="number"]{
  width:100%;
  max-width:7.5rem;
  min-width:3.25rem;
  box-sizing:border-box;
}

.entity{
  padding:12px;
  border:1px dashed var(--line);
  border-radius:14px;
  min-height:110px;
  color:var(--muted);
  background:var(--card-2);
  font-family:var(--font-mono);
  font-size:12px;
  line-height:1.5;
  white-space:pre-wrap;
}

.storage-meta{
  margin-top:10px;
  padding:10px;
  border:1px dashed var(--line);
  border-radius:14px;
  background:var(--card);
}

.actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

.pill{
  padding:8px 12px;
  border-radius:999px;
  border:1px solid var(--line);
  background:var(--card);
  font-size:12px;
  letter-spacing:0.01em;
  color:var(--text);
  cursor:pointer;
  transition:all 0.15s ease;
}

.pill.active{
  border-color:rgba(26,160,214,0.45);
  background:rgba(26,160,214,0.16);
  color:var(--accent);
}

.ops-parts-panel-head{
  align-items:flex-start;
  gap:14px;
}

.ops-parts-panel-note{
  max-width:360px;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
  text-align:start;
}

.ops-parts-kpis{
  margin-top:2px;
}

.ops-parts-hero{
  align-items:stretch;
}

.ops-parts-planner-summary{
  margin:0;
  grid-template-columns:repeat(2, minmax(150px, 1fr));
  align-content:start;
  flex:1 1 360px;
}

.ops-parts-layout{
  grid-template-columns:minmax(320px, 0.9fr) minmax(0, 1.1fr);
}

.ops-parts-card--details{
  grid-column:1 / -1;
}

.ops-parts-setup-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px 14px;
  margin-bottom:14px;
}

.ops-parts-type-meta{
  margin-top:8px;
  margin-bottom:0;
  font-size:13px;
  line-height:1.5;
}

.ops-parts-tube-choice-host{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(240px, 1fr));
  gap:12px;
}

.ops-parts-tube-card{
  border:1px solid rgba(26,160,214,0.16);
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.12), transparent 46%),
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(240,247,255,0.9));
  border-radius:16px;
  padding:13px 14px;
  display:flex;
  flex-direction:column;
  gap:10px;
  min-width:0;
  box-shadow:0 10px 24px rgba(26,160,214,0.08);
}

.ops-parts-tube-card-head{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
}

.ops-parts-tube-tag{
  font-size:11px;
  font-weight:800;
  letter-spacing:0.04em;
  text-transform:uppercase;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(26,160,214,0.28);
  background:rgba(26,160,214,0.1);
  color:var(--text);
}

.ops-parts-tube-tag--part{
  background:rgba(26,160,214,0.18);
  border-color:rgba(26,160,214,0.35);
}

.ops-parts-choice-summary{
  display:grid;
  gap:8px;
}

.ops-parts-choice-name{
  font-size:15px;
  line-height:1.35;
  font-weight:800;
  font-family:var(--font-display);
  color:var(--text);
  word-break:break-word;
}

.ops-parts-choice-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.ops-parts-choice-pill{
  display:inline-flex;
  align-items:center;
  padding:5px 8px;
  border-radius:999px;
  background:rgba(255,255,255,0.86);
  border:1px solid rgba(26,160,214,0.14);
  color:var(--text);
  font-size:11px;
  font-weight:700;
  line-height:1.2;
}

.ops-parts-tube-card .pricing-field{
  margin-top:2px;
  min-width:0;
}

.ops-parts-tube-card select{
  width:100%;
  max-width:100%;
}

.ops-parts-qty-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
  margin:2px 0 8px;
}

.ops-parts-qty-grid .pricing-field{
  min-width:0;
  flex:1 1 auto;
}

.ops-parts-inline-note{
  margin:0 0 14px;
}

.ops-parts-results-grid,
.ops-parts-detail-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
  align-items:start;
}

.ops-parts-result-block{
  min-width:0;
  padding:12px;
  border-radius:16px;
  border:1px solid rgba(26,160,214,0.14);
  background:rgba(255,255,255,0.78);
}

.ops-parts-result-block--wide{
  grid-column:1 / -1;
}

.ops-parts-subhead{
  font-size:12px;
  font-weight:800;
  letter-spacing:0.04em;
  text-transform:uppercase;
  color:var(--muted);
  margin:0 0 8px;
}

.ops-parts-po-mode{
  min-width:0;
}

.ops-parts-po-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
}

.ops-parts-po-actions--setup{
  margin-top:14px;
}

.ops-parts-po-actions--setup .btn{
  width:100%;
  justify-content:center;
}

.create-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
}

.receive-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}

.create{
  background:var(--card-2);
  border:1px solid var(--line);
  border-radius:14px;
  padding:12px;
}

#operationsMain .create{
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.18), transparent 42%),
    linear-gradient(180deg, rgba(26,160,214,0.10), rgba(26,160,214,0.03));
  border-color:rgba(26,160,214,0.18);
  box-shadow:0 10px 28px rgba(26,160,214,0.08);
}

.create h3{
  margin:0;
  font-size:16px;
  font-family:var(--font-display);
}

.ops-invoice-panel-head{
  align-items:flex-end;
  gap:14px;
}

.ops-invoice-panel-intro{
  display:grid;
  gap:6px;
}

.ops-invoice-panel-intro .hint{
  margin:0;
  max-width:780px;
}

.ops-invoice-hero{
  display:grid;
  grid-template-columns:minmax(0, 1.35fr) minmax(280px, 0.95fr);
  gap:16px;
  align-items:stretch;
  padding:18px;
  background:
    radial-gradient(circle at top right, rgba(112,205,255,0.20), transparent 32%),
    radial-gradient(circle at bottom left, rgba(14,83,130,0.42), transparent 42%),
    linear-gradient(135deg, rgba(9,42,67,0.98), rgba(13,73,110,0.96) 55%, rgba(23,112,151,0.90));
  color:#fff;
  border-color:rgba(64,164,221,0.34);
}

#operationsMain .ops-invoice-hero{
  box-shadow:
    0 20px 40px rgba(8,34,54,0.24),
    inset 0 1px 0 rgba(255,255,255,0.06);
}

.ops-invoice-eyebrow{
  display:inline-flex;
  align-items:center;
  width:fit-content;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(8,24,39,0.36);
  color:rgba(245,250,255,0.96);
  font-size:11px;
  font-weight:800;
  letter-spacing:0.1em;
  text-transform:uppercase;
}

.ops-invoice-hero-copy{
  display:grid;
  gap:10px;
  align-content:start;
}

.ops-invoice-hero-copy h3{
  margin:0;
  font-size:25px;
  line-height:1.2;
  color:#fff;
  text-shadow:0 2px 14px rgba(0,0,0,0.20);
}

.ops-invoice-hero-copy .hint{
  margin:0;
  color:rgba(232,241,250,0.92);
  font-size:14px;
  text-shadow:0 1px 10px rgba(0,0,0,0.16);
}

.ops-invoice-hero-badges{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  align-content:start;
}

.ops-invoice-chip{
  display:grid;
  gap:6px;
  align-content:start;
  padding:12px 14px;
  border-radius:16px;
  background:linear-gradient(180deg, rgba(6,22,36,0.34), rgba(15,54,82,0.24));
  border:1px solid rgba(184,226,251,0.18);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.05),
    0 10px 24px rgba(6,25,40,0.12);
}

.ops-invoice-chip--accent{
  background:linear-gradient(180deg, rgba(15,74,110,0.46), rgba(8,31,49,0.32));
}

.ops-invoice-chip span{
  font-size:11px;
  font-weight:800;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:rgba(220,236,249,0.78);
}

.ops-invoice-chip strong{
  font-size:17px;
  line-height:1.25;
  color:#fff;
  font-family:var(--font-display);
}

.ops-invoice-layout{
  display:grid;
  grid-template-columns:minmax(0, 1.45fr) minmax(320px, 0.92fr);
  gap:12px;
  align-items:start;
}

.ops-invoice-main,
.ops-invoice-side{
  display:grid;
  gap:12px;
}

.ops-invoice-card,
.ops-invoice-summary-card{
  padding:16px;
  background:
    radial-gradient(circle at top right, rgba(112,205,255,0.10), transparent 38%),
    linear-gradient(180deg, rgba(251,253,255,0.98), rgba(241,247,252,0.96));
  border:1px solid rgba(133,168,194,0.26);
  box-shadow:0 16px 36px rgba(16,47,72,0.08);
}

.ops-invoice-card-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  margin-bottom:12px;
}

.ops-invoice-card-head .hint{
  margin:4px 0 0;
  color:#566474;
}

.ops-invoice-fields{
  display:grid;
  gap:12px;
}

.ops-invoice-fields--two{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.ops-invoice-fields--three{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

.ops-invoice-field--full{
  grid-column:1 / -1;
}

.ops-invoice-helper{
  margin-top:12px;
  padding:12px 14px;
  border-radius:14px;
  background:rgba(240,246,251,0.96);
  border:1px dashed rgba(56,146,199,0.34);
  color:#516070;
  font-size:12px;
  line-height:1.45;
}

.ops-invoice-summary-card{
  position:sticky;
  top:12px;
}

.ops-invoice-summary-list{
  display:grid;
  gap:10px;
}

.ops-invoice-summary-item{
  display:grid;
  gap:5px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(109,170,206,0.24);
  background:rgba(246,250,253,0.98);
}

.ops-invoice-summary-item span{
  font-size:11px;
  font-weight:800;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:#647485;
}

.ops-invoice-summary-item strong{
  font-size:15px;
  line-height:1.35;
  color:var(--text);
  font-family:var(--font-display);
}

.ops-invoice-total-stack{
  display:grid;
  gap:0;
  margin-top:14px;
  padding-top:10px;
  border-top:1px solid rgba(26,160,214,0.18);
}

.ops-invoice-total-line{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:12px;
  padding:10px 0;
  border-bottom:1px dashed rgba(26,160,214,0.16);
}

.ops-invoice-total-line:last-child{
  border-bottom:none;
}

.ops-invoice-total-line span{
  color:var(--muted);
  font-size:13px;
  font-weight:700;
}

.ops-invoice-total-line strong{
  color:var(--text);
  font-size:14px;
  font-family:var(--font-mono);
}

.ops-invoice-total-line.is-grand span,
.ops-invoice-total-line.is-grand strong{
  color:var(--accent-strong);
  font-weight:800;
}

.ops-invoice-total-line.is-grand strong{
  font-size:18px;
}

.ops-invoice-actions{
  margin-top:14px;
}

.ops-invoice-actions .btn{
  width:100%;
  justify-content:center;
}

.ops-invoice-summary-card .msg{
  margin-top:12px;
}

.ops-invoice-card textarea{
  min-height:110px;
  resize:vertical;
}

.pricing-panel-head{
  align-items:flex-start;
  gap:12px;
}

.pricing-stage-nav{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
  margin-bottom:14px;
}

.pricing-stage-tab{
  appearance:none;
  border:1px solid rgba(26,160,214,0.18);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(238,247,255,0.92));
  border-radius:18px;
  padding:14px 16px;
  text-align:left;
  display:flex;
  flex-direction:column;
  gap:6px;
  color:var(--text);
  box-shadow:0 10px 24px rgba(25,35,52,0.06);
  transition:border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.pricing-stage-tab:hover{
  transform:translateY(-1px);
  border-color:rgba(26,160,214,0.3);
  box-shadow:0 14px 28px rgba(25,35,52,0.08);
}

.pricing-stage-tab strong{
  font-size:18px;
  font-family:var(--font-display);
}

.pricing-stage-tab.is-active{
  border-color:rgba(26,160,214,0.36);
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.16), transparent 45%),
    linear-gradient(180deg, rgba(26,160,214,0.10), rgba(255,255,255,0.98));
  box-shadow:0 16px 30px rgba(18,70,112,0.12);
}

.pricing-stage-tab-kicker{
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:#0f6f96;
}

.pricing-stage-panel[hidden]{
  display:none !important;
}

.pricing-workspace{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) minmax(360px, 1fr);
  gap:14px;
}

.pricing-main-column,
.pricing-side-column{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.pricing-card{
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.14), transparent 40%),
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(240,247,255,0.92));
  border:1px solid rgba(26,160,214,0.16);
  border-radius:18px;
  padding:14px;
  box-shadow:0 12px 28px rgba(25,35,52,0.08);
}

.pricing-card-hero{
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.18), transparent 38%),
    linear-gradient(180deg, rgba(26,160,214,0.10), rgba(255,255,255,0.96));
}

.pricing-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:12px;
}

.pricing-card-head h3{
  margin:0;
  font-size:17px;
  font-family:var(--font-display);
}

.pricing-form-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px 12px;
}

.pricing-mini-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:10px;
}

.pricing-inline-checks{
  display:flex;
  flex-wrap:wrap;
  gap:12px 14px;
  margin-top:10px;
}

.pricing-toggle-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
  margin-top:10px;
}

.pricing-toggle-chip{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  padding:10px 12px;
  border:1px solid rgba(26,160,214,0.14);
  border-radius:12px;
  background:rgba(255,255,255,0.8);
  color:var(--text);
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 4px 12px rgba(25,35,52,0.04);
}

.pricing-toggle-chip span{
  min-width:0;
  line-height:1.35;
}

.pricing-card-subsection{
  margin-bottom:12px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(26,160,214,0.12);
}

.pricing-breakdown-stack{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.pricing-flow-shell{
  display:grid;
  grid-template-columns:minmax(300px, 0.88fr) minmax(0, 1.12fr);
  gap:14px;
  align-items:start;
}

.pricing-flow-shell-order{
  grid-template-columns:minmax(300px, 0.88fr) minmax(0, 1.12fr);
}

.pricing-flow-shell-wide{
  grid-template-columns:minmax(260px, 0.72fr) minmax(0, 1.28fr);
}

.pricing-order-side-column{
  display:flex;
  flex-direction:column;
  gap:14px;
  min-width:0;
}

.pricing-flow-intro-card{
  position:sticky;
  top:14px;
}

.pricing-flow-note-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.pricing-flow-note{
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(26,160,214,0.14);
  background:rgba(255,255,255,0.72);
  display:flex;
  flex-direction:column;
  gap:4px;
}

.pricing-order-draft-card{
  position:sticky;
  top:14px;
}

.pricing-customer-portal-card{
  border:1px solid rgba(26,160,214,0.18);
  background:linear-gradient(180deg, rgba(244,251,255,0.94) 0%, rgba(255,255,255,0.88) 100%);
}

.pricing-order-draft-summary{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
  margin-top:14px;
}

.pricing-portal-access-summary{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

.pricing-order-draft-item{
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(26,160,214,0.14);
  background:rgba(255,255,255,0.78);
  display:flex;
  flex-direction:column;
  gap:4px;
  min-height:72px;
}

.pricing-order-draft-label{
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0.06em;
  color:var(--muted);
}

.pricing-order-draft-item strong{
  font-size:16px;
  line-height:1.35;
}

.pricing-portal-access-value{
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  word-break: break-word;
}

/* Whole-card collapsible panels on the pricing tab (calculator stays always open). */
.pricing-panel-details{
  margin:0;
}
.pricing-panel-details > summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  position:relative;
  padding-right:22px;
}
.pricing-panel-details > summary::-webkit-details-marker{
  display:none;
}
.pricing-panel-details > summary::after{
  content:"▾";
  position:absolute;
  right:0;
  top:2px;
  font-size:12px;
  color:var(--muted);
  transition:transform 0.16s ease;
}
.pricing-panel-details:not([open]) > summary::after{
  transform:rotate(-90deg);
}
.pricing-panel-details > summary .pricing-card-head{
  margin-bottom:0;
  flex:1;
}
.pricing-panel-details[open] > summary .pricing-card-head{
  margin-bottom:12px;
}
.pricing-panel-details-body{
  padding-top:2px;
}

.pricing-highlights{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:10px;
  margin-bottom:0;
}

.pricing-card-kpis{
  padding-bottom:12px;
}

.pricing-card-kpis #pricingWarnings{
  margin-top:10px;
}

.pricing-suggested-below-max{
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid rgba(26,160,214,0.14);
}

.pricing-suggested-below-max-title{
  font-weight:700;
  margin-bottom:8px;
  color:var(--text);
}

.pricing-status-shell{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.pricing-status-pill{
  display:inline-flex;
  align-self:flex-start;
  font-size:12px;
  font-weight:700;
  border-radius:999px;
  padding:4px 10px;
  background:rgba(120,130,150,0.16);
  color:#334155;
}

.pricing-status-pill.ok{
  background:rgba(22,163,74,0.16);
  color:#166534;
}

.pricing-status-pill.info{
  background:rgba(14,165,233,0.14);
  color:#0369a1;
}

.pricing-status-pill.warn{
  background:rgba(202,138,4,0.16);
  color:#92400e;
}

.pricing-status-pill.danger{
  background:rgba(220,38,38,0.14);
  color:#b91c1c;
}

.pricing-status-pill.muted{
  background:rgba(120,130,150,0.16);
  color:#334155;
}

.pricing-status-grid{
  display:grid;
  grid-template-columns:repeat(1, minmax(0, 1fr));
  gap:6px;
}

@media (max-width:1200px){
  .pricing-stage-nav{
    grid-template-columns:1fr;
  }

  .pricing-highlights{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
}

@media (max-width:1280px){
  .pricing-workspace,
  .pricing-flow-shell,
  .pricing-flow-shell-wide{
    grid-template-columns:minmax(0, 1fr);
  }

  .pricing-flow-intro-card,
  .pricing-order-draft-card{
    position:static;
  }
}

@media (max-width:640px){
  .pricing-toggle-grid{
    grid-template-columns:1fr;
  }

  .pricing-order-draft-summary{
    grid-template-columns:1fr;
  }

  .pricing-portal-access-summary{
    grid-template-columns:1fr;
  }
}

.pricing-highlight{
  padding:12px;
  border-radius:14px;
  border:1px solid rgba(26,160,214,0.16);
  background:rgba(255,255,255,0.85);
}

.pricing-highlight-label{
  font-size:11px;
  font-weight:700;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:0.04em;
}

.pricing-highlight-value{
  margin-top:6px;
  font-size:19px;
  font-weight:800;
  color:var(--text);
  line-height:1.2;
}

.ops-flow-guide{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
  margin:10px 0 12px;
}

.ops-flow-guide-item{
  padding:10px 12px;
  border:1px solid rgba(26,160,214,0.2);
  border-radius:12px;
  background:linear-gradient(180deg, rgba(26,160,214,0.08), rgba(26,160,214,0.02));
  color:var(--muted);
  font-size:13px;
  font-weight:600;
}

.ops-card-readonly{
  opacity:0.72;
  filter:saturate(0.85);
}

#opsFollowupSalesBypassCard,
#opsFollowupFurnacesBypassCard{
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.18), transparent 42%),
    linear-gradient(180deg, rgba(26,160,214,0.10), rgba(26,160,214,0.03));
  border-color:rgba(26,160,214,0.18);
  box-shadow:0 10px 28px rgba(26,160,214,0.08);
}

.ops-bypass-collapse{
  margin:0;
}

.ops-bypass-collapse > summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  font-family:var(--font-display);
  font-size:16px;
  font-weight:700;
  color:var(--text);
}

.ops-bypass-collapse > summary::-webkit-details-marker{
  display:none;
}

.ops-bypass-collapse > summary::after{
  content:"▾";
  font-size:12px;
  color:var(--muted);
  transition:transform 0.16s ease;
}

.ops-bypass-collapse:not([open]) > summary::after{
  transform:rotate(-90deg);
}

.ops-bypass-collapse-body{
  margin-top:8px;
}

.pricing-field{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:6px;
  flex:1 1 220px;
  min-width:200px;
}

.field-label{
  display:block;
  font-size:12px;
  color:var(--muted);
  font-weight:700;
  letter-spacing:0.01em;
}

.pricing-field input,
.pricing-field select,
.pricing-field textarea{
  width:100%;
  min-width:0;
}

.pricing-field.pricing-check{
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:42px;
}

.pricing-field.pricing-check .field-label{
  margin:0;
}

.pricing-field .check-wrap{
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

#opsFurnacesPanel .furnace-toggle-row{
  align-items:center;
  gap:16px;
}

#opsFurnacesPanel .furnace-toggle{
  display:inline-flex;
  align-items:center;
  gap:12px;
  padding:12px 16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:linear-gradient(135deg, rgba(255,255,255,0.92), rgba(219,243,255,0.92));
  box-shadow:0 10px 24px rgba(36, 86, 133, 0.08);
  font-weight:700;
  color:var(--text);
  cursor:pointer;
}

#opsFurnacesPanel .furnace-toggle input{
  width:18px;
  height:18px;
  margin:0;
  accent-color:var(--brand);
}

#opsFurnacesPanel .furnace-toggle-hint{
  margin:0;
  max-width:640px;
}

#opsFurnacesPanel .pricing-field.is-disabled{
  opacity:0.5;
}

#opsFurnacesPanel .pricing-field.is-disabled input{
  background:#f1f5f9;
  cursor:not-allowed;
}

#opsSalesCustomersFilter{
  min-height:140px;
}

#opsSalesSeasonCaption{
  margin-top:4px;
}

table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden;
  margin:8px 0 14px;
}

#events{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

#prodList{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

#stockList{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

.table-scroll{
  overflow:auto;
  max-height:min(62vh, 520px);
  -webkit-overflow-scrolling:touch;
  border:1px solid var(--line);
  border-radius:14px;
  margin:8px 0 14px;
}

.table-scroll > table{
  margin:0;
  border:0;
  border-radius:0;
}

.table-scroll > table thead th{
  position:sticky;
  top:0;
  z-index:2;
}

.ops-launch-context{
  margin:0 0 12px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(26,160,214,0.18);
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.12), transparent 38%),
    linear-gradient(180deg, rgba(246,250,255,0.98), rgba(239,247,255,0.96));
  box-shadow:0 8px 24px rgba(26,160,214,0.08);
}

.ops-launch-context-title{
  margin:0 0 4px;
  font-size:11px;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--accent);
  font-weight:800;
}

.ops-launch-context-main{
  margin:0;
  font-size:14px;
  font-weight:700;
  color:var(--ink);
}

.ops-launch-context-meta{
  margin:6px 0 0;
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
}

.ops-launch-context-note{
  margin:8px 0 0;
  color:#92400e;
  font-size:12px;
  font-weight:700;
}

.ops-launch-context-candidates{
  margin:8px 0 0;
  padding-left:18px;
  color:var(--muted);
  font-size:12px;
}

.ops-factory-progress-toolbar{
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:16px 18px 18px;
  border-radius:20px;
  border:1px solid rgba(15,118,110,0.14);
  background:
    radial-gradient(circle at top right, rgba(45,212,191,0.12), transparent 32%),
    radial-gradient(circle at bottom left, rgba(249,115,22,0.1), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,0.96), rgba(241,248,247,0.92));
  box-shadow:0 18px 36px rgba(7,52,61,0.08);
}

.ops-factory-progress-toolbar-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.ops-factory-progress-toolbar-brow{
  font-size:11px;
  font-weight:800;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:#0f766e;
}

.ops-factory-progress-toolbar-text{
  max-width:760px;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.ops-factory-progress-controls{
  align-items:end;
  gap:14px;
}

.ops-factory-progress-search-field,
.ops-factory-progress-queue-field{
  margin:0;
}

.ops-factory-progress-search-field{
  flex:1 1 420px;
}

.ops-factory-progress-queue-field{
  flex:0 1 260px;
}

.ops-factory-progress-search-wrap{
  position:relative;
  display:block;
}

.ops-factory-progress-search-wrap input{
  padding-inline-start:44px;
}

.ops-factory-progress-search-wrap::before,
.ops-factory-progress-search-wrap::after{
  content:"";
  position:absolute;
  top:50%;
  pointer-events:none;
  transition:border-color 0.2s ease, background 0.2s ease;
}

.ops-factory-progress-search-wrap::before{
  inset-inline-start:18px;
  width:11px;
  height:11px;
  border:2px solid rgba(71,85,105,0.72);
  border-radius:999px;
  transform:translateY(-60%);
}

.ops-factory-progress-search-wrap::after{
  inset-inline-start:28px;
  width:7px;
  height:2px;
  border-radius:999px;
  background:rgba(71,85,105,0.72);
  transform:translateY(3px) rotate(45deg);
}

.ops-factory-progress-search-wrap:focus-within::before{
  border-color:rgba(15,118,110,0.88);
}

.ops-factory-progress-search-wrap:focus-within::after{
  background:rgba(15,118,110,0.88);
}

.ops-factory-progress-search-wrap input[list]{
  cursor:pointer;
}

.ops-factory-progress-queue-control{
  display:flex;
  align-items:center;
  min-height:42px;
}

.ops-factory-progress-ready-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  min-height:42px;
  padding:10px 16px;
  border-radius:14px;
  border:1px solid rgba(15,118,110,0.18);
  background:linear-gradient(135deg, rgba(255,255,255,0.98), rgba(236,246,244,0.96));
  color:var(--ink);
  font-weight:700;
  box-shadow:0 10px 20px rgba(7,52,61,0.08);
  transition:transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease, background 0.18s ease, color 0.18s ease;
}

.ops-factory-progress-ready-toggle::before{
  content:"";
  width:10px;
  height:10px;
  border-radius:999px;
  background:rgba(148,163,184,0.72);
  box-shadow:inset 0 0 0 2px rgba(255,255,255,0.92);
  transition:background 0.18s ease, transform 0.18s ease;
}

.ops-factory-progress-ready-toggle:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 24px rgba(15,23,42,0.1);
}

.ops-factory-progress-ready-toggle:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(14,116,144,0.18), 0 12px 24px rgba(15,23,42,0.1);
}

.ops-factory-progress-ready-toggle.is-active,
.ops-factory-progress-ready-toggle[aria-pressed="true"]{
  border-color:rgba(15,118,110,0.35);
  background:linear-gradient(135deg, rgba(15,118,110,0.14), rgba(34,197,94,0.18));
  color:#0f172a;
  box-shadow:0 14px 28px rgba(15,118,110,0.14);
}

.ops-factory-progress-ready-toggle.is-active::before,
.ops-factory-progress-ready-toggle[aria-pressed="true"]::before{
  background:#0891b2;
  transform:scale(1.05);
}

.ops-factory-progress-filter-card{
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:14px 16px 16px;
  border-radius:18px;
  border:1px solid rgba(15,118,110,0.14);
  background:rgba(255,255,255,0.7);
}

.ops-factory-progress-filter-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.ops-factory-progress-filter-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.ops-factory-progress-filter-title{
  color:var(--ink);
  font-size:14px;
  font-weight:800;
}

.ops-factory-progress-filter-hint{
  max-width:720px;
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
}

.ops-factory-progress-filter-reset{
  min-width:160px;
}

.ops-factory-progress-filter-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  gap:12px;
}

.ops-factory-progress-filter-chip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-width:0;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(148,163,184,0.2);
  background:linear-gradient(180deg, rgba(255,255,255,0.96), rgba(248,250,252,0.9));
  box-shadow:0 10px 20px rgba(15,23,42,0.05);
  cursor:pointer;
  transition:transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease, background 0.16s ease;
}

.ops-factory-progress-filter-chip:hover{
  transform:translateY(-1px);
  border-color:rgba(15,118,110,0.24);
  box-shadow:0 14px 24px rgba(7,52,61,0.08);
}

.ops-factory-progress-filter-chip:focus-visible{
  outline:none;
  border-color:rgba(15,118,110,0.3);
  box-shadow:0 0 0 3px rgba(15,118,110,0.14), 0 14px 24px rgba(7,52,61,0.08);
}

.ops-factory-progress-filter-chip.is-active{
  border-color:rgba(15,118,110,0.28);
  background:linear-gradient(180deg, rgba(221,247,243,0.98), rgba(236,252,247,0.92));
  box-shadow:0 16px 28px rgba(15,118,110,0.12);
}

.ops-factory-progress-filter-chip.is-empty{
  opacity:0.72;
}

.ops-factory-progress-filter-chip-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}

.ops-factory-progress-filter-chip-label{
  color:var(--ink);
  font-size:13px;
  font-weight:800;
}

.ops-factory-progress-filter-chip-hint{
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

.ops-factory-progress-filter-chip-count{
  flex:0 0 auto;
  min-width:42px;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(15,118,110,0.1);
  color:#115e59;
  font-size:13px;
  font-weight:800;
  text-align:center;
  box-shadow:inset 0 0 0 1px rgba(15,118,110,0.08);
}

.ops-factory-progress-filter-card[data-has-filters="0"] .ops-factory-progress-filter-reset{
  opacity:0.7;
}

.ops-factory-row-main{
  font-weight:700;
  color:var(--ink);
}

.ops-factory-row-sub{
  margin-top:4px;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

.ops-factory-progress-main{
  margin-top:8px;
  font-size:12px;
  line-height:1.45;
  white-space:normal;
}

.ops-factory-status-cell{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:120px;
}

.ops-factory-warning{
  color:#92400e;
  font-size:12px;
  line-height:1.4;
}

.ops-factory-actions{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  align-items:flex-start;
}

.ops-factory-actions .secondary-btn{
  padding:7px 10px;
  font-size:12px;
}

.ops-factory-progress-pill-row{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.ops-factory-progress-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 8px;
  border-radius:999px;
  background:rgba(15,118,110,0.08);
  color:#0f172a;
  font-size:11px;
  font-weight:700;
  line-height:1;
}

.ops-factory-progress-pill strong{
  font-size:12px;
  font-variant-numeric:tabular-nums;
}

.ops-factory-progress-pill-label{
  color:rgba(15,23,42,0.72);
}

.ops-factory-progress-row td:first-child{
  position:relative;
}

.ops-factory-progress-row td:first-child::before{
  content:"";
  position:absolute;
  inset-block:10px;
  inset-inline-start:0;
  width:4px;
  border-radius:999px;
  background:rgba(148,163,184,0.55);
}

.ops-factory-progress-row.is-ready td:first-child::before{
  background:#16a34a;
}

.ops-factory-progress-row.is-alert td:first-child::before{
  background:#dc2626;
}

.ops-factory-progress-row.is-partial td:first-child::before{
  background:#d97706;
}

.ops-factory-progress-row.is-active td:first-child::before{
  background:#0f766e;
}

.ops-factory-progress-row.is-idle td:first-child::before{
  background:#64748b;
}

.factory-truth-shell{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.factory-truth-toolbar-card,
.factory-truth-card{
  background:linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,251,255,0.95));
}

.factory-truth-toolbar-head{
  margin-bottom:14px;
}

.factory-truth-toolbar-controls{
  display:grid;
  grid-template-columns:minmax(220px, 1.1fr) minmax(180px, 1fr) minmax(220px, 1.1fr) auto;
  gap:12px;
  align-items:end;
}

.factory-truth-toggle{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px;
  border-radius:14px;
  border:1px solid rgba(148,163,184,0.18);
  background:rgba(244,247,251,0.92);
}

.factory-truth-toggle-btn{
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--muted);
  padding:10px 14px;
  font:inherit;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  transition:background 0.18s ease, color 0.18s ease;
}

.factory-truth-toggle-btn.active{
  background:#fff;
  color:var(--text);
  box-shadow:0 8px 18px rgba(15,23,42,0.08);
}

.factory-truth-last-updated{
  min-width:160px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(148,163,184,0.18);
  background:rgba(248,250,252,0.92);
  display:flex;
  flex-direction:column;
  gap:4px;
}

.factory-truth-last-updated-label{
  color:var(--muted);
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
}

.factory-truth-last-updated strong{
  font-size:15px;
  line-height:1.2;
}

.factory-truth-viewing-row{
  margin-top:12px;
}

.factory-truth-viewing-label{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(26,160,214,0.1);
  color:#0f5f85;
  font-size:12px;
  font-weight:700;
}

.factory-truth-top-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.15fr) minmax(0, 0.85fr);
  gap:16px;
}

.factory-truth-hero{
  display:grid;
  grid-template-columns:minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap:18px;
  align-items:stretch;
}

.factory-truth-hero-value{
  font-size:54px;
  line-height:0.95;
  font-weight:800;
  color:var(--text);
}

.factory-truth-hero-label{
  margin-top:10px;
  font-size:16px;
  font-weight:700;
}

.factory-truth-hero-note{
  margin-top:8px;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.factory-truth-limiter-card{
  border-radius:16px;
  border:1px solid rgba(148,163,184,0.16);
  background:rgba(248,250,252,0.9);
  padding:14px;
}

.factory-truth-section-minihead{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  letter-spacing:0.05em;
  text-transform:uppercase;
}

.factory-truth-limiter-list{
  margin-top:12px;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.factory-truth-limiter-row{
  width:100%;
  border:1px solid rgba(148,163,184,0.14);
  border-radius:12px;
  background:#fff;
  padding:12px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font:inherit;
  cursor:pointer;
  text-align:left;
}

.factory-truth-limiter-row strong{
  font-size:20px;
}

.factory-truth-limiter-row.is-bottleneck{
  border-color:rgba(245,158,11,0.28);
  background:rgba(255,251,235,0.9);
}

.factory-truth-limiter-row.is-zero{
  border-color:rgba(197,54,60,0.26);
  background:rgba(254,242,242,0.9);
}

.factory-truth-alert-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.factory-truth-alert-item{
  width:100%;
  border-radius:14px;
  border:1px solid rgba(148,163,184,0.18);
  background:#fff;
  padding:14px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:6px;
  text-align:left;
  font:inherit;
  cursor:pointer;
}

.factory-truth-alert-item.tone-critical{
  border-color:rgba(197,54,60,0.24);
  background:linear-gradient(180deg, rgba(254,242,242,0.96), rgba(255,255,255,0.96));
}

.factory-truth-alert-item.tone-warning{
  border-color:rgba(217,119,6,0.22);
  background:linear-gradient(180deg, rgba(255,251,235,0.96), rgba(255,255,255,0.96));
}

.factory-truth-alert-tone{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:82px;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(15,23,42,0.06);
  color:var(--muted);
  font-size:11px;
  font-weight:800;
  letter-spacing:0.04em;
  text-transform:uppercase;
}

.factory-truth-alert-item small{
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

.factory-truth-empty-state{
  min-height:168px;
  border-radius:16px;
  border:1px dashed rgba(148,163,184,0.22);
  background:rgba(248,250,252,0.78);
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:6px;
  padding:18px;
}

.factory-truth-empty-state strong{
  font-size:16px;
}

.factory-truth-empty-state span{
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.factory-truth-summary-wrap{
  border:1px solid rgba(148,163,184,0.16);
  border-radius:16px;
  overflow:hidden;
}

.factory-truth-table{
  width:100%;
  border-collapse:collapse;
  table-layout:fixed;
}

.factory-truth-table thead th{
  background:rgba(248,250,252,0.96);
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0.04em;
}

.factory-truth-table th,
.factory-truth-table td{
  padding:14px 12px;
  border-bottom:1px solid rgba(226,232,240,0.9);
  text-align:center;
  vertical-align:middle;
}

.factory-truth-table tbody th{
  text-align:left;
  font-size:15px;
  font-weight:700;
  color:var(--text);
  background:#fff;
}

.factory-truth-table tbody tr:last-child th,
.factory-truth-table tbody tr:last-child td{
  border-bottom:0;
}

.factory-truth-table td.is-emphasis{
  background:rgba(248,250,252,0.84);
}

.factory-truth-value-btn{
  width:100%;
  min-height:40px;
  border:0;
  background:transparent;
  color:var(--text);
  font:inherit;
  font-size:24px;
  font-weight:800;
  cursor:pointer;
}

.factory-truth-value-btn.is-zero{
  color:#94a3b8;
}

.factory-truth-order-toolbar{
  display:grid;
  grid-template-columns:minmax(240px, 1fr) minmax(220px, 0.8fr);
  gap:12px;
  align-items:start;
  margin-bottom:14px;
}

.factory-truth-order-status{
  display:flex;
  align-items:stretch;
}

.factory-truth-order-status-card{
  width:100%;
  border-radius:14px;
  border:1px solid rgba(148,163,184,0.18);
  background:rgba(248,250,252,0.9);
  padding:12px 14px;
  display:flex;
  flex-direction:column;
  gap:4px;
}

.factory-truth-order-status-card.is-ok{
  border-color:rgba(34,197,94,0.22);
  background:rgba(240,253,244,0.92);
}

.factory-truth-order-status-card.is-alert{
  border-color:rgba(245,158,11,0.22);
  background:rgba(255,251,235,0.92);
}

.factory-truth-order-status-card span{
  color:var(--muted);
  font-size:13px;
  line-height:1.45;
}

.factory-truth-order-note{
  margin:0 0 12px;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.factory-truth-order-table tbody tr.is-shortage{
  background:rgba(255,251,235,0.5);
}

.factory-truth-cell-danger{
  color:var(--danger);
  font-weight:800;
}

.factory-truth-cell-ok{
  color:var(--status-ok-text);
  font-weight:700;
}

.factory-truth-action-cell{
  display:flex;
  flex-direction:column;
  gap:4px;
  align-items:flex-start;
  text-align:left;
  font-size:12px;
  line-height:1.45;
}

.factory-truth-action-cell span{
  color:var(--muted);
}

.ops-modal-open{
  overflow:hidden;
}

.ops-factory-truth-drawer-card{
  width:min(680px, calc(100vw - 24px));
  margin:16px 16px 16px auto;
}

.factory-truth-drawer-tabs{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px;
  border-radius:14px;
  border:1px solid rgba(148,163,184,0.18);
  background:rgba(244,247,251,0.94);
  margin-bottom:12px;
}

.factory-truth-drawer-tab{
  border:0;
  border-radius:10px;
  background:transparent;
  padding:10px 14px;
  color:var(--muted);
  font:inherit;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
}

.factory-truth-drawer-tab.active{
  background:#fff;
  color:var(--text);
  box-shadow:0 8px 18px rgba(15,23,42,0.08);
}

.factory-truth-drawer-meta{
  margin-bottom:12px;
}

.factory-truth-movement-list,
.factory-truth-balance-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.factory-truth-movement-card{
  border-radius:14px;
  border:1px solid rgba(148,163,184,0.16);
  background:#fff;
  padding:14px;
}

.factory-truth-movement-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:8px;
}

.factory-truth-movement-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(148,163,184,0.12);
  color:var(--muted);
  font-size:11px;
  font-weight:800;
  letter-spacing:0.04em;
  text-transform:uppercase;
}

.factory-truth-movement-chip.tone-ok{
  background:rgba(34,197,94,0.14);
  color:var(--status-ok-text);
}

.factory-truth-movement-chip.tone-warning{
  background:rgba(245,158,11,0.16);
  color:var(--status-warn-text);
}

.factory-truth-movement-time{
  color:var(--muted);
  font-size:12px;
}

.factory-truth-movement-title{
  font-size:15px;
  font-weight:700;
  line-height:1.4;
}

.factory-truth-movement-detail{
  margin-top:4px;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.factory-truth-furnace-kpis{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  margin-bottom:14px;
}

.factory-truth-furnace-kpi{
  border-radius:14px;
  border:1px solid rgba(148,163,184,0.16);
  background:rgba(248,250,252,0.9);
  padding:12px 14px;
  display:flex;
  flex-direction:column;
  gap:4px;
}

.factory-truth-furnace-kpi span{
  color:var(--muted);
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
}

.factory-truth-furnace-kpi strong{
  font-size:26px;
  line-height:1;
}

.factory-truth-drawer-section{
  margin-top:16px;
}

.factory-truth-drawer-section h4{
  margin:0 0 10px;
  font-size:15px;
  font-weight:800;
}

.factory-truth-balance-row{
  border-radius:12px;
  border:1px solid rgba(148,163,184,0.14);
  background:#fff;
  padding:12px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.factory-truth-balance-row span{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

.factory-truth-balance-value{
  font-size:24px;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}

.factory-truth-empty-inline{
  border-radius:12px;
  border:1px dashed rgba(148,163,184,0.22);
  background:rgba(248,250,252,0.78);
  padding:14px;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.materials-balance-groups{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.materials-balance-group{
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.14), transparent 42%),
    linear-gradient(180deg, rgba(26,160,214,0.07), rgba(26,160,214,0.02));
  border:1px solid rgba(26,160,214,0.16);
  border-radius:16px;
  padding:14px 14px 6px;
  box-shadow:0 10px 24px rgba(26,160,214,0.05);
}

.materials-balance-group-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:8px;
}

.materials-balance-group-title{
  margin:0;
  font-family:var(--font-display);
  font-size:18px;
  font-weight:700;
}

.material-name-cell{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
}

.material-name-main{
  font-weight:700;
  color:var(--text);
}

.material-length-chip{
  --mat-chip-h:200;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:4px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:700;
  line-height:1;
  color:hsl(var(--mat-chip-h), 58%, 28%);
  background:hsla(var(--mat-chip-h), 92%, 88%, 0.96);
  border:1px solid hsla(var(--mat-chip-h), 62%, 48%, 0.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.72);
}

.ops-furnace-summary-shell{
  display:flex;
  flex-direction:column;
  gap:16px;
  margin:8px 0 14px;
}

.ops-furnace-summary-section{
  background:
    radial-gradient(circle at top right, rgba(22,163,74,0.08), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,250,252,0.96));
  border:1px solid rgba(148,163,184,0.18);
  border-radius:18px;
  padding:16px;
  box-shadow:0 16px 34px rgba(15,23,42,0.05);
}

.ops-furnace-group-card{
  --furnace-card-accent:#0f766e;
  --furnace-card-border:rgba(13,148,136,0.2);
  --furnace-card-wash:rgba(13,148,136,0.14);
  --furnace-card-chip-bg:rgba(13,148,136,0.11);
  --furnace-card-chip-border:rgba(13,148,136,0.18);
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at top right, var(--furnace-card-wash), transparent 46%),
    linear-gradient(135deg, rgba(255,255,255,0.99), rgba(248,250,252,0.97) 58%, rgba(240,253,250,0.9));
  border:1px solid var(--furnace-card-border);
  border-radius:18px;
  padding:16px 16px 16px 18px;
  box-shadow:
    0 18px 36px rgba(15,23,42,0.06),
    inset 0 1px 0 rgba(255,255,255,0.78);
  isolation:isolate;
}

.ops-furnace-group-card > *{
  position:relative;
  z-index:1;
}

.ops-furnace-group-card::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:7px;
  background:linear-gradient(180deg, rgba(255,255,255,0.3), var(--furnace-card-accent));
  z-index:0;
}

.ops-furnace-group-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.24), transparent 26%),
    radial-gradient(circle at 14% 16%, rgba(255,255,255,0.52), transparent 16%);
  pointer-events:none;
  z-index:0;
}

.ops-furnace-group-card:nth-child(3n+2){
  --furnace-card-accent:#b45309;
  --furnace-card-border:rgba(217,119,6,0.2);
  --furnace-card-wash:rgba(251,191,36,0.14);
  --furnace-card-chip-bg:rgba(251,191,36,0.13);
  --furnace-card-chip-border:rgba(217,119,6,0.2);
  background:
    radial-gradient(circle at top right, var(--furnace-card-wash), transparent 46%),
    linear-gradient(135deg, rgba(255,255,255,0.99), rgba(255,251,235,0.95) 58%, rgba(255,247,237,0.92));
}

.ops-furnace-group-card:nth-child(3n){
  --furnace-card-accent:#2563eb;
  --furnace-card-border:rgba(59,130,246,0.2);
  --furnace-card-wash:rgba(96,165,250,0.14);
  --furnace-card-chip-bg:rgba(96,165,250,0.12);
  --furnace-card-chip-border:rgba(59,130,246,0.2);
  background:
    radial-gradient(circle at top right, var(--furnace-card-wash), transparent 46%),
    linear-gradient(135deg, rgba(255,255,255,0.99), rgba(239,246,255,0.95) 58%, rgba(240,249,255,0.92));
}

.ops-furnace-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}

.ops-furnace-section-title{
  font-family:var(--font-display);
  font-size:18px;
  font-weight:700;
  color:var(--ink);
}

.ops-furnace-section-note{
  max-width:420px;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
  text-align:end;
}

.ops-furnace-issues-grid,
.ops-furnace-mix-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
  gap:12px;
}

.ops-furnace-issue-card,
.ops-furnace-mix-card{
  border-radius:16px;
  padding:14px;
  border:1px solid rgba(148,163,184,0.18);
  background:rgba(255,255,255,0.84);
}

.ops-furnace-issue-card.tone-danger{
  background:linear-gradient(180deg, rgba(254,242,242,0.96), rgba(255,255,255,0.94));
  border-color:rgba(239,68,68,0.18);
}

.ops-furnace-issue-card.tone-warn{
  background:linear-gradient(180deg, rgba(255,251,235,0.96), rgba(255,255,255,0.94));
  border-color:rgba(245,158,11,0.22);
}

.ops-furnace-issue-card.is-empty{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:108px;
}

.ops-furnace-issue-count{
  font-size:28px;
  font-weight:800;
  color:var(--ink);
  line-height:1;
}

.ops-furnace-issue-label,
.ops-furnace-mix-label{
  margin-top:8px;
  font-size:12px;
  font-weight:700;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:0.04em;
}

.ops-furnace-issue-detail{
  margin-top:6px;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

.ops-furnace-mix-value{
  display:block;
  margin-top:6px;
  font-size:26px;
  font-weight:800;
  color:var(--ink);
  line-height:1;
}

.ops-furnace-groups{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.ops-furnace-group-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}

.ops-furnace-group-main{
  min-width:0;
}

.ops-furnace-group-title-row{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.ops-furnace-group-title{
  margin:0;
  font-family:var(--font-display);
  font-size:22px;
  font-weight:700;
  color:var(--ink);
}

.furnace-summary-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:5px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  color:var(--furnace-card-accent, #0f766e);
  background:var(--furnace-card-chip-bg, rgba(13,148,136,0.11));
  border:1px solid var(--furnace-card-chip-border, rgba(13,148,136,0.16));
  white-space:nowrap;
}

.ops-furnace-group-meta{
  margin-top:6px;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

.ops-furnace-group-stats{
  display:grid;
  grid-template-columns:repeat(3, minmax(84px, 1fr));
  gap:10px;
  min-width:min(100%, 320px);
}

.ops-furnace-group-stat{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(241,245,249,0.72);
  border:1px solid rgba(148,163,184,0.16);
}

.ops-furnace-group-stat-label{
  color:var(--muted);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
}

.ops-furnace-group-stat-value{
  color:var(--ink);
  font-size:18px;
  font-weight:800;
}

.ops-furnace-parts-strip{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(86px, 1fr));
  gap:8px;
  margin-top:12px;
}

.ops-furnace-part-pill{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(255,255,255,0.88);
  border:1px solid rgba(148,163,184,0.16);
}

.ops-furnace-part-pill.is-zero{
  opacity:0.58;
}

.ops-furnace-part-pill.is-total{
  background:linear-gradient(180deg, rgba(236,253,245,0.98), rgba(255,255,255,0.94));
  border-color:rgba(22,163,74,0.16);
}

.ops-furnace-part-pill-label{
  color:var(--muted);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
}

.ops-furnace-part-pill-value{
  color:var(--ink);
  font-size:16px;
  font-weight:800;
}

.ops-furnace-balance-list{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:12px;
}

.ops-furnace-balance-card{
  position:relative;
  border-radius:16px;
  padding:14px;
  background:rgba(255,255,255,0.9);
  border:1px solid rgba(148,163,184,0.18);
}

.ops-furnace-balance-card.is-tone-blue{
  background:
    radial-gradient(circle at top right, rgba(147,197,253,0.14), transparent 42%),
    linear-gradient(180deg, rgba(244,249,255,0.97), rgba(255,255,255,0.98));
  border-color:rgba(96,165,250,0.20);
  box-shadow:
    0 8px 22px rgba(96,165,250,0.07),
    inset 5px 0 0 rgba(96,165,250,0.62);
}

.ops-furnace-balance-card.is-tone-green{
  background:
    radial-gradient(circle at top right, rgba(34,197,94,0.14), transparent 42%),
    linear-gradient(180deg, rgba(239,252,244,0.92), rgba(255,255,255,0.97));
  border-color:rgba(34,197,94,0.20);
  box-shadow:
    0 8px 22px rgba(34,197,94,0.08),
    inset 5px 0 0 rgba(22,163,74,0.74);
}

.ops-furnace-balance-card.is-alert{
  border-color:rgba(245,158,11,0.22);
  box-shadow:0 0 0 2px rgba(245,158,11,0.12);
}

.ops-furnace-balance-card.is-alert::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(245,158,11,0.16);
}

.ops-furnace-balance-card.is-alert.is-tone-blue{
  background:
    radial-gradient(circle at top right, rgba(147,197,253,0.14), transparent 42%),
    linear-gradient(180deg, rgba(244,249,255,0.97), rgba(255,255,255,0.98));
  border-color:rgba(245,158,11,0.26);
  box-shadow:
    0 8px 22px rgba(96,165,250,0.07),
    0 0 0 2px rgba(245,158,11,0.10),
    inset 5px 0 0 rgba(96,165,250,0.62);
}

.ops-furnace-balance-card.is-alert.is-tone-green{
  background:
    radial-gradient(circle at top right, rgba(34,197,94,0.14), transparent 42%),
    linear-gradient(180deg, rgba(239,252,244,0.92), rgba(255,255,255,0.97));
  border-color:rgba(245,158,11,0.26);
  box-shadow:
    0 8px 22px rgba(34,197,94,0.08),
    0 0 0 2px rgba(245,158,11,0.10),
    inset 5px 0 0 rgba(22,163,74,0.74);
}

.ops-furnace-balance-card.is-alert:not(.is-tone-blue):not(.is-tone-green){
  background:linear-gradient(180deg, rgba(255,251,235,0.98), rgba(255,255,255,0.94));
}

.ops-furnace-balance-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.ops-furnace-balance-main{
  min-width:0;
}

.ops-furnace-balance-title,
.furnace-summary-wo-title{
  font-size:15px;
  font-weight:800;
  color:var(--ink);
}

.ops-furnace-balance-sub{
  margin-top:4px;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

.ops-furnace-balance-side{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:8px;
}

.furnace-summary-wo-title,
.furnace-summary-wo-action{
  appearance:none;
  border:0;
  background:none;
  padding:0;
  margin:0;
  cursor:pointer;
  text-align:start;
  color:inherit;
  font:inherit;
}

.furnace-summary-wo-action{
  font-size:12px;
  font-weight:700;
  color:var(--accent-2);
  white-space:nowrap;
}

.furnace-summary-wo-title:hover,
.furnace-summary-wo-action:hover{
  text-decoration:underline;
}

.ops-furnace-balance-chip-row,
.ops-furnace-row-chips{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.ops-furnace-balance-chip-row{
  margin-top:10px;
}

.ops-furnace-balance-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:5px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:700;
  line-height:1.2;
  border:1px solid rgba(148,163,184,0.18);
  background:rgba(241,245,249,0.88);
  color:var(--ink);
}

.ops-furnace-balance-chip.tone-muted{
  background:rgba(241,245,249,0.92);
  color:#475569;
}

.ops-furnace-balance-chip.tone-accent{
  background:rgba(224,242,254,0.94);
  border-color:rgba(14,165,233,0.18);
  color:#0369a1;
}

.ops-furnace-balance-chip.tone-info{
  background:rgba(238,242,255,0.94);
  border-color:rgba(99,102,241,0.18);
  color:#4338ca;
}

.ops-furnace-balance-chip.tone-ok{
  background:rgba(236,253,245,0.96);
  border-color:rgba(34,197,94,0.18);
  color:#15803d;
}

.ops-furnace-balance-chip.tone-soft{
  background:rgba(255,247,237,0.96);
  border-color:rgba(249,115,22,0.18);
  color:#c2410c;
}

.ops-furnace-balance-chip.tone-warn{
  background:rgba(255,251,235,0.96);
  border-color:rgba(245,158,11,0.2);
  color:#b45309;
}

.ops-furnace-balance-foot{
  margin-top:10px;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

#opsFurnacesPanel .ops-furnace-no-powder-row{
  align-items:center;
  gap:12px;
}

#opsFurnacesPanel .ops-furnace-no-powder-btn{
  flex:0 0 auto;
}

#opsFurnacesPanel .ops-furnace-no-powder-hint{
  margin:0;
  flex:1 1 260px;
}

.ops-furnace-row-main{
  font-weight:700;
  color:var(--ink);
}

.ops-furnace-row-sub{
  margin-top:4px;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

.ops-furnace-row-status{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:140px;
}

.ops-furnace-row-chips{
  margin-top:6px;
}

.ops-furnace-recent-row.is-alert td{
  background:rgba(255,251,235,0.48);
}

.furnace-balance-groups{
  display:flex;
  flex-direction:column;
  gap:14px;
  margin:8px 0 14px;
}

.furnace-balance-group{
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.15), transparent 40%),
    linear-gradient(180deg, rgba(26,160,214,0.08), rgba(26,160,214,0.02));
  border:1px solid rgba(26,160,214,0.16);
  border-radius:16px;
  padding:12px;
  box-shadow:0 10px 26px rgba(26,160,214,0.06);
}

.furnace-balance-group-title{
  margin:0 0 6px;
  font-family:var(--font-display);
  font-size:16px;
  font-weight:700;
  color:var(--text);
}

@media (max-width: 900px){
  .ops-furnace-section-head,
  .ops-furnace-group-header,
  .ops-furnace-balance-top{
    flex-direction:column;
  }

  .ops-furnace-section-note,
  .ops-furnace-balance-side{
    max-width:none;
    text-align:start;
    align-items:flex-start;
  }

  .ops-furnace-group-stats{
    width:100%;
    min-width:0;
  }
}

.production-workorder-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
  gap:12px;
  margin:8px 0 14px;
}

.ops-workorder-notifications,
.ops-tab-notifications{
  display:none;
  grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));
  gap:12px;
}

.ops-workorder-notifications.has-items,
.ops-tab-notifications.has-items{
  display:grid;
}

.ops-tab-notice-banner{
  grid-column:1 / -1;
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  padding:10px 14px;
  border-radius:12px;
  border:1px solid rgba(34,197,94,0.28);
  background:linear-gradient(180deg, rgba(34,197,94,0.14), rgba(34,197,94,0.05));
  box-shadow:0 4px 16px rgba(22,101,52,0.07);
  position:sticky;
  top:0;
  z-index:4;
  font-size:14px;
  line-height:1.45;
  font-weight:600;
  color:var(--text);
}

.ops-tab-notice-banner-text{
  flex:1;
  min-width:0;
}

.ops-tab-notice-banner-badge{
  flex-shrink:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:72px;
  padding:5px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
  border:1px solid rgba(34,197,94,0.28);
  color:#15803d;
  background:rgba(34,197,94,0.12);
}

.ops-tab-notice-banner.tone-success{
  border-color:rgba(34,197,94,0.32);
  background:linear-gradient(180deg, rgba(34,197,94,0.16), rgba(34,197,94,0.06));
  box-shadow:0 4px 16px rgba(22,101,52,0.08);
}

.ops-tab-notice-banner.tone-info{
  border-color:rgba(34,197,94,0.32);
  background:linear-gradient(180deg, rgba(34,197,94,0.16), rgba(34,197,94,0.06));
  box-shadow:0 4px 16px rgba(22,101,52,0.08);
}

.ops-tab-notice-banner.tone-warning{
  border-color:rgba(249,115,22,0.28);
  background:linear-gradient(180deg, rgba(249,115,22,0.12), rgba(249,115,22,0.04));
  box-shadow:0 4px 16px rgba(180,83,9,0.06);
}

.ops-tab-notice-banner.tone-danger{
  border-color:rgba(239,68,68,0.28);
  background:linear-gradient(180deg, rgba(239,68,68,0.12), rgba(239,68,68,0.04));
  box-shadow:0 4px 16px rgba(185,28,28,0.06);
}

.ops-tab-notice-banner-badge.tone-success{
  color:#15803d;
  background:rgba(34,197,94,0.12);
  border-color:rgba(34,197,94,0.28);
}

.ops-tab-notice-banner-badge.tone-info{
  color:#15803d;
  background:rgba(34,197,94,0.12);
  border-color:rgba(34,197,94,0.28);
}

.ops-tab-notice-banner-badge.tone-warning{
  color:#b45309;
  background:rgba(249,115,22,0.12);
  border-color:rgba(249,115,22,0.22);
}

.ops-tab-notice-banner-badge.tone-danger{
  color:#b91c1c;
  background:rgba(239,68,68,0.10);
  border-color:rgba(239,68,68,0.22);
}

.ops-workorder-notice,
.ops-tab-notice{
  background:
    radial-gradient(circle at top right, rgba(34,197,94,0.14), transparent 42%),
    linear-gradient(180deg, rgba(240,253,244,0.98), rgba(236,252,240,0.92));
  border:1px solid rgba(34,197,94,0.22);
  border-radius:16px;
  padding:14px;
  box-shadow:0 10px 24px rgba(22,101,52,0.07);
}

.ops-workorder-notice-title,
.ops-tab-notice-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  font-family:var(--font-display);
  font-size:18px;
  font-weight:700;
  color:var(--text);
}

.ops-tab-notice-head{
  display:grid;
  gap:10px;
}

.ops-workorder-notice-badge,
.ops-tab-notice-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:84px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(34,197,94,0.12);
  border:1px solid rgba(34,197,94,0.24);
  color:#15803d;
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
}

.ops-tab-notice-event{
  display:flex;
  align-items:flex-start;
  gap:10px;
}

.ops-tab-notice-event-text{
  min-width:0;
  font-family:var(--font-display);
  font-size:17px;
  line-height:1.24;
  font-weight:700;
  color:var(--text);
  overflow-wrap:anywhere;
}

.ops-workorder-notice-meta{
  margin-top:10px;
  display:grid;
  grid-template-columns:86px minmax(0, 1fr);
  gap:8px 10px;
}

.ops-workorder-notice-label{
  font-size:12px;
  font-weight:700;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:0.04em;
}

.ops-workorder-notice-value{
  min-width:0;
  font-size:14px;
  line-height:1.4;
  color:var(--text);
}

.ops-tab-notice-summary,
.ops-tab-notice-impact{
  margin-top:10px;
  font-size:18px;
  line-height:1.28;
  color:var(--text);
  font-weight:700;
  letter-spacing:-0.01em;
  overflow-wrap:anywhere;
}

.ops-tab-notice-detail,
.ops-tab-notice-context-line{
  margin-top:6px;
  font-size:13px;
  line-height:1.5;
  color:var(--muted);
  font-weight:600;
}

.ops-tab-notice-missing-target{
  margin-top:8px;
  font-size:12px;
  line-height:1.4;
  color:#9a3412;
  font-weight:700;
}

.ops-tab-notice-toolbar{
  grid-column:1 / -1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(148,163,184,0.22);
  background:rgba(255,255,255,0.7);
}

.ops-tab-notice-toolbar-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.ops-tab-notice-toolbar-actions .btn.is-selected{
  border-color:rgba(15,118,110,0.28);
  background:rgba(204,251,241,0.78);
  color:#0f766e;
}

.ops-notification-preferences-panel{
  grid-column:1 / -1;
  display:grid;
  gap:12px;
  padding:14px;
  border-radius:16px;
  border:1px solid rgba(15,118,110,0.18);
  background:linear-gradient(180deg, rgba(240,253,250,0.9), rgba(236,253,245,0.78));
  box-shadow:0 12px 28px rgba(15,118,110,0.08);
}

.ops-notification-preferences-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.ops-notification-preferences-title{
  font-family:var(--font-display);
  font-size:17px;
  font-weight:700;
  color:var(--text);
}

.ops-notification-preferences-copytext,
.ops-notification-preferences-detail{
  font-size:13px;
  line-height:1.5;
  color:var(--muted);
}

.ops-notification-preferences-list{
  display:grid;
  gap:10px;
}

.ops-notification-timing-panel{
  display:grid;
  gap:10px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(14,116,144,0.18);
  background:rgba(255,255,255,0.72);
}

.ops-notification-timing-title{
  font-family:var(--font-display);
  font-size:15px;
  font-weight:700;
  color:var(--text);
}

.ops-notification-timing-title.is-subsection{
  font-size:14px;
}

.ops-notification-timing-toggle{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:13px;
  font-weight:600;
  color:var(--text);
}

.ops-notification-timing-grid{
  display:grid;
  gap:10px;
  grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
}

.ops-notification-timing-field{
  display:grid;
  gap:6px;
  font-size:12px;
  font-weight:700;
  color:var(--muted);
}

.ops-notification-timing-field.is-wide{
  grid-column:span 2;
}

.ops-notification-timing-field input{
  width:100%;
}

.ops-notification-timing-field select,
.ops-notification-preferences-inline-field select{
  width:100%;
}

.ops-notification-timing-meta{
  display:grid;
  gap:4px;
  font-size:12px;
  line-height:1.45;
  color:#0f766e;
  font-weight:600;
}

.ops-notification-timing-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.ops-notification-work-schedule-panel{
  display:grid;
  gap:10px;
  padding:12px;
  border-radius:14px;
  border:1px solid rgba(59,130,246,0.16);
  background:rgba(239,246,255,0.58);
}

.ops-notification-work-schedule-summary{
  font-size:12px;
  line-height:1.45;
  font-weight:700;
  color:#1d4ed8;
}

.ops-notification-workday-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.ops-notification-workday-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 11px;
  border-radius:999px;
  border:1px solid rgba(59,130,246,0.16);
  background:rgba(255,255,255,0.86);
  color:#1e3a8a;
  font-size:12px;
  font-weight:700;
}

.ops-notification-workday-chip input{
  margin:0;
}

.ops-notification-preferences-item{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(148,163,184,0.2);
  background:rgba(255,255,255,0.82);
}

.ops-notification-preferences-item.is-muted{
  border-style:dashed;
  background:rgba(255,255,255,0.72);
}

.ops-notification-preferences-item.is-mandatory{
  border-color:rgba(249,115,22,0.24);
  background:rgba(255,247,237,0.84);
}

.ops-notification-preferences-copy{
  min-width:0;
  display:grid;
  gap:6px;
}

.ops-notification-preferences-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
}

.ops-notification-preferences-badges{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}

.ops-notification-preferences-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:72px;
  padding:5px 9px;
  border-radius:999px;
  border:1px solid rgba(148,163,184,0.22);
  background:rgba(255,255,255,0.84);
  color:var(--muted);
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}

.ops-notification-preferences-badge.severity-high{
  color:#b45309;
  border-color:rgba(249,115,22,0.24);
  background:rgba(255,237,213,0.85);
}

.ops-notification-preferences-badge.severity-normal{
  color:#0f766e;
  border-color:rgba(20,184,166,0.22);
  background:rgba(204,251,241,0.88);
}

.ops-notification-preferences-badge.severity-low{
  color:#475569;
}

.ops-notification-preferences-badge.is-required{
  color:#9a3412;
  border-color:rgba(251,146,60,0.26);
  background:rgba(255,237,213,0.9);
}

.ops-notification-preferences-badge.is-muted{
  color:#475569;
  border-color:rgba(148,163,184,0.24);
  background:rgba(241,245,249,0.9);
}

.ops-notification-preferences-actions{
  display:flex;
  align-items:center;
}

.ops-notification-preferences-inline-field{
  display:grid;
  gap:6px;
  margin-top:6px;
  font-size:12px;
  font-weight:700;
  color:var(--muted);
}

.ops-notification-preferences-empty{
  padding:12px 14px;
  border-radius:12px;
  border:1px dashed rgba(148,163,184,0.28);
  background:rgba(255,255,255,0.72);
  color:var(--muted);
  font-size:13px;
  font-weight:600;
}

.ops-tab-notice-toolbar-count{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  font-weight:700;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:0.05em;
}

.ops-tab-notice-toolbar-count-copy{
  display:grid;
  gap:2px;
}

.ops-tab-notice-toolbar-subcount{
  font-size:11px;
  font-weight:600;
  letter-spacing:0;
  text-transform:none;
  color:#64748b;
}

.ops-tab-notice-toolbar-count-value{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:28px;
  padding:4px 8px;
  border-radius:999px;
  color:#0f766e;
  background:rgba(20,184,166,0.12);
  border:1px solid rgba(20,184,166,0.2);
}

.ops-tab-notice-title-main{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}

.ops-tab-notice-title-badges{
  display:inline-flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}

.ops-tab-notice-title-text{
  min-width:0;
}

.ops-tab-notice-state-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  flex-shrink:0;
  background:rgba(148,163,184,0.5);
  border:1px solid rgba(148,163,184,0.45);
}

.ops-tab-notice-state-dot.is-unread{
  background:#0891b2;
  border-color:rgba(8,145,178,0.5);
  box-shadow:0 0 0 4px rgba(8,145,178,0.10);
}

.ops-tab-notice.is-openable{
  cursor:pointer;
}

.ops-tab-notice.is-unread{
  border-color:rgba(8,145,178,0.28);
  box-shadow:0 12px 28px rgba(14,116,144,0.10);
}

.ops-tab-notice.is-read{
  opacity:0.84;
}

.ops-tab-notice.is-archived{
  border-style:dashed;
  opacity:0.92;
}

.ops-tab-notice.is-busy{
  pointer-events:none;
}

.ops-tab-notice-empty{
  grid-column:1 / -1;
  padding:16px 18px;
  border-radius:14px;
  border:1px dashed rgba(148,163,184,0.32);
  background:rgba(255,255,255,0.55);
  color:var(--muted);
  font-size:13px;
  font-weight:600;
}

.ops-tab-notice-context{
  grid-column:1 / -1;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(15,118,110,0.16);
  background:linear-gradient(180deg, rgba(240,253,250,0.82), rgba(236,253,245,0.74));
  color:#0f766e;
  font-size:13px;
  line-height:1.5;
  font-weight:600;
}

.ops-notification-preferences-panel{
  grid-column:1 / -1;
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:14px;
  border-radius:16px;
  border:1px solid rgba(26,160,214,0.16);
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.14), transparent 42%),
    linear-gradient(180deg, rgba(26,160,214,0.06), rgba(26,160,214,0.02));
  box-shadow:0 8px 24px rgba(15,23,42,0.05);
}

.ops-notification-preferences-panel-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.ops-notification-preferences-title{
  font-family:var(--font-display);
  font-size:16px;
  font-weight:700;
  color:var(--text);
}

.ops-notification-preferences-copy{
  margin-top:4px;
  max-width:720px;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.ops-notification-preferences-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.ops-notification-preferences-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.ops-notification-preferences-section-label{
  margin-top:2px;
  color:var(--muted);
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.06em;
}

.ops-notification-preferences-item{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(148,163,184,0.18);
  background:rgba(255,255,255,0.86);
}

.ops-notification-preferences-item.is-mandatory{
  background:rgba(248,250,252,0.92);
}

.ops-notification-preferences-item-copy{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}

.ops-notification-preferences-item-title-row{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.ops-notification-preferences-item-title{
  font-weight:700;
  color:var(--text);
}

.ops-notification-preferences-item-desc{
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.ops-notification-preferences-chip,
.ops-notification-preferences-lock{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:4px 10px;
  border-radius:999px;
  border:1px solid rgba(148,163,184,0.22);
  background:rgba(241,245,249,0.92);
  color:var(--muted);
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}

.ops-notification-preferences-checkbox{
  flex:0 0 auto;
  width:18px;
  height:18px;
  margin-top:2px;
}

.ops-notification-read-section{
  grid-column:1 / -1;
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:16px;
  border:1px solid rgba(148,163,184,0.2);
  background:rgba(248,250,252,0.82);
}

.ops-notification-read-section-header{
  display:grid;
  gap:4px;
}

.ops-notification-read-section-title{
  font-size:13px;
  font-weight:700;
  color:var(--text);
}

.ops-notification-read-section-copy{
  font-size:12px;
  line-height:1.45;
  color:var(--muted);
  font-weight:600;
}

.ops-notification-digest-list{
  grid-column:1 / -1;
  display:grid;
  gap:10px;
  margin-top:10px;
}

.ops-notification-digest-card{
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(15,118,110,0.16);
  background:rgba(255,255,255,0.78);
}

.ops-notification-digest-card.is-active-release{
  border-color:rgba(14,116,144,0.22);
  background:rgba(240,249,255,0.92);
}

.ops-notification-digest-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}

.ops-notification-digest-title{
  font-size:13px;
  font-weight:700;
  color:var(--text);
}

.ops-notification-digest-detail{
  margin-top:4px;
  font-size:12px;
  color:var(--muted);
  font-weight:600;
}

.ops-notification-digest-preview-list{
  display:grid;
  gap:8px;
  margin-top:10px;
}

.ops-notification-digest-preview-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:9px 10px;
  border-radius:12px;
  background:rgba(255,255,255,0.82);
  border:1px solid rgba(14,116,144,0.12);
}

.ops-notification-digest-preview-title{
  font-size:12px;
  font-weight:700;
  color:var(--text);
}

.ops-notification-digest-preview-meta{
  font-size:11px;
  color:var(--muted);
  font-weight:600;
}

.ops-notification-digest-actions{
  margin-top:12px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.ops-notification-digest-expanded{
  display:grid;
  gap:12px;
  margin-top:12px;
}

.ops-notification-digest-missing{
  margin-top:10px;
  padding:9px 10px;
  border-radius:12px;
  background:rgba(251,146,60,0.12);
  border:1px solid rgba(251,146,60,0.2);
  color:#9a3412;
  font-size:12px;
  line-height:1.45;
  font-weight:600;
}

.ops-tab-notice-footer{
  margin-top:12px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.ops-tab-notice-footer span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 10px;
  border-radius:999px;
  background:rgba(255,255,255,0.7);
  border:1px solid rgba(148,163,184,0.22);
  color:var(--muted);
  font-size:12px;
  font-weight:600;
}

.ops-tab-notice-actions{
  margin-top:12px;
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(0, 1fr);
  gap:6px;
}

.ops-tab-notice-actions .btn{
  width:100%;
  min-width:0;
  min-height:36px;
  padding:7px 10px;
  border-radius:12px;
  font-size:12px;
  line-height:1.15;
}

.ops-tab-notice-badge.is-archived-state{
  background:rgba(148,163,184,0.14);
  color:var(--muted);
  border-color:rgba(148,163,184,0.24);
}

.ops-tab-notice-badge.is-hidden-state{
  background:rgba(14,165,233,0.12);
  color:#0f766e;
  border-color:rgba(14,165,233,0.24);
}

.ops-tab-notice-badge.is-snoozed-state{
  background:rgba(168,85,247,0.10);
  color:#7c3aed;
  border-color:rgba(168,85,247,0.22);
}

.ops-tab-notice-badge.is-held-state{
  background:rgba(59,130,246,0.12);
  color:#1d4ed8;
  border-color:rgba(59,130,246,0.24);
}

.ops-tab-notice-badge.is-digest-state{
  background:rgba(14,116,144,0.12);
  color:#0f766e;
  border-color:rgba(14,116,144,0.22);
}

.ops-tab-notice-badge.is-missing-target-state{
  background:rgba(251,146,60,0.14);
  color:#9a3412;
  border-color:rgba(251,146,60,0.28);
}

.ops-tab-notice-hidden-reason{
  margin-top:8px;
  padding:9px 10px;
  border-radius:12px;
  background:rgba(14,165,233,0.08);
  border:1px solid rgba(14,165,233,0.16);
  color:#0f766e;
  font-size:12px;
  line-height:1.45;
  font-weight:600;
}

.ops-tab-notice-snoozed-reason{
  margin-top:8px;
  padding:9px 10px;
  border-radius:12px;
  background:rgba(168,85,247,0.08);
  border:1px solid rgba(168,85,247,0.18);
  color:#7c3aed;
  font-size:12px;
  line-height:1.45;
  font-weight:600;
}

.ops-tab-notice-snooze-editor{
  margin-top:10px;
  padding:12px;
  border-radius:14px;
  background:rgba(168,85,247,0.06);
  border:1px solid rgba(168,85,247,0.14);
  display:grid;
  gap:10px;
}

.ops-tab-notice-snooze-editor-label{
  display:grid;
  gap:6px;
  font-size:12px;
  font-weight:700;
  color:#5b21b6;
}

.ops-tab-notice-snooze-editor-help{
  font-size:12px;
  line-height:1.45;
  color:#6d28d9;
}

.ops-tab-notice-snooze-editor-help.is-subtle{
  color:#7c3aed;
  opacity:0.88;
}

.ops-tab-notice-snooze-preview{
  font-size:12px;
  line-height:1.45;
  font-weight:700;
  color:#4c1d95;
}

.ops-tab-notice-snooze-editor-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.ops-tab-notice-held-reason{
  margin-top:8px;
  padding:9px 10px;
  border-radius:12px;
  background:rgba(59,130,246,0.08);
  border:1px solid rgba(59,130,246,0.16);
  color:#1d4ed8;
  font-size:12px;
  line-height:1.45;
  font-weight:600;
}

.ops-notification-highlight{
  position:relative;
  box-shadow:0 0 0 3px rgba(14,165,233,0.26), 0 16px 34px rgba(14,116,144,0.18);
  transition:box-shadow 160ms ease;
}

.ops-tab-notice.tone-success{
  background:
    radial-gradient(circle at top right, rgba(34,197,94,0.18), transparent 42%),
    linear-gradient(180deg, rgba(240,253,244,0.99), rgba(220,252,231,0.94));
  border-color:rgba(34,197,94,0.28);
  box-shadow:0 10px 24px rgba(22,101,52,0.08);
}

.ops-tab-notice.tone-info{
  background:
    radial-gradient(circle at top right, rgba(34,197,94,0.18), transparent 42%),
    linear-gradient(180deg, rgba(240,253,244,0.99), rgba(220,252,231,0.94));
  border-color:rgba(34,197,94,0.28);
  box-shadow:0 10px 24px rgba(22,101,52,0.08);
}

.ops-tab-notice.tone-warning{
  background:
    radial-gradient(circle at top right, rgba(249,115,22,0.16), transparent 42%),
    linear-gradient(180deg, rgba(255,247,237,0.98), rgba(255,237,213,0.92));
  border-color:rgba(249,115,22,0.26);
  box-shadow:0 10px 24px rgba(180,83,9,0.07);
}

.ops-tab-notice.tone-danger{
  background:
    radial-gradient(circle at top right, rgba(239,68,68,0.14), transparent 42%),
    linear-gradient(180deg, rgba(254,242,242,0.98), rgba(254,226,226,0.92));
  border-color:rgba(239,68,68,0.24);
  box-shadow:0 10px 24px rgba(185,28,28,0.06);
}

.ops-tab-notice-badge.tone-success{
  color:#15803d;
  background:rgba(34,197,94,0.10);
  border-color:rgba(34,197,94,0.24);
}

.ops-tab-notice-badge.tone-info{
  color:#15803d;
  background:rgba(34,197,94,0.10);
  border-color:rgba(34,197,94,0.24);
}

.ops-tab-notice-badge.tone-warning{
  color:#b45309;
  background:rgba(249,115,22,0.12);
  border-color:rgba(249,115,22,0.22);
}

.ops-tab-notice-badge.tone-danger{
  color:#b91c1c;
  background:rgba(239,68,68,0.10);
  border-color:rgba(239,68,68,0.22);
}

.production-workorder-card{
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.15), transparent 42%),
    linear-gradient(180deg, rgba(26,160,214,0.08), rgba(26,160,214,0.02));
  border:1px solid rgba(26,160,214,0.16);
  border-radius:16px;
  padding:14px;
  box-shadow:0 10px 26px rgba(26,160,214,0.06);
  display:flex;
  flex-direction:column;
  height:100%;
}

.production-workorder-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  min-height:0;
}

.production-workorder-head-main{
  flex:1 1 auto;
  min-width:0;
}

.production-workorder-owner{
  margin-bottom:4px;
  font-size:13px;
  font-weight:800;
  line-height:1.35;
  color:var(--ink);
}

.production-workorder-title{
  font-family:var(--font-display);
  font-size:18px;
  font-weight:700;
  line-height:1.2;
}

.production-workorder-subtitle{
  margin-top:4px;
  font-size:13px;
  line-height:1.35;
  color:var(--muted);
  min-height:0;
}

.production-workorder-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:92px;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  background:rgba(26,160,214,0.12);
  border:1px solid rgba(26,160,214,0.16);
  color:var(--accent);
  white-space:nowrap;
}

.production-workorder-status.is-idle{
  color:var(--muted);
  background:rgba(120,127,138,0.12);
  border-color:rgba(120,127,138,0.16);
}

.production-workorder-status.is-progress{
  color:#b45309;
  background:rgba(217,119,6,0.12);
  border-color:rgba(217,119,6,0.18);
}

.production-workorder-status.is-ready{
  color:#0f766e;
  background:rgba(16,185,129,0.12);
  border-color:rgba(16,185,129,0.18);
}

.production-workorder-metrics{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px;
  margin-top:12px;
}

.production-workorder-metric{
  background:rgba(255,255,255,0.45);
  border:1px solid rgba(255,255,255,0.5);
  border-radius:12px;
  padding:10px;
  min-height:0;
  display:flex;
  flex-direction:column;
}

.production-workorder-metric-label{
  font-size:11px;
  font-weight:700;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:0.04em;
}

.production-workorder-metric-value{
  margin-top:4px;
  font-size:18px;
  font-weight:700;
  color:var(--text);
}

.production-workorder-progress{
  margin-top:12px;
}

.production-workorder-bar{
  margin-top:0;
}

.production-workorder-bar-track{
  width:100%;
  height:8px;
  border-radius:999px;
  background:rgba(26,160,214,0.10);
  overflow:hidden;
}

.production-workorder-bar-fill{
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg, #1aa0d6, #49a84b);
}

.production-workorder-card.is-tone-blue{
  background:
    radial-gradient(circle at top right, rgba(147,197,253,0.20), transparent 42%),
    linear-gradient(180deg, rgba(243,249,255,0.96), rgba(255,255,255,0.98));
  border-color:rgba(96,165,250,0.22);
  box-shadow:
    0 10px 26px rgba(96,165,250,0.08),
    inset 5px 0 0 rgba(96,165,250,0.70);
}

.production-workorder-card.is-tone-green{
  background:
    radial-gradient(circle at top right, rgba(34,197,94,0.18), transparent 42%),
    linear-gradient(180deg, rgba(220,252,231,0.76), rgba(255,255,255,0.96));
  border-color:rgba(34,197,94,0.24);
  box-shadow:
    0 10px 26px rgba(34,197,94,0.10),
    inset 5px 0 0 rgba(22,163,74,0.84);
}

.production-workorder-bar-caption,
.production-workorder-foot,
.production-workorder-parts{
  margin-top:8px;
  font-size:13px;
  color:var(--muted);
}

.production-workorder-meta{
  margin-top:auto;
  padding-top:8px;
  display:flex;
  flex-direction:column;
  gap:6px;
}

.production-workorder-meta-row{
  display:grid;
  grid-template-columns:72px minmax(0, 1fr);
  gap:10px;
  align-items:start;
}

.production-workorder-meta-label{
  font-size:12px;
  font-weight:700;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:0.04em;
}

.production-workorder-meta-value{
  min-width:0;
  font-size:13px;
  line-height:1.35;
  color:var(--text);
}

.production-workorder-grid,
.admin-ops-workorder-grid{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:10px;
  overflow:visible;
  padding:2px 0 8px;
  margin:8px 0 14px;
}

.production-workorder-grid > .hint,
.admin-ops-workorder-grid > .hint{
  width:100%;
}

.production-workorder-card{
  width:100%;
  min-width:0;
  max-width:none;
  display:grid;
  grid-template-columns:repeat(12, minmax(0, 1fr));
  gap:10px;
  align-items:start;
  height:auto;
  padding:12px;
}

.production-workorder-head{
  grid-column:1 / span 4;
  min-height:0;
}

.production-workorder-metrics{
  grid-column:5 / span 5;
  margin-top:0;
  gap:6px;
}

.production-workorder-progress{
  grid-column:10 / -1;
  margin-top:0;
  min-height:100%;
}

.production-workorder-bar{
  height:100%;
  min-height:68px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,0.46);
  border:1px solid rgba(255,255,255,0.58);
}

.production-workorder-meta{
  grid-column:1 / -1;
  margin-top:0;
  padding-top:0;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:8px 10px;
}

.production-workorder-meta-row{
  padding:8px 10px;
  border-radius:10px;
  background:rgba(255,255,255,0.38);
  border:1px solid rgba(255,255,255,0.46);
}

.admin-ops-workorder-card{
  width:100%;
  gap:8px;
  padding:10px;
}

.admin-ops-workorder-card .production-workorder-title{
  font-size:16px;
}

.admin-ops-workorder-card .production-workorder-subtitle{
  margin-top:2px;
  font-size:12px;
  line-height:1.3;
}

.admin-ops-workorder-card .production-workorder-metrics{
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:6px;
  margin-top:0;
}

.admin-ops-workorder-card .production-workorder-metric{
  padding:7px 8px;
}

.admin-ops-workorder-card .production-workorder-metric-label{
  font-size:10px;
}

.admin-ops-workorder-card .production-workorder-metric-value{
  margin-top:2px;
  font-size:15px;
}

.admin-ops-workorder-card .production-workorder-progress{
  margin-top:0;
}

.admin-ops-workorder-card .production-workorder-bar{
  min-height:48px;
  padding:8px 10px;
}

.admin-ops-workorder-card .production-workorder-bar-caption{
  margin-top:5px;
  font-size:12px;
}

.admin-ops-workorder-summary-preview{
  grid-column:1 / span 8;
  display:flex;
  flex-wrap:wrap;
  gap:6px 10px;
  align-items:center;
  padding:7px 10px;
  border-radius:10px;
  background:rgba(255,255,255,0.40);
  border:1px solid rgba(255,255,255,0.48);
}

.admin-ops-workorder-summary-preview-label{
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--muted);
}

.admin-ops-workorder-summary-preview-value{
  flex:1 1 14rem;
  min-width:0;
  font-size:12px;
  line-height:1.35;
  color:var(--text);
}

.admin-ops-workorder-collapse{
  grid-column:1 / -1;
  padding:8px 10px;
  border-radius:12px;
  background:rgba(255,255,255,0.32);
  border:1px solid rgba(255,255,255,0.44);
}

.admin-ops-workorder-collapse > summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  cursor:pointer;
  list-style:none;
  font-size:12px;
  font-weight:700;
  color:var(--accent-2);
}

.admin-ops-workorder-collapse > summary::-webkit-details-marker{
  display:none;
}

.admin-ops-workorder-collapse-title{
  text-transform:uppercase;
  letter-spacing:0.04em;
}

.admin-ops-workorder-collapse-hint{
  font-size:11px;
  font-weight:600;
  color:var(--muted);
}

.admin-ops-workorder-collapse[open] .admin-ops-workorder-collapse-hint{
  color:var(--accent);
}

.admin-ops-workorder-collapse-body{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px 10px;
  margin-top:8px;
}

.admin-ops-workorder-summary{
  min-width:0;
}

.admin-ops-workorder-flow{
  min-width:0;
}

.admin-ops-workorder-fields,
.admin-ops-workorder-actions{
  grid-column:1 / -1;
}

.admin-ops-workorder-summary,
.admin-ops-workorder-flow,
.admin-ops-workorder-fields{
  padding:8px 10px;
  border-radius:12px;
  background:rgba(255,255,255,0.42);
  border:1px solid rgba(255,255,255,0.48);
}

.admin-ops-workorder-actions{
  margin-top:0;
}

@media (max-width:900px){
  .production-workorder-card{
    grid-template-columns:repeat(8, minmax(0, 1fr));
  }

  .production-workorder-head{
    grid-column:1 / span 4;
  }

  .production-workorder-metrics{
    grid-column:5 / -1;
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .production-workorder-progress{
    grid-column:1 / -1;
  }

  .admin-ops-workorder-summary-preview,
  .admin-ops-workorder-collapse{
    grid-column:1 / -1;
  }

  .admin-ops-workorder-card{
    width:100%;
  }

  .admin-ops-workorder-collapse-body{
    grid-template-columns:1fr;
  }
}

@media (max-width:640px){
  .production-workorder-card,
  .admin-ops-workorder-card{
    grid-template-columns:1fr;
  }

  .production-workorder-head,
  .production-workorder-metrics,
  .production-workorder-progress,
  .production-workorder-meta,
  .admin-ops-workorder-summary-preview,
  .admin-ops-workorder-collapse,
  .admin-ops-workorder-summary,
  .admin-ops-workorder-flow,
  .admin-ops-workorder-fields,
  .admin-ops-workorder-actions{
    grid-column:1;
  }

  .production-workorder-metrics,
  .production-workorder-meta{
    grid-template-columns:1fr;
  }
}

.admin-ops-workorder-status.is-open{
  color:#0f766e;
  background:rgba(16,185,129,0.12);
  border-color:rgba(16,185,129,0.18);
}

.admin-ops-workorder-status.is-hold{
  color:#b45309;
  background:rgba(217,119,6,0.12);
  border-color:rgba(217,119,6,0.18);
}

.admin-ops-workorder-status.is-closed{
  color:var(--muted);
  background:rgba(120,127,138,0.12);
  border-color:rgba(120,127,138,0.16);
}

.admin-ops-workorder-summary,
.admin-ops-workorder-flow,
.admin-ops-workorder-fields{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.admin-ops-workorder-flow-title{
  font-size:11px;
  font-weight:700;
  color:var(--accent-2);
  text-transform:uppercase;
  letter-spacing:0.04em;
}

.admin-ops-workorder-history-badge{
  display:inline-flex;
  align-items:center;
  gap:4px;
  margin-top:6px;
  padding:3px 8px;
  border-radius:999px;
  background:rgba(26,160,214,0.12);
  border:1px solid rgba(26,160,214,0.18);
  color:var(--accent);
  font-size:11px;
  font-weight:700;
}

.admin-ops-workorder-fields .row{
  margin:0;
}

.admin-ops-workorder-actions{
  margin-top:auto;
  gap:8px;
  flex-wrap:wrap;
}

.ops-part-spec-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));
  gap:12px;
}

.ops-part-spec-card{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:12px;
  border-radius:16px;
  border:1px solid rgba(148,163,184,0.18);
  background:rgba(255,255,255,0.64);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.55);
}

.ops-part-spec-card.is-disabled{
  opacity:0.55;
}

.ops-part-spec-card.is-disabled input,
.ops-part-spec-card.is-disabled select{
  background:#f1f5f9;
  cursor:not-allowed;
}

.ops-part-spec-title{
  font-size:15px;
  font-weight:800;
  color:var(--text);
}

.ops-part-spec-fields{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}

.ops-part-spec-fields .pricing-field{
  margin:0;
}

.ops-part-spec-toggle{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--muted);
  font-size:13px;
  font-weight:600;
}

.ops-part-spec-toggle input{
  accent-color:var(--brand);
}

.ops-stock-log-helper-note{
  margin:8px 0 0;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(26,160,214,0.16);
  background:rgba(248,252,255,0.9);
  color:var(--text);
  font-size:13px;
  line-height:1.55;
}

.ops-stock-log-helper-note strong{
  font-weight:800;
}

.ops-stock-log-helper-note.is-return{
  border-color:rgba(180,83,9,0.18);
  background:rgba(255,251,235,0.92);
}

.pricing-collapsible{
  margin-top:8px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--card);
  overflow:hidden;
}

.pricing-collapsible > summary{
  list-style:none;
  cursor:pointer;
  padding:10px 12px;
  font-size:13px;
  font-weight:700;
  color:var(--text);
  background:rgba(26,160,214,0.08);
  border-bottom:1px solid transparent;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.pricing-collapsible > summary::-webkit-details-marker{
  display:none;
}

.pricing-collapsible > summary::after{
  content:"▾";
  font-size:12px;
  color:var(--muted);
  transition:transform 0.16s ease;
}

.pricing-collapsible:not([open]) > summary::after{
  transform:rotate(-90deg);
}

.pricing-collapsible[open] > summary{
  border-bottom-color:var(--line);
}

.pricing-collapsible-body{
  padding:8px 10px 10px;
}

.pricing-component-list{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.pricing-component-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:flex-end;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:12px;
  padding:10px;
}

.pricing-component-row .pc-cell{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:120px;
  flex:1 1 120px;
}

.pricing-component-row .pc-cell.pc-check{
  min-width:34px;
  max-width:34px;
  flex:0 0 34px;
  align-items:center;
  justify-content:center;
  padding-bottom:8px;
}

.pricing-component-row .pc-cell.pc-label{
  min-width:170px;
  flex:1.4 1 170px;
  justify-content:center;
}

.pricing-component-row .pc-caption{
  font-size:11px;
  color:var(--muted);
  line-height:1.2;
}

.pricing-component-row .pc-value{
  font-size:13px;
  font-weight:600;
}

.pricing-component-row input,
.pricing-component-row select{
  width:100%;
  min-width:0;
  font-size:12px;
  padding:7px 8px;
}

td,th{
  border-bottom:1px solid var(--line);
  padding:8px 8px;
  font-size:12.5px;
  color:var(--text);
  text-align:left;
  vertical-align:middle;
}

th{
  color:#4a4034;
  font-weight:700;
  letter-spacing:0.01em;
  font-size:12px;
  background:rgba(26,160,214,0.1);
}

tbody tr:hover{
  background:rgba(26,160,214,0.06);
}

tbody tr:nth-child(even){
  background:rgba(26,160,214,0.03);
}

table .btn{
  padding:6px 10px;
  font-size:12px;
}

.user-table .actions-cell{
  text-align:right;
  white-space:nowrap;
}

.user-table .actions-cell .btn{
  margin-left:6px;
}

.user-table td:nth-child(6),
.user-table td:nth-child(7){
  font-family:var(--font-mono);
  font-size:11.5px;
}

.status-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:3px 8px;
  border-radius:999px;
  font-size:11px;
  font-weight:600;
  letter-spacing:0.02em;
  border:1px solid transparent;
  white-space:nowrap;
}

.status-info,
.status-new,
.status-created,
.status-workshop_ok{
  background:var(--status-info-bg);
  color:var(--status-info-text);
  border-color:rgba(14,116,144,0.28);
}

.status-warn,
.status-open,
.status-in_progress,
.status-acknowledged,
.status-grinding,
.status-ready_paint,
.status-outsource_paint,
.status-in_paint,
.status-in_storage,
.status-ready_ship,
.status-pending{
  background:var(--status-warn-bg);
  color:var(--status-warn-text);
  border-color:rgba(241,166,26,0.35);
}

.status-ok,
.status-finished,
.status-fulfilled,
.status-closed,
.status-done,
.status-painted,
.status-shipped,
.status-approved{
  background:var(--status-ok-bg);
  color:var(--status-ok-text);
  border-color:rgba(22,163,74,0.35);
}

.status-hold,
.status-received{
  background:var(--status-hold-bg);
  color:var(--status-hold-text);
  border-color:rgba(100,116,139,0.3);
}

.status-danger,
.status-rejected,
.status-cancelled,
.status-deleted{
  background:var(--status-danger-bg);
  color:var(--status-danger-text);
  border-color:rgba(197,54,60,0.35);
}

/* Keep orange focused on top notification banners; use cooler tones inside Logs & Requests tables. */
#opsFollowupPanel .status-warn,
#opsFollowupPanel .status-open,
#opsFollowupPanel .status-in_progress,
#opsFollowupPanel .status-acknowledged,
#opsFollowupPanel .status-pending{
  background:rgba(14,165,233,0.12);
  color:#0369a1;
  border-color:rgba(14,165,233,0.30);
}

.cell-blank{
  display:block;
  min-height:1em;
}

.op-log-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.ops-modal{
  position:fixed;
  inset:0;
  z-index:1200;
}

.ops-modal[hidden]{
  display:none;
}

.ops-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(8, 16, 24, 0.62);
  backdrop-filter:blur(4px);
}

.ops-modal-card{
  position:relative;
  width:min(760px, calc(100vw - 32px));
  max-height:calc(100vh - 48px);
  overflow:auto;
  margin:24px auto;
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.20), transparent 40%),
    radial-gradient(circle at bottom left, rgba(73,168,75,0.12), transparent 44%),
    linear-gradient(180deg, rgba(255,255,255,0.985) 0%, rgba(244,249,255,0.97) 100%);
  border:1px solid rgba(26,160,214,0.22);
  border-radius:20px;
  box-shadow:
    0 36px 96px rgba(0,0,0,0.28),
    0 0 0 1px rgba(17,124,171,0.16);
  padding:22px;
  color:var(--text);
}

.ops-modal-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:5px;
  border-radius:20px 20px 0 0;
  background:linear-gradient(90deg, var(--accent) 0%, var(--accent-strong) 55%, var(--accent-2) 100%);
}

.ops-modal-card .panel-head{
  position:sticky;
  top:-22px;
  z-index:2;
  margin:-22px -22px 14px;
  padding:18px 22px 14px;
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.16), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,0.985) 0%, rgba(244,249,255,0.96) 100%);
  border-radius:20px 20px 0 0;
  border-bottom:1px solid rgba(17,124,171,0.12);
}

.ops-modal-card .hint{
  color:#3d4651;
  font-size:13px;
}

.ops-modal-card input,
.ops-modal-card select,
.ops-modal-card textarea{
  background:rgba(255,255,255,0.94);
  border-color:rgba(26,160,214,0.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.78);
}

.ops-modal-card input:focus,
.ops-modal-card select:focus,
.ops-modal-card textarea:focus{
  border-color:rgba(26,160,214,0.5);
  outline:2px solid rgba(26,160,214,0.22);
}

.ops-modal-card .msg{
  font-size:14px;
}

.ops-sales-drawer-card{
  width:min(620px, calc(100vw - 24px));
  margin:16px 16px 16px auto;
}

.ops-sales-drawer-status{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:12px;
}

.ops-sales-drawer-kpis{
  margin-bottom:14px;
}

.ops-sales-drawer-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}

.ops-sales-drawer-section{
  padding:12px 14px;
  border-radius:16px;
  border:1px solid rgba(26,160,214,0.16);
  background:rgba(255,255,255,0.78);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.72);
}

.ops-sales-drawer-section h4{
  margin:0 0 10px;
  font-size:14px;
  font-family:var(--font-display);
}

.ops-sales-drawer-list{
  margin:0;
  display:grid;
  gap:10px;
}

.ops-sales-drawer-list div{
  display:grid;
  gap:4px;
}

.ops-sales-drawer-list dt{
  color:var(--muted);
  font-size:11px;
  font-weight:700;
  letter-spacing:0.05em;
  text-transform:uppercase;
}

.ops-sales-drawer-list dd{
  margin:0;
  color:var(--text);
  font-size:13px;
  line-height:1.45;
  word-break:break-word;
}

.ops-sales-drawer-actions{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(26,160,214,0.14);
}

.ops-sales-drawer-actions .hint{
  flex-basis:100%;
}

.ops-pallet-review-card{
  width:min(980px, calc(100vw - 32px));
}

.ops-pallet-review-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
  gap:14px;
  margin:12px 0;
}

.ops-pallet-review-actions{
  flex-wrap:wrap;
  margin-top:12px;
}

.ops-pallet-review-card .create{
  margin-top:0;
}

.ops-pallet-review-list{
  display:grid;
  gap:8px;
}

.ops-pallet-review-source,
.ops-pallet-review-candidate{
  border:1px solid rgba(17,124,171,0.12);
  border-radius:12px;
  padding:10px 12px;
  background:rgba(255,255,255,0.72);
}

.ops-pallet-review-source strong,
.ops-pallet-review-candidate strong{
  display:block;
  margin-bottom:4px;
}

.ops-pallet-review-state-chip{
  display:inline-flex;
  align-items:center;
  padding:3px 9px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  letter-spacing:0.02em;
  text-transform:uppercase;
  background:rgba(17,124,171,0.12);
  color:#0f5e82;
}

.ops-pallet-review-state-chip.is-review,
.ops-pallet-review-state-chip.is-blocked{
  background:rgba(220,38,38,0.12);
  color:#991b1b;
}

.ops-pallet-review-state-chip.is-incomplete,
.ops-pallet-review-state-chip.is-regen{
  background:rgba(249,115,22,0.14);
  color:#9a3412;
}

.ops-pallet-review-state-chip.is-stale,
.ops-pallet-review-state-chip.is-price{
  background:rgba(245,158,11,0.16);
  color:#92400e;
}

.ops-pallet-review-matchline{
  font-size:12px;
  color:#4b5563;
  margin-top:4px;
}

.ops-pallet-review-highlight{
  animation:ops-pallet-review-highlight 2.4s ease;
}

@keyframes ops-pallet-review-highlight{
  0%{ background:rgba(250,204,21,0.34); }
  100%{ background:transparent; }
}

.ops-pallet-catalog-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(330px, 1fr));
  gap:14px;
  margin-top:14px;
}

.ops-pallet-catalog-preview-banner{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  border:1px solid rgba(17,124,171,0.16);
  border-radius:12px;
  background:rgba(239,246,255,0.82);
  padding:12px 14px;
  margin-top:14px;
}

.ops-pallet-catalog-card{
  background:linear-gradient(180deg, rgba(255,255,255,0.94), rgba(247,251,253,0.92));
  border:1px solid rgba(17,124,171,0.14);
  border-radius:16px;
  padding:14px;
  box-shadow:0 14px 34px rgba(15,94,130,0.08);
  display:grid;
  gap:12px;
}

.ops-pallet-catalog-card.is-preview-preview-only{
  border-color:rgba(20,184,166,0.34);
  box-shadow:
    0 14px 34px rgba(20,184,166,0.08),
    inset 5px 0 0 rgba(20,184,166,0.78);
}

.ops-pallet-catalog-card.is-preview-live-with-preview{
  border-color:rgba(245,158,11,0.34);
  box-shadow:
    0 14px 34px rgba(245,158,11,0.08),
    inset 5px 0 0 rgba(245,158,11,0.78);
}

.ops-pallet-catalog-card.is-preview-live-unchanged{
  opacity:0.82;
}

.ops-pallet-catalog-card.is-tone-blue{
  background:
    radial-gradient(circle at top right, rgba(147,197,253,0.16), transparent 42%),
    linear-gradient(180deg, rgba(244,249,255,0.97), rgba(255,255,255,0.98));
  border-color:rgba(96,165,250,0.22);
  box-shadow:
    0 14px 34px rgba(96,165,250,0.08),
    inset 5px 0 0 rgba(96,165,250,0.66);
}

.ops-pallet-catalog-card.is-tone-green{
  background:
    radial-gradient(circle at top right, rgba(34,197,94,0.16), transparent 42%),
    linear-gradient(180deg, rgba(239,252,244,0.92), rgba(255,255,255,0.97));
  border-color:rgba(34,197,94,0.22);
  box-shadow:
    0 14px 34px rgba(34,197,94,0.09),
    inset 5px 0 0 rgba(22,163,74,0.78);
}

.ops-pallet-catalog-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}

.ops-pallet-catalog-code{
  font-size:18px;
  font-weight:800;
  color:#0f172a;
}

.ops-pallet-catalog-price{
  text-align:right;
  min-width:120px;
}

.ops-pallet-catalog-price strong{
  display:block;
  font-size:20px;
  color:#0f5e82;
}

.ops-pallet-catalog-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.ops-pallet-catalog-tag{
  display:inline-flex;
  align-items:center;
  padding:4px 10px;
  border-radius:999px;
  background:rgba(17,124,171,0.08);
  color:#0f5e82;
  font-size:12px;
  font-weight:700;
}

.ops-pallet-catalog-card.is-tone-blue .ops-pallet-catalog-tag{
  background:rgba(96,165,250,0.10);
  color:#2b6ea6;
}

.ops-pallet-catalog-card.is-tone-green .ops-pallet-catalog-tag{
  background:rgba(34,197,94,0.10);
  color:#1f7a43;
}

.ops-pallet-catalog-metrics{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
}

.ops-pallet-catalog-metric{
  border:1px solid rgba(17,124,171,0.10);
  border-radius:12px;
  padding:10px 12px;
  background:rgba(255,255,255,0.74);
}

.ops-pallet-catalog-card.is-tone-blue .ops-pallet-catalog-metric,
.ops-pallet-catalog-card.is-tone-blue .ops-pallet-catalog-state{
  border-color:rgba(96,165,250,0.16);
  background:rgba(255,255,255,0.82);
}

.ops-pallet-catalog-card.is-tone-green .ops-pallet-catalog-metric,
.ops-pallet-catalog-card.is-tone-green .ops-pallet-catalog-state{
  border-color:rgba(34,197,94,0.16);
  background:rgba(255,255,255,0.82);
}

.ops-pallet-catalog-metric-label{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:#6b7280;
}

.ops-pallet-catalog-metric-value{
  margin-top:4px;
  font-weight:700;
  color:#111827;
}

.ops-pallet-catalog-state{
  border-radius:12px;
  padding:10px 12px;
  background:rgba(248,250,252,0.92);
  border:1px solid rgba(17,124,171,0.10);
  min-height:74px;
}

.ops-pallet-catalog-state.is-ready-only{
  min-height:0;
  padding:10px 12px;
  display:flex;
  align-items:center;
}

.ops-pallet-catalog-actions{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px;
}

.ops-pallet-catalog-actions .btn{
  width:100%;
  justify-content:center;
}

.ops-pallet-catalog-sources{
  display:grid;
  gap:8px;
}

@media (max-width: 720px){
  .ops-pallet-catalog-actions{
    grid-template-columns:1fr;
  }
}

.ops-pallet-detail-card{
  width:min(1120px, calc(100vw - 32px));
}

.ops-pallet-detail-summary{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
  gap:10px;
  margin-bottom:12px;
}

.ops-pallet-detail-summary .ops-pallet-catalog-metric{
  margin:0;
}

.ops-pallet-detail-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));
  gap:14px;
  margin:12px 0;
}

.ops-bypass-prompt-warnings{
  display:none;
  margin:10px 0 8px;
  padding:10px 12px;
  border:1px solid rgba(249,115,22,0.28);
  border-radius:12px;
  background:
    radial-gradient(circle at top right, rgba(249,115,22,0.14), transparent 52%),
    linear-gradient(180deg, rgba(255,244,230,0.86), rgba(255,248,239,0.84));
  color:#9a3412;
  font-size:13px;
  line-height:1.45;
}

.ops-bypass-prompt-warning-line + .ops-bypass-prompt-warning-line{
  margin-top:4px;
}

.ops-log-request-fields{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(170px, 1fr));
  gap:12px;
  margin-top:12px;
}

.ops-log-request-fields .pricing-field{
  width:100%;
}

@keyframes rise{
  from{opacity:0; transform:translateY(12px)}
  to{opacity:1; transform:translateY(0)}
}

@media (max-width:960px){
  .topbar{
    flex-direction:column;
    align-items:flex-start;
  }
  .layout{
    grid-template-columns:1fr;
  }
  .scan-grid{
    grid-template-columns:1fr;
  }
  .hero-grid{
    grid-template-columns:1fr;
  }
  .staff-focus-metrics{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .home-consumables-item-head{
    flex-direction:column;
  }
  .home-consumables-item-metrics{
    grid-template-columns:1fr;
  }
  .ops-flow-guide{
    grid-template-columns:1fr;
  }
  .ops-factory-progress-toolbar{
    padding:14px 14px 16px;
  }
  .ops-factory-progress-main{
    white-space:normal;
  }
  .ops-factory-actions{
    min-width:180px;
  }
  .stock-business-code-row,
  .stock-business-summary-top{
    flex-direction:column;
    align-items:flex-start;
  }
  .stock-preview-metrics{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .stock-preview-parts{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:720px){
  .lang-select{
    min-width:94px;
  }
  td, th{
    padding:8px 6px;
    font-size:12px;
  }
  .staff-focus-card-head,
  .staff-focus-footer{
    flex-direction:column;
  }
  .staff-focus-metrics{
    grid-template-columns:1fr 1fr;
  }
  .home-consumables-item-head{
    flex-direction:column;
  }
  .home-consumables-item-metrics{
    grid-template-columns:1fr;
  }
  .operations-advanced-nav{
    flex-direction:column;
    align-items:flex-start;
  }
  .ops-factory-progress-controls,
  .ops-factory-progress-filter-head{
    flex-direction:column;
    align-items:flex-start;
  }
  .ops-factory-progress-filter-grid{
    grid-template-columns:1fr;
  }
  .ops-factory-progress-filter-chip{
    padding:13px 14px;
  }
  .ops-launch-context{
    padding:10px 12px;
  }
  .ops-factory-status-cell{
    min-width:0;
  }
  .ops-sales-drawer-card{
    width:min(760px, calc(100vw - 32px));
    margin:24px auto;
  }
  .ops-sales-drawer-grid{
    grid-template-columns:1fr;
  }
  .stock-business-summary-grid,
  .stock-balance-summary-grid{
    grid-template-columns:1fr;
  }
  .stock-preview-metrics,
  .stock-preview-parts{
    grid-template-columns:1fr;
  }
  .stock-activity-row{
    flex-direction:column;
    align-items:flex-start;
  }
}

[dir="rtl"] .topbar{
  direction:rtl;
}

[dir="rtl"] body,
[dir="rtl"] .page,
[dir="rtl"] .panel,
[dir="rtl"] table{
  direction:rtl;
}

[dir="rtl"] .auth{
  direction:rtl;
}

[dir="rtl"] input:not(.ltr),
[dir="rtl"] select:not(.ltr),
[dir="rtl"] textarea:not(.ltr){
  text-align:right;
}

[dir="rtl"] td,
[dir="rtl"] th{
  text-align:right;
}

[dir="rtl"] .user-table .actions-cell{
  text-align:right;
}

[dir="rtl"] .user-table .actions-cell .btn{
  margin-left:0;
  margin-right:6px;
}

@media (max-width:1000px){
  .ops-parts-layout,
  .ops-parts-results-grid,
  .ops-parts-detail-grid,
  .ops-parts-setup-grid,
  .ops-parts-planner-summary,
  .ops-invoice-layout,
  .ops-invoice-hero{
    grid-template-columns:1fr;
  }
  .create-grid{
    grid-template-columns:1fr;
  }
  .receive-grid{
    grid-template-columns:1fr;
  }
  .ops-invoice-summary-card{
    position:static;
  }
  .ops-invoice-fields--three{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .pricing-workspace{
    grid-template-columns:1fr;
  }
  .pricing-highlights{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .pricing-mini-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .ops-modal-card{
    width:min(100vw - 20px, 760px);
    margin:10px auto;
    padding:16px;
  }
}

@media (max-width:640px){
  .ops-invoice-hero-badges,
  .ops-invoice-fields--two,
  .ops-invoice-fields--three{
    grid-template-columns:1fr;
  }
  .ops-invoice-hero-copy h3{
    font-size:21px;
  }
  .ops-parts-qty-grid,
  .ops-parts-tube-choice-host{
    grid-template-columns:1fr;
  }
  .ops-parts-panel-note{
    max-width:none;
  }
}

@media (max-width:720px){
  .pricing-form-grid,
  .pricing-mini-grid,
  .pricing-highlights{
    grid-template-columns:1fr;
  }
}

/* Operations Control (follow-up) tab — layout sections */
.ops-control-shell{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  gap:16px;
  align-items:flex-start;
  margin-top:10px;
}
.ops-control-main-column{
  display:contents;
}
.ops-control-side-column{
  display:contents;
}
.ops-control-hero{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:16px 18px;
  border-radius:24px;
  border:1px solid rgba(26,160,214,0.16);
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.18), transparent 44%),
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(240,247,255,0.94));
  box-shadow:0 18px 36px rgba(15,23,42,0.06);
  grid-column:1 / -1;
  order:10;
}
.ops-control-hero .ops-flow-guide,
.ops-control-hero .ops-tab-notifications{
  margin:0;
}
.ops-flow-guide--control{
  margin:0;
}
.ops-control-overview-grid{
  display:grid;
  grid-template-columns:minmax(240px, 0.72fr) minmax(0, 1.28fr);
  gap:16px;
  grid-column:1;
  order:20;
}
.ops-control-overview-grid > .ops-control-section{
  height:100%;
}
#opsFollowupChangeRequestsWrap{
  grid-column:1 / -1;
  order:30;
}
#opsFollowupAdminScope > .ops-control-section{
  grid-column:1 / -1;
  order:40;
}
#opsFollowupAdminControls{
  grid-column:1;
  order:50;
  align-self:start;
}
.ops-control-section{
  --ops-control-accent:26,160,214;
  display:flex;
  flex-direction:column;
  gap:0.75rem;
  margin:0;
  padding:1rem 1.05rem 1.1rem;
  border-radius:22px;
  border:1px solid rgba(var(--ops-control-accent), 0.15);
  background:
    radial-gradient(circle at top right, rgba(var(--ops-control-accent), 0.14), transparent 44%),
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(var(--ops-control-accent), 0.03));
  box-shadow:0 16px 34px rgba(15,23,42,0.05);
}
.ops-control-section--status{
  --ops-control-accent:26,160,214;
}
.ops-control-section--attention{
  --ops-control-accent:217,119,6;
}
.ops-control-section--insight{
  --ops-control-accent:37,99,235;
}
.ops-control-section--system{
  --ops-control-accent:13,148,136;
}
.ops-control-section--queue{
  --ops-control-accent:22,163,74;
}
.ops-control-section--policy{
  --ops-control-accent:71,85,105;
}
.ops-control-section-title{
  font-size:1.08rem;
  font-weight:700;
  margin:0;
  letter-spacing:0.01em;
  font-family:var(--font-display);
}
.ops-control-section-lead{
  margin:0;
}
.ops-control-section .create + .create{
  margin-top:0.9rem;
}
.ops-control-section .table-scroll:last-child,
.ops-control-section .op-kpis:last-child,
.ops-control-section .msg:last-child{
  margin-bottom:0;
}
.ops-gradient-card-title{
  margin-top:0;
}
.ops-daily-actions{
  margin-top:0.6rem;
  flex-wrap:wrap;
  gap:0.35rem;
}
.ops-daily-blocker-summary{
  margin-top:0.35rem;
  margin-bottom:0.35rem;
}
.ops-daily-blockers-table{
  margin-top:0.25rem;
}
.ops-exception-group{
  margin:0.5rem 0;
  padding:0.15rem 0;
  border-bottom:1px solid var(--border);
}
.ops-exception-group:last-of-type{
  border-bottom:none;
}
.ops-exception-group-summary{
  cursor:pointer;
  font-weight:600;
  padding:0.25rem 0;
}
.ops-mgmt-subsection{
  margin-top:0.85rem;
}
.ops-mgmt-subsection:first-of-type{
  margin-top:0.35rem;
}
.ops-mgmt-subhead{
  font-size:0.88rem;
  font-weight:600;
  margin:0 0 0.4rem;
  color:var(--muted);
}
.ops-followup-change-requests,
.ops-followup-admin-controls{
  margin-top:0;
}
[dir="rtl"] .ops-daily-actions{
  direction:rtl;
}
[dir="rtl"] .ops-exception-group summary{
  text-align:right;
}

@media (max-width:1200px){
  .ops-control-shell{
    grid-template-columns:minmax(0, 1fr);
  }

  .ops-control-overview-grid{
    grid-template-columns:1fr;
  }

  .ops-control-overview-grid,
  #opsFollowupAdminControls,
  #opsFollowupAdminScope > .ops-control-section{
    grid-column:1;
  }

  #opsFollowupChangeRequestsWrap{
    grid-column:1;
  }
}

@media (max-width:860px){
  .ops-control-hero{
    padding:14px;
    border-radius:20px;
  }
  .ops-control-section{
    padding:0.95rem;
    border-radius:18px;
  }
}

.ops-purchasing-panel-head{
  margin-bottom:14px;
}

.ops-purchasing-panel-head-actions{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:8px;
}

.ops-purchasing-panel-note{
  max-width:360px;
  text-align:right;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

.ops-purchasing-hero{
  display:grid;
  grid-template-columns:minmax(0, 1.15fr) minmax(300px, 0.85fr);
  gap:16px;
  margin:10px 0 14px;
  padding:16px 18px;
  border-radius:22px;
  border:1px solid rgba(26,160,214,0.16);
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.18), transparent 34%),
    radial-gradient(circle at bottom left, rgba(15,118,110,0.10), transparent 34%),
    linear-gradient(135deg, rgba(248,252,255,0.98), rgba(237,246,255,0.96));
  box-shadow:0 16px 34px rgba(25,35,52,0.08);
}

.ops-purchasing-hero-copy h3{
  margin:8px 0 8px;
  font-family:var(--font-display);
  font-size:24px;
  line-height:1.15;
  color:var(--text);
}

.ops-purchasing-hero-copy p{
  margin:0;
  max-width:62ch;
  color:var(--muted);
  line-height:1.6;
}

.ops-purchasing-hero-kicker{
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:#0f5e82;
}

.ops-purchasing-hero-guide{
  display:grid;
  gap:10px;
}

.ops-purchasing-hero-step{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr);
  gap:12px;
  align-items:flex-start;
  padding:12px 14px;
  border-radius:16px;
  border:1px solid rgba(26,160,214,0.16);
  background:rgba(255,255,255,0.72);
}

.ops-purchasing-step-no{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:12px;
  background:rgba(26,160,214,0.14);
  color:#0f5e82;
  font-size:12px;
  font-weight:800;
  letter-spacing:0.04em;
}

.ops-purchasing-layout{
  display:grid;
  grid-template-columns:minmax(320px, 0.92fr) minmax(340px, 0.88fr);
  gap:16px;
  align-items:start;
}

.ops-purchasing-card{
  min-width:0;
}

.ops-purchasing-card--workspace,
.ops-purchasing-card--saved{
  grid-column:1 / -1;
}

.ops-purchasing-card-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:12px;
}

.ops-purchasing-card-pill{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(26,160,214,0.18);
  background:rgba(26,160,214,0.10);
  color:#0f5e82;
  font-size:11px;
  font-weight:800;
  letter-spacing:0.04em;
  text-transform:uppercase;
}

.ops-purchasing-card-pill--soft{
  background:rgba(15,118,110,0.10);
  border-color:rgba(15,118,110,0.16);
  color:#0f766e;
}

.ops-purchasing-card-pill--accent{
  background:rgba(214,129,26,0.12);
  border-color:rgba(214,129,26,0.18);
  color:#9a5b12;
}

.ops-purchasing-card-pill--muted{
  background:rgba(100,116,139,0.10);
  border-color:rgba(100,116,139,0.16);
  color:#475569;
}

.ops-purchasing-selection-shell{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.ops-purchasing-selection-form{
  display:grid;
  grid-template-columns:minmax(0, 0.92fr) minmax(0, 1.08fr) minmax(118px, 132px);
  gap:12px 14px;
  align-items:end;
}

.ops-purchasing-order-select-field{
  min-width:0;
  max-width:none;
}

.ops-purchasing-order-picker{
  position:relative;
}

.ops-purchasing-order-picker-toggle{
  width:100%;
  justify-content:space-between;
  min-height:46px;
  padding:10px 14px;
  border-radius:16px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(245,249,255,0.94));
  border:1px solid rgba(26,160,214,0.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.7);
  text-align:left;
}

.ops-purchasing-plan-btn{
  align-self:end;
  width:100%;
  min-height:42px;
  min-width:0;
  max-width:none;
  padding:8px 12px;
  white-space:normal;
  line-height:1.15;
  justify-content:center;
  font-size:14px;
}

.ops-purchasing-order-picker-toggle::after{
  content:"▾";
  font-size:12px;
  color:var(--muted);
}

.ops-purchasing-order-picker.is-open .ops-purchasing-order-picker-toggle::after{
  transform:rotate(180deg);
}

.ops-purchasing-order-picker-menu{
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  right:0;
  z-index:20;
  padding:12px;
  border-radius:18px;
  border:1px solid rgba(26,160,214,0.16);
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.12), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(242,248,255,0.96));
  box-shadow:0 18px 36px rgba(25,35,52,0.12);
}

.ops-purchasing-order-picker-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:10px;
}

.ops-purchasing-order-list{
  display:grid;
  gap:8px;
  max-height:300px;
  overflow:auto;
  padding-right:2px;
}

.ops-purchasing-order-option{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr);
  gap:10px;
  align-items:flex-start;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(26,160,214,0.12);
  background:rgba(255,255,255,0.82);
  cursor:pointer;
}

.ops-purchasing-order-option input{
  margin-top:2px;
}

.ops-purchasing-order-option-title{
  font-size:14px;
  font-weight:800;
  color:var(--text);
}

.ops-purchasing-order-option-meta{
  margin-top:3px;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

.ops-purchasing-order-option-empty{
  padding:12px 14px;
  border-radius:14px;
  border:1px dashed rgba(100,116,139,0.24);
  background:rgba(248,250,252,0.88);
  color:var(--muted);
  font-size:13px;
}

.ops-purchasing-summary-host{
  display:grid;
  gap:10px;
}

.ops-purchasing-summary-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
  gap:10px;
}

.ops-purchasing-summary-card{
  padding:12px;
  border-radius:16px;
  border:1px solid rgba(26,160,214,0.14);
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.10), transparent 44%),
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246,250,255,0.92));
}

.ops-purchasing-summary-card.is-warn{
  border-color:rgba(214,129,26,0.18);
  background:
    radial-gradient(circle at top right, rgba(214,129,26,0.12), transparent 44%),
    linear-gradient(180deg, rgba(255,251,245,0.98), rgba(255,248,239,0.92));
}

.ops-purchasing-summary-card.is-danger{
  border-color:rgba(220,38,38,0.18);
  background:
    radial-gradient(circle at top right, rgba(220,38,38,0.10), transparent 42%),
    linear-gradient(180deg, rgba(255,248,248,0.98), rgba(255,241,242,0.92));
}

.ops-purchasing-summary-label{
  font-size:11px;
  font-weight:800;
  letter-spacing:0.05em;
  text-transform:uppercase;
  color:var(--muted);
}

.ops-purchasing-summary-value{
  margin-top:6px;
  font-size:24px;
  font-weight:800;
  font-family:var(--font-display);
  line-height:1.1;
  color:var(--text);
}

.ops-purchasing-summary-note{
  margin-top:6px;
  font-size:12px;
  line-height:1.45;
  color:var(--muted);
}

.ops-purchasing-subsection-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
  margin-top:2px;
}

.ops-purchasing-subtitle{
  margin:0;
  font-size:12px;
  font-weight:800;
  letter-spacing:0.06em;
  text-transform:uppercase;
  color:var(--muted);
}

.ops-purchasing-canvas{
  display:grid;
  gap:12px;
}

.ops-purchasing-canvas--compact{
  gap:10px;
}

.ops-purchasing-empty{
  padding:16px 18px;
  border-radius:18px;
  border:1px dashed rgba(100,116,139,0.26);
  background:linear-gradient(180deg, rgba(248,250,252,0.9), rgba(241,245,249,0.84));
}

.ops-purchasing-empty strong{
  display:block;
  margin-bottom:4px;
  font-family:var(--font-display);
  font-size:15px;
  color:var(--text);
}

.ops-purchasing-empty p{
  margin:0;
  color:var(--muted);
  line-height:1.5;
}

.ops-purchasing-order-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
  gap:12px;
}

.ops-purchasing-order-card,
.ops-purchasing-workspace-card,
.ops-purchasing-saved-card,
.ops-purchasing-blocked-card,
.ops-purchasing-group-card{
  border:1px solid rgba(26,160,214,0.14);
  border-radius:18px;
  padding:14px;
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.10), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(244,248,255,0.92));
  box-shadow:0 12px 28px rgba(25,35,52,0.06);
}

.ops-purchasing-blocked-card{
  border-color:rgba(220,38,38,0.18);
  background:
    radial-gradient(circle at top right, rgba(220,38,38,0.12), transparent 42%),
    linear-gradient(180deg, rgba(255,249,249,0.98), rgba(255,242,242,0.92));
}

.ops-purchasing-group-card{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.ops-purchasing-card-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
}

.ops-purchasing-title{
  margin:0;
  font-size:18px;
  font-weight:800;
  font-family:var(--font-display);
  color:var(--text);
}

.ops-purchasing-subcopy{
  margin-top:4px;
  color:var(--muted);
  font-size:13px;
  line-height:1.45;
}

.ops-purchasing-pill-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.ops-purchasing-pill{
  display:inline-flex;
  align-items:center;
  padding:5px 9px;
  border-radius:999px;
  background:rgba(100,116,139,0.12);
  color:#334155;
  font-size:11px;
  font-weight:800;
  letter-spacing:0.03em;
  text-transform:uppercase;
  border:1px solid rgba(100,116,139,0.14);
}

.ops-purchasing-pill.is-ok{
  background:rgba(22,163,74,0.12);
  border-color:rgba(22,163,74,0.18);
  color:#166534;
}

.ops-purchasing-pill.is-warn{
  background:rgba(214,129,26,0.12);
  border-color:rgba(214,129,26,0.18);
  color:#9a5b12;
}

.ops-purchasing-pill.is-danger{
  background:rgba(220,38,38,0.10);
  border-color:rgba(220,38,38,0.16);
  color:#b91c1c;
}

.ops-purchasing-pill.is-muted{
  background:rgba(148,163,184,0.12);
  border-color:rgba(148,163,184,0.16);
  color:#475569;
}

.ops-purchasing-meta-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(140px, 1fr));
  gap:10px;
}

.ops-purchasing-meta-item{
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(26,160,214,0.10);
  background:rgba(255,255,255,0.78);
}

.ops-purchasing-meta-key{
  display:block;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--muted);
}

.ops-purchasing-meta-value{
  display:block;
  margin-top:5px;
  font-size:14px;
  font-weight:700;
  color:var(--text);
  word-break:break-word;
}

.ops-purchasing-inline-note{
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(26,160,214,0.12);
  background:rgba(248,250,252,0.84);
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.ops-purchasing-edit-grid{
  display:grid;
  grid-template-columns:minmax(180px, 240px) minmax(0, 1fr);
  gap:10px;
  align-items:end;
}

.ops-purchasing-inline-field{
  min-width:0;
}

.ops-purchasing-inline-field input{
  background:rgba(255,255,255,0.96);
}

.ops-purchasing-blocked-note{
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(220,38,38,0.14);
  background:rgba(254,242,242,0.92);
  color:#991b1b;
  font-size:13px;
  line-height:1.5;
}

.ops-purchasing-groups{
  display:grid;
  gap:12px;
}

.ops-purchasing-group-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}

.ops-purchasing-group-meta{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}

.ops-purchasing-group-orders{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.ops-purchasing-group-order-pill{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(15,118,110,0.10);
  color:#115e59;
  font-size:11px;
  font-weight:700;
  border:1px solid rgba(15,118,110,0.12);
}

.ops-purchasing-line-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  gap:10px;
}

.ops-purchasing-line-chip{
  padding:11px 12px;
  border-radius:14px;
  border:1px solid rgba(26,160,214,0.10);
  background:rgba(255,255,255,0.82);
}

.ops-purchasing-line-chip strong{
  display:block;
  margin-bottom:4px;
  color:var(--text);
  font-size:13px;
}

.ops-purchasing-line-chip span{
  display:block;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

.ops-purchasing-workspace-toolbar{
  display:grid;
  grid-template-columns:minmax(180px, 0.8fr) minmax(180px, 0.8fr) minmax(280px, 1.4fr);
  gap:12px;
  align-items:end;
}

.ops-purchasing-workspace-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:flex-end;
}

.ops-purchasing-status-host{
  display:grid;
  gap:10px;
  margin-bottom:2px;
}

.ops-purchasing-status-card{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-radius:16px;
  border:1px solid rgba(26,160,214,0.14);
  background:
    radial-gradient(circle at top right, rgba(26,160,214,0.10), transparent 42%),
    linear-gradient(180deg, rgba(248,252,255,0.98), rgba(241,248,255,0.92));
}

.ops-purchasing-status-text{
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.ops-purchasing-workspace-summary{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(160px, 1fr));
  gap:10px;
}

.ops-purchasing-workspace-card{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.ops-purchasing-workspace-main{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:12px;
  align-items:start;
}

.ops-purchasing-workspace-cost{
  min-width:170px;
  padding:12px;
  border-radius:16px;
  background:rgba(15,118,110,0.08);
  border:1px solid rgba(15,118,110,0.12);
  text-align:right;
}

.ops-purchasing-workspace-cost-label{
  font-size:11px;
  font-weight:800;
  letter-spacing:0.05em;
  text-transform:uppercase;
  color:#0f766e;
}

.ops-purchasing-workspace-cost-value{
  margin-top:6px;
  font-size:22px;
  font-family:var(--font-display);
  font-weight:800;
  color:#0f172a;
}

.ops-purchasing-trace-block{
  border-top:1px solid rgba(26,160,214,0.10);
  padding-top:10px;
}

.ops-purchasing-trace-block details{
  margin:0;
}

.ops-purchasing-trace-block summary{
  cursor:pointer;
  font-weight:700;
  color:var(--text);
}

.ops-purchasing-trace-list{
  margin:8px 0 0;
  padding-left:0;
  padding-inline-start:18px;
  color:var(--muted);
}

.ops-purchasing-trace-list li{
  margin:4px 0;
  line-height:1.45;
}

.ops-purchasing-saved-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:16px;
}

.ops-purchasing-saved-column{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.ops-purchasing-saved-card{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.ops-purchasing-saved-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.ops-purchasing-saved-stat-row{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(120px, 1fr));
  gap:10px;
}

.ops-purchasing-saved-stat{
  padding:10px 11px;
  border-radius:14px;
  background:rgba(255,255,255,0.76);
  border:1px solid rgba(26,160,214,0.10);
}

.ops-purchasing-saved-stat-label{
  display:block;
  font-size:10px;
  font-weight:800;
  letter-spacing:0.05em;
  text-transform:uppercase;
  color:var(--muted);
}

.ops-purchasing-saved-stat-value{
  display:block;
  margin-top:4px;
  font-size:14px;
  font-weight:700;
  color:var(--text);
}

@media (max-width: 1180px){
  .factory-truth-toolbar-controls,
  .factory-truth-top-grid,
  .factory-truth-hero{
    grid-template-columns:1fr;
  }
}

@media (max-width: 920px){
  .factory-truth-order-toolbar,
  .factory-truth-furnace-kpis{
    grid-template-columns:1fr;
  }
  .factory-truth-toolbar-controls{
    grid-template-columns:1fr;
  }
  .factory-truth-last-updated{
    min-width:0;
  }
}

@media (max-width: 760px){
  .factory-truth-toggle{
    width:100%;
    justify-content:space-between;
  }
  .factory-truth-toggle-btn{
    flex:1 1 0;
    text-align:center;
  }
  .factory-truth-table{
    min-width:720px;
  }
  .ops-factory-truth-drawer-card{
    width:calc(100vw - 16px);
    margin:8px 8px 8px auto;
    padding:18px;
  }
  .factory-truth-movement-top,
  .factory-truth-balance-row{
    flex-direction:column;
    align-items:flex-start;
  }
  .factory-truth-balance-value{
    font-size:20px;
  }
}

@media (max-width: 1180px){
  .ops-purchasing-layout,
  .ops-purchasing-hero,
  .ops-purchasing-saved-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 920px){
  .ops-purchasing-selection-form,
  .ops-purchasing-workspace-toolbar,
  .ops-purchasing-edit-grid{
    grid-template-columns:1fr;
  }
  .ops-purchasing-order-select-field{
    max-width:none;
  }
  .ops-purchasing-plan-btn{
    max-width:none;
    width:100%;
  }
  .ops-purchasing-workspace-actions{
    justify-content:flex-start;
  }
  .ops-purchasing-panel-head-actions{
    align-items:flex-start;
  }
  .ops-purchasing-panel-note{
    text-align:left;
  }
}

@media (max-width: 760px){
  .ops-purchasing-group-head,
  .ops-purchasing-card-top,
  .ops-purchasing-workspace-main{
    flex-direction:column;
    grid-template-columns:1fr;
  }
  .ops-purchasing-group-meta{
    justify-content:flex-start;
  }
  .ops-purchasing-workspace-cost{
    text-align:left;
    min-width:0;
  }
}

/* Foundry control-room theme refresh */
:root{
  --bg:#f4efe6;
  --bg-2:#e8dfd2;
  --card:rgba(255,253,249,0.9);
  --card-2:#f7f1e8;
  --text:#15273a;
  --ink:#15273a;
  --muted:#5b6775;
  --line:rgba(21,39,58,0.14);
  --accent:#0f766e;
  --accent-strong:#154a63;
  --accent-2:#b7791f;
  --danger:#b44349;
  --shadow:0 18px 44px rgba(17,24,39,0.12);
  --radius:22px;
  --font-body:"IBM Plex Sans","Cairo",sans-serif;
  --font-display:"Space Grotesk","Cairo",sans-serif;
  --font-mono:"JetBrains Mono","Menlo",monospace;
  --status-info-bg:rgba(15,118,110,0.14);
  --status-info-text:#0f5f58;
  --status-warn-bg:rgba(183,121,31,0.16);
  --status-warn-text:#7a4a08;
  --status-ok-bg:rgba(22,163,74,0.14);
  --status-ok-text:#166534;
  --status-hold-bg:rgba(71,85,105,0.14);
  --status-hold-text:#475569;
  --status-danger-bg:rgba(180,67,73,0.14);
  --status-danger-text:#932f36;
}

body[data-lang="ar"]{
  --font-body:"Cairo",sans-serif;
  --font-display:"Cairo",sans-serif;
  line-height:1.6;
}

body.page-body{
  background:
    radial-gradient(1400px 720px at -10% -18%, rgba(15,118,110,0.14), transparent 58%),
    radial-gradient(1220px 620px at 108% 0%, rgba(183,121,31,0.13), transparent 55%),
    linear-gradient(180deg, #f8f2ea 0%, #efe6da 100%);
}

body.page-body::before{
  content:"";
  position:fixed;
  inset:0;
  background:
    linear-gradient(125deg, rgba(255,255,255,0.44), transparent 34%),
    repeating-linear-gradient(90deg, rgba(21,39,58,0.028) 0 1px, transparent 1px 120px);
  pointer-events:none;
  z-index:0;
}

body.page-body::after{
  content:"";
  position:fixed;
  inset:0 0 auto;
  height:220px;
  background:linear-gradient(180deg, rgba(255,255,255,0.34), rgba(255,255,255,0));
  pointer-events:none;
  z-index:0;
}

.page{
  max-width:1460px;
  padding:24px 18px 56px;
}

.page.page-login{
  max-width:980px;
  padding-top:40px;
}

.page.page-home{
  max-width:1320px;
}

.page.page-admin{
  max-width:1280px;
}

.page.page-operations{
  max-width:1500px;
}

.topbar{
  position:relative;
  padding:16px 18px;
  margin:0 0 20px;
  border:1px solid rgba(21,39,58,0.12);
  border-radius:calc(var(--radius) + 4px);
  background:linear-gradient(145deg, rgba(255,253,249,0.9), rgba(244,236,227,0.82));
  box-shadow:0 24px 40px rgba(17,24,39,0.08);
  backdrop-filter:blur(10px);
}

.topbar::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg, rgba(15,118,110,0.34), rgba(183,121,31,0.22), transparent);
}

.logo{
  width:78px;
  height:78px;
  padding:8px;
  border-radius:24px;
  background:linear-gradient(145deg, rgba(255,255,255,0.98), rgba(243,235,225,0.92));
  border-color:rgba(21,39,58,0.12);
  box-shadow:0 16px 30px rgba(17,24,39,0.1);
  flex-shrink:0;
}

.brand-text h1{
  font-size:28px;
  line-height:1.05;
  letter-spacing:-0.03em;
}

.brand-text .sub{
  color:rgba(21,74,99,0.8);
  font-size:13px;
  font-weight:600;
  letter-spacing:0.01em;
}

.auth{
  gap:12px;
  padding:8px 12px;
  border-radius:16px;
  background:rgba(255,252,248,0.72);
  border-color:rgba(21,39,58,0.12);
  box-shadow:0 12px 24px rgba(17,24,39,0.08);
}

.who{
  color:var(--accent-strong);
  font-weight:600;
}

.page.page-login .panel.login{
  max-width:680px;
  margin:20px auto 0;
}

.page.page-home .card-grid,
.page.page-admin .card-grid{
  gap:16px;
}

.page.page-home .card,
.page.page-admin .card{
  min-height:132px;
}

.panel,
.card,
.create,
.ops-inline-card,
.loading-card{
  background:linear-gradient(180deg, rgba(255,253,249,0.94), rgba(247,240,231,0.86));
  border-color:rgba(21,39,58,0.12);
  box-shadow:0 18px 36px rgba(17,24,39,0.08);
}

.panel,
.card,
.loading-card{
  position:relative;
  overflow:hidden;
}

.panel{
  padding:18px;
}

.panel::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:linear-gradient(90deg, rgba(15,118,110,0.6), rgba(183,121,31,0.28), transparent 72%);
}

.panel.login{
  border-left:0;
}

.panel-head{
  margin-bottom:14px;
}

.panel-head h2{
  font-size:20px;
  letter-spacing:-0.02em;
}

.card{
  padding:18px;
  border-radius:18px;
  min-height:118px;
}

.card::after{
  content:"";
  position:absolute;
  right:16px;
  bottom:14px;
  width:48px;
  height:48px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(15,118,110,0.18), rgba(15,118,110,0));
  pointer-events:none;
}

.card h3{
  font-size:18px;
  letter-spacing:-0.02em;
}

.card p{
  color:rgba(45,60,76,0.78);
}

.op-kpis{
  gap:12px;
}

.op-kpi-card{
  background:linear-gradient(180deg, rgba(255,255,255,0.94), rgba(246,240,232,0.84));
  border:1px solid rgba(21,39,58,0.1);
  border-radius:16px;
  padding:12px 14px;
  box-shadow:0 12px 24px rgba(17,24,39,0.06);
}

#operationsMain .op-kpi-card{
  background:linear-gradient(180deg, rgba(255,255,255,0.94), rgba(235,244,242,0.88));
  border-color:rgba(15,118,110,0.18);
  box-shadow:0 14px 28px rgba(7,52,61,0.08);
}

.op-kpi-label{
  color:rgba(91,103,117,0.88);
}

.op-kpi-value{
  letter-spacing:-0.03em;
}

#operationsMain .create{
  background:linear-gradient(180deg, rgba(255,255,255,0.94), rgba(246,240,232,0.84));
  border-color:rgba(21,39,58,0.12);
  box-shadow:0 14px 28px rgba(17,24,39,0.07);
}

.staff-focus-panel{
  background:
    radial-gradient(circle at top right, rgba(15,118,110,0.12), transparent 34%),
    linear-gradient(180deg, rgba(15,118,110,0.06), rgba(255,255,255,0.7));
}

.staff-focus-card,
.home-consumables-item,
.ops-home-feed-item,
.ops-home-admin-item,
.stock-balance-summary-card{
  background:linear-gradient(180deg, rgba(255,255,255,0.94), rgba(246,240,232,0.84));
  border-color:rgba(21,39,58,0.12);
  box-shadow:0 14px 28px rgba(17,24,39,0.07);
}

.stock-balance-summary-card.is-warn{
  background:linear-gradient(180deg, rgba(255,250,243,0.95), rgba(252,239,223,0.88));
  border-color:rgba(183,121,31,0.22);
}

.stock-balance-summary-card.is-ok{
  background:linear-gradient(180deg, rgba(245,251,248,0.95), rgba(235,246,240,0.88));
  border-color:rgba(22,163,74,0.18);
}

.ops-home-admin-watch{
  background:
    radial-gradient(circle at top right, rgba(180,67,73,0.08), transparent 34%),
    linear-gradient(180deg, rgba(183,121,31,0.05), rgba(15,118,110,0.03));
}

.ops-home-admin-toggle{
  border-color:rgba(21,39,58,0.14);
  background:linear-gradient(180deg, rgba(255,255,255,0.94), rgba(245,239,231,0.88));
  box-shadow:0 10px 22px rgba(17,24,39,0.08);
  color:var(--text);
}

.ops-home-admin-toggle.is-active{
  border-color:rgba(15,118,110,0.24);
  background:linear-gradient(135deg, rgba(15,118,110,0.14), rgba(255,255,255,0.92));
  color:var(--accent-strong);
}

.operations-nav-shell{
  padding:18px;
  border-radius:calc(var(--radius) + 2px);
  background:linear-gradient(150deg, rgba(20,42,60,0.96), rgba(27,62,76,0.94));
  border:1px solid rgba(255,255,255,0.08);
  box-shadow:0 22px 40px rgba(15,23,42,0.16);
}

.operations-tab-groups{
  gap:12px;
}

.operations-group-btn{
  border-color:rgba(255,255,255,0.1);
  background:rgba(255,255,255,0.08);
  color:#f8f4ed;
  box-shadow:none;
}

.operations-group-btn:hover{
  border-color:rgba(255,255,255,0.18);
  background:rgba(255,255,255,0.12);
  box-shadow:none;
}

.operations-group-btn.active{
  background:linear-gradient(135deg, rgba(255,255,255,0.96), rgba(244,236,224,0.92));
  color:var(--accent-strong);
  border-color:rgba(255,255,255,0.3);
  box-shadow:0 12px 24px rgba(10,15,25,0.18);
}

.operations-group-hint{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.08);
  color:rgba(245,240,233,0.82);
  font-size:13px;
  font-weight:600;
}

.operations-group-hint::before{
  content:"";
  width:10px;
  height:10px;
  border-radius:999px;
  background:linear-gradient(135deg, #f6d798, #0f766e);
  flex-shrink:0;
}

.operations-advanced-nav{
  gap:12px;
}

.operations-advanced-nav .btn.ghost{
  background:rgba(255,255,255,0.08);
  color:#f8f4ed;
  border-color:rgba(255,255,255,0.12);
}

.operations-advanced-nav .btn.ghost:hover{
  border-color:rgba(255,255,255,0.24);
}

.operations-advanced-nav-hint{
  color:rgba(245,240,233,0.72);
}

.operations-tabs{
  padding:12px;
  border-color:rgba(255,255,255,0.08);
  border-radius:18px;
  background:rgba(255,255,255,0.06);
  box-shadow:none;
}

.admin-tab-btn{
  font-weight:600;
}

.operations-tabs .admin-tab-btn{
  padding:10px 14px;
  border-radius:14px;
  border-color:rgba(21,39,58,0.1);
  background:linear-gradient(180deg, rgba(255,255,255,0.95), rgba(245,239,231,0.92));
  color:var(--text);
}

.operations-tabs .admin-tab-btn.active{
  background:linear-gradient(135deg, rgba(15,118,110,0.16), rgba(255,255,255,0.96));
  color:var(--accent-strong);
  border-color:rgba(15,118,110,0.26);
  box-shadow:0 10px 20px rgba(7,52,61,0.14);
}

.operations-subtabs{
  margin-top:4px;
  padding:12px 0 0;
  border-top:1px solid rgba(255,255,255,0.08);
}

.operations-subtabs .admin-tab-btn{
  background:rgba(255,255,255,0.08);
  border-color:rgba(255,255,255,0.12);
  color:rgba(248,244,237,0.88);
}

.operations-subtabs .admin-tab-btn.active{
  background:rgba(255,255,255,0.92);
  color:var(--accent-strong);
  border-color:transparent;
}

.tab-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  min-width:28px;
  height:24px;
  padding:0 8px;
  margin-inline-start:2px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.78);
  background:linear-gradient(135deg, #f97316 0%, #dc2626 100%);
  color:#fff8f1;
  font-size:12px;
  font-weight:800;
  font-variant-numeric:tabular-nums;
  line-height:1;
  letter-spacing:0.01em;
  text-shadow:0 1px 1px rgba(127,29,29,0.26);
  box-shadow:
    0 10px 18px rgba(153,27,27,0.24),
    inset 0 1px 0 rgba(255,255,255,0.18);
}

.operations-group-btn .tab-badge{
  border-color:rgba(255,255,255,0.54);
  box-shadow:
    0 10px 18px rgba(127,29,29,0.3),
    inset 0 1px 0 rgba(255,255,255,0.22);
}

.operations-group-btn.active .tab-badge,
.operations-tabs .admin-tab-btn.active .tab-badge,
.operations-subtabs .admin-tab-btn.active .tab-badge{
  border-color:rgba(255,255,255,0.9);
  box-shadow:
    0 12px 20px rgba(127,29,29,0.26),
    0 0 0 2px rgba(255,255,255,0.34),
    inset 0 1px 0 rgba(255,255,255,0.26);
}

.btn{
  min-height:42px;
  padding:10px 16px;
  border-radius:14px;
  border-color:rgba(21,39,58,0.14);
  background:linear-gradient(180deg, rgba(255,255,255,0.95), rgba(243,236,228,0.92));
  font-weight:600;
  box-shadow:0 8px 16px rgba(17,24,39,0.05), inset 0 1px 0 rgba(255,255,255,0.6);
}

.btn:hover{
  box-shadow:0 12px 24px rgba(17,24,39,0.1);
  border-color:rgba(15,118,110,0.28);
}

.btn.primary{
  background:linear-gradient(135deg, #154a63 0%, #0f766e 100%);
  border-color:rgba(15,118,110,0.62);
  box-shadow:0 12px 28px rgba(15,118,110,0.28);
}

.btn.primary:hover{
  box-shadow:0 14px 32px rgba(15,118,110,0.34);
}

.btn.ghost{
  background:rgba(255,255,255,0.4);
  border-color:rgba(21,39,58,0.14);
}

input,
textarea,
select,
.lang-select{
  background:rgba(255,255,255,0.9);
  border-color:rgba(21,39,58,0.14);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.75), 0 1px 1px rgba(17,24,39,0.03);
}

input,
select{
  min-height:44px;
}

input:focus,
textarea:focus,
select:focus,
.lang-select:focus{
  outline:3px solid rgba(15,118,110,0.14);
  border-color:rgba(15,118,110,0.42);
  box-shadow:0 0 0 4px rgba(15,118,110,0.08);
}

[dir="rtl"] input:not([type="number"]),
[dir="rtl"] textarea,
[dir="rtl"] select{
  text-align:right;
}

table,
.table-scroll{
  border-color:rgba(21,39,58,0.12);
  box-shadow:0 14px 30px rgba(17,24,39,0.06);
}

.table-scroll{
  background:rgba(255,255,255,0.72);
}

th,
.table-scroll > table thead th,
.factory-truth-table thead th{
  background:linear-gradient(180deg, rgba(23,48,67,0.96), rgba(17,36,54,0.94));
  color:#f8f4ed;
  border-bottom:1px solid rgba(255,255,255,0.08);
}

td,
th,
.factory-truth-table th,
.factory-truth-table td{
  border-bottom:1px solid rgba(21,39,58,0.08);
}

tbody tr:nth-child(even){
  background:rgba(21,39,58,0.03);
}

tbody tr:hover{
  background:rgba(15,118,110,0.07);
}

.loading{
  background:rgba(239,231,218,0.78);
  backdrop-filter:blur(8px);
}

.loading-card{
  min-width:min(92vw, 360px);
}

.loading-title{
  letter-spacing:-0.02em;
}

.hint{
  color:rgba(82,94,108,0.86);
  line-height:1.5;
}

.msg{
  line-height:1.55;
}

@media (max-width:960px){
  .page{
    padding:18px 14px 40px;
  }
  .topbar{
    padding:14px 16px;
  }
  .brand-text h1{
    font-size:24px;
  }
  .auth{
    width:100%;
    justify-content:space-between;
  }
  .operations-nav-shell{
    padding:14px;
  }
  .facebook-inbox-shell{
    grid-template-columns:1fr;
    min-height:0;
  }
  .facebook-inbox-list-panel{
    max-height:260px;
  }
  .facebook-inbox-thread,
  .facebook-ticket-panel{
    min-height:520px;
  }
  .facebook-inbox-message{
    max-width:92%;
  }
  .facebook-ticket-form{
    grid-template-columns:1fr 1fr;
  }
  .facebook-quote-grid{
    grid-template-columns:1fr 1fr;
  }
  .facebook-dimension-row{
    grid-template-columns:1fr 1fr 1fr;
  }
}

@media (max-width:720px){
  .page.page-login{
    padding-top:24px;
  }
  .logo{
    width:70px;
    height:70px;
  }
  .topbar{
    margin-bottom:16px;
  }
  .panel,
  .card,
  .create{
    padding:14px;
  }
  .operations-group-hint{
    align-items:flex-start;
  }
  .facebook-inbox-reply{
    grid-template-columns:1fr;
  }
  .facebook-inbox-reply .btn{
    width:100%;
  }
  .facebook-ticket-form{
    grid-template-columns:1fr;
  }
  .facebook-ticket-panel,
  .facebook-inbox-thread{
    min-height:0;
  }
  .facebook-ticket-report{
    grid-template-columns:1fr;
  }
  .facebook-ticket-form textarea{
    grid-column:span 1;
  }
  .facebook-quote-grid{
    grid-template-columns:1fr;
  }
  .facebook-dimension-row{
    grid-template-columns:1fr;
  }
  .facebook-doc-send-panel,
  .facebook-doc-send-panel .btn{
    width:100%;
  }
}
