/* AMNKO UI/UX layer (safe overrides)
   Version: 2026-03-07
*/

:root{
  --amnko-brand:#00b8d9;
  --amnko-brand-2:#0098b3;
  --amnko-radius:14px;
}

/* Frequently used but missing in some pages */
.extra-small{font-size:.82rem; line-height:1.25;}

/* Unified primary buttons */
.btn-amnko-primary{
  background: linear-gradient(135deg, var(--amnko-brand) 0%, var(--amnko-brand-2) 100%) !important;
  border: none !important;
  color:#fff !important;
  font-weight:800;
  border-radius: 14px !important;
  padding: .65rem 1rem;
  box-shadow: 0 10px 20px rgba(0,184,217,.18);
}
.btn-amnko-primary:hover{filter:brightness(.97); transform: translateY(-1px);}
.btn-amnko-primary:active{transform: translateY(0);} 

.btn-amnko-cyan{
  background: rgba(0,184,217,.14) !important;
  border: 1px solid rgba(0,184,217,.35) !important;
  color: var(--amnko-brand) !important;
  font-weight:800;
  border-radius: 14px !important;
}

/* Cards */
.amnko-card{
  background:#fff;
  border:1px solid #e9ecef;
  border-radius: var(--amnko-radius);
  box-shadow: 0 6px 18px rgba(0,0,0,.05);
}

/* Inputs */
.form-control, .form-select{
  border-radius: 14px;
}

/* Modals */
.modal-content{border-radius: 18px; overflow:hidden;}
.modal-header.amnko-bg-gradient{
  background: linear-gradient(135deg, var(--amnko-brand) 0%, var(--amnko-brand-2) 100%) !important;
  color:#fff;
}

/* Table header */
.table thead th{white-space:nowrap;}


/* ===== AMNKO Stage2 UI ===== */

/* Page header + action bar */
.amnko-page-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom: 16px;
}
.amnko-page-title{ font-weight:900; margin:0; }
.amnko-page-sub{ color:#6c757d; font-size:.9rem; margin-top:2px; }
.amnko-actions{ display:flex; gap:8px; align-items:center; flex-wrap:wrap; }

/* Filter bar + presets */
.amnko-filter-card{
  background:#fff;
  border:1px solid #e9ecef;
  border-radius: 18px;
  box-shadow: 0 10px 22px rgba(0,0,0,.05);
}
.amnko-presets{ display:flex; gap:8px; flex-wrap:wrap; }
.amnko-pill-btn{
  border:1px solid rgba(0,0,0,.08);
  background:#fff;
  border-radius:999px;
  padding:.35rem .75rem;
  font-weight:800;
  font-size:.9rem;
}
.amnko-pill-btn:hover{ transform: translateY(-1px); box-shadow: 0 8px 16px rgba(0,0,0,.06); }
.amnko-pill-btn.active{
  background: rgba(0,184,217,.14);
  border-color: rgba(0,184,217,.35);
  color: var(--amnko-brand);
}

/* Sticky table header (opt-in) */
.amnko-sticky-head thead th{
  position: sticky;
  top: 0;
  z-index: 3;
  background: #f8f9fa;
  box-shadow: inset 0 -1px 0 rgba(0,0,0,.08);
}

/* Compact mobile list cards (shared) */
.amnko-mobile-list{ display:grid; gap:10px; }
.amnko-item-card{
  background:#fff;
  border:1px solid #e9ecef;
  border-radius: 16px;
  padding: 12px 12px;
  box-shadow: 0 8px 18px rgba(0,0,0,.05);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.amnko-item-title{ font-weight:900; }
.amnko-item-meta{ color:#6c757d; font-size:.86rem; margin-top:2px; }
.amnko-item-chevron{ color:#6c757d; opacity:.8; }

/* Floating action button (mobile) */
.amnko-fab{
  position: fixed;
  right: 16px;
  bottom: 86px; /* above mobile bottom nav */
  width: 54px;
  height: 54px;
  border-radius: 18px;
  border: none;
  background: linear-gradient(135deg, var(--amnko-brand) 0%, var(--amnko-brand-2) 100%);
  color:#fff;
  box-shadow: 0 16px 28px rgba(0,184,217,.28);
  display:flex;
  align-items:center;
  justify-content:center;
  z-index: 9999;
}
.amnko-fab:active{ transform: translateY(1px); }
@media (min-width: 992px){
  .amnko-fab{ display:none !important; }
}

/* POS helpers */
.amnko-paychip{ border-radius: 999px; font-weight: 900; }
.amnko-paychip.active{ border-color: rgba(0,184,217,.45) !important; background: rgba(0,184,217,.14) !important; color: var(--amnko-brand) !important; }

/* Scrollable tabs on mobile */
.amnko-tabs-scroll{ flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
.amnko-tabs-scroll::-webkit-scrollbar{ display:none; }
.amnko-tabs-scroll .nav-link{ white-space: nowrap; }


/* ===== AMNKO Phase2.1 UI ===== */

/* Prevent background scroll when overlays are open */
body.amnko-no-scroll{ overflow:hidden !important; }

/* POS: mobile bottom actions bar */
.pos-mobile-actions{
  position: fixed;
  left: 0;
  right: 0;
  bottom: 84px; /* above mobile bottom nav */
  z-index: 1048;
  padding: 0 12px;
  pointer-events: none;
}
.pos-mobile-actions .pos-mobile-bar{
  pointer-events: auto;
  background:#fff;
  border:1px solid #e9ecef;
  border-radius: 18px;
  box-shadow: 0 16px 28px rgba(0,0,0,.10);
  padding: 10px;
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:space-between;
  flex-wrap: wrap;
}
.pos-mobile-actions .pos-mobile-meta{ min-width: 140px; }
.pos-mobile-actions .pos-mobile-total{ font-weight:900; font-size: 1.05rem; }
.pos-mobile-actions .pos-mobile-sub{ font-size:.82rem; color:#6c757d; }
.pos-mobile-actions .btn{ border-radius: 14px !important; font-weight:900; }
.pos-mobile-actions .pos-mobile-btns{ display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.pos-mobile-actions .pos-mobile-btns .btn{ padding: .55rem .85rem; }
@media (min-width: 992px){
  .pos-mobile-actions{ display:none !important; }
}

/* POS: bottom sheet (payment) */
.pos-sheet-overlay{
  position: fixed;
  inset: 0;
  z-index: 1055;
  background: rgba(0,0,0,.45);
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding: 0 10px 92px; /* keep above mobile nav */
}
.pos-sheet{
  width: 100%;
  max-width: 560px;
  background:#fff;
  border-radius: 22px;
  overflow:hidden;
  box-shadow: 0 24px 60px rgba(0,0,0,.18);
  transform: translateY(14px);
  transition: transform 160ms ease;
}
.pos-sheet.open{ transform: translateY(0); }
.pos-sheet-handle{
  width: 44px;
  height: 5px;
  background: #dee2e6;
  border-radius: 999px;
  margin: 10px auto 6px;
}
.pos-sheet-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding: 8px 14px 10px;
  border-bottom: 1px solid #f1f3f5;
}
.pos-sheet-title{ font-weight: 900; }
.pos-sheet-body{
  padding: 12px 14px 14px;
  max-height: calc(100vh - 240px);
  overflow:auto;
}


@media (max-width: 991px){
  #paymentPanelHome{ display:none !important; }
}

/* Reports: unified toolbar */
.amnko-toolbar{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.amnko-toolbar .btn{ border-radius: 12px; font-weight: 800; }

/* Dashboard widgets */
.amnko-widget-list{ display:flex; flex-direction:column; gap:10px; }
.amnko-widget-item{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  padding: 8px 10px;
  border: 1px solid #f1f3f5;
  border-radius: 14px;
  background: #fff;
}
.amnko-widget-item .amnko-widget-name{ font-weight: 900; }
.amnko-widget-item .amnko-widget-meta{ color:#6c757d; font-size:.82rem; margin-top:2px; }
.amnko-widget-item .amnko-widget-val{ font-weight: 900; white-space: nowrap; }
