.pos-workspace{display:grid;gap:14px}.pos-notice{padding:10px 14px;border-radius:8px;background:#e8f7f5;color:#075c59;font-weight:700}.pos-notice.error{background:#fdecec;color:#9d2424}.pos-tabs{display:flex;gap:8px;flex-wrap:wrap}.pos-tabs button{border:1px solid #cfd9dd;background:#fff;padding:10px 16px;border-radius:7px;font-weight:800;color:#29404e}.pos-tabs button.active{background:#0b6f73;color:#fff;border-color:#0b6f73}.pos-sale-grid,.pos-ticket-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,1fr);gap:14px}.pos-catalog{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:9px;max-height:610px;overflow:auto}.pos-service{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-height:82px;padding:12px;border:1px solid #dce5e8;border-radius:9px;background:#f9fbfb;text-align:left}.pos-service b{color:#0b5661}.pos-service small{color:#667983}.pos-cart{position:sticky;top:10px;align-self:start}.pos-cart-line{display:grid;grid-template-columns:minmax(0,1fr) 62px 110px 32px;gap:7px;align-items:center;padding:9px 0;border-bottom:1px solid #e7edef}.pos-cart-line input,.pos-cart-line select,.pos-adjustments input,.pos-payment input,.pos-refund input,.pos-refund select,.pos-clock select{width:100%;box-sizing:border-box}.pos-adjustments{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.pos-totals{display:grid;gap:6px;padding:12px;background:#f2f7f7;border-radius:8px;margin-bottom:12px}.pos-totals div{display:flex;justify-content:space-between}.pos-totals .grand{font-size:1.2rem;font-weight:900;color:#093c46}.pos-ticket-grid .record-list{max-height:620px;overflow:auto}.pos-ticket-button{display:grid;grid-template-columns:1fr auto;gap:4px;width:100%;padding:12px;border:0;border-bottom:1px solid #e4ebed;background:#fff;text-align:left}.pos-ticket-button.active{background:#e7f6f4}.pos-ticket-button small{grid-column:1/-1;color:#6c7b83}.pos-ticket-summary{display:grid;gap:5px}.pos-ticket-summary>div{display:flex;justify-content:space-between}.pos-ticket-lines{margin:12px 0;border-top:1px solid #dfe7e9}.pos-ticket-lines div{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid #edf1f2}.pos-ticket-lines span b,.pos-ticket-lines span small{display:block}.pos-ticket-lines span small{color:#657982;margin-top:2px}.pos-payment,.pos-refund,.pos-clock{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid #dfe7e9}.pos-payment label,.pos-refund label,.pos-clock label{min-width:150px;flex:1}.pos-refund h4{width:100%;margin:0;color:#8a2929}.pos-customer-item{display:block;width:100%;padding:11px;border:0;border-bottom:1px solid #e3eaec;background:#fff;text-align:left}.pos-customer-item b,.pos-customer-item small{display:block}.pos-customer-item small{color:#667780}.pos-payroll-empty{text-align:center;color:#697a83;padding:20px}.windows-transactions{margin-bottom:14px}.windows-transaction-filters{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.windows-transaction-filters label{display:grid;gap:3px;font-size:.72rem;color:#617681}.windows-transaction-filters input{min-width:135px}.windows-transaction-list{border:1px solid #e0e8ea;border-radius:8px;max-height:430px!important}.windows-transaction-detail{border:1px solid #e0e8ea;border-radius:8px;padding:12px;min-width:0;overflow:auto}.windows-ticket-head{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.windows-ticket-head>div{background:#f2f7f7;border-radius:7px;padding:9px}.windows-ticket-head span,.windows-ticket-head strong{display:block}.windows-ticket-head span{font-size:.7rem;text-transform:uppercase;color:#71858e}.windows-service-table{width:100%;border-collapse:collapse}.windows-service-table th,.windows-service-table td{padding:9px;border-bottom:1px solid #e4eaec;text-align:left}.windows-service-table td small{display:block;color:#71818a;margin-top:2px}.windows-service-table tfoot{background:#f5f8f8}@media(max-width:980px){.pos-sale-grid,.pos-ticket-grid{grid-template-columns:1fr}.pos-cart{position:static}.windows-ticket-head{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.pos-cart-line{grid-template-columns:1fr 55px 1fr 30px}.pos-cart-line strong{grid-column:1/-1}.pos-adjustments{grid-template-columns:1fr}.pos-tabs button{flex:1 1 45%}.windows-ticket-head{grid-template-columns:1fr}}

/* 2026.9.12.5 Register layout and real-payment actions. */
.pos-register-commandbar {
  position: sticky;
  top: 0;
  z-index: 30;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;
  min-height: 60px;
  padding: 7px 10px;
  border-radius: 10px;
  background: #071a2b;
  color: #fff;
  box-shadow: 0 6px 18px rgba(7,26,43,.14);
}
.pos-register-commandbar h2 { margin: 1px 0 0; font-size: 20px; line-height: 1.05; }
.pos-register-commandbar span { color: #d6ad45; font-size: 9px; font-weight: 800; letter-spacing: .08em; }
.pos-register-commandbar button { min-height: 44px; margin: 0; }
.pos-register-hamburger { display:flex; align-items:center; justify-content:center; width:44px; min-height:44px; padding:0; border:1px solid #365168; border-radius:8px; background:#0d2b43; color:#fff; font-size:24px; cursor:pointer; }
.pos-ticket-grid--compact { grid-template-columns: minmax(145px,190px) minmax(0,1fr); }
.pos-ticket-rail { padding: 10px; }
.pos-ticket-rail .panel-head { align-items: center; }
.pos-ticket-rail .panel-head h3 { margin-bottom: 8px; }
.pos-ticket-rail .panel-head button { width: 38px; min-height: 38px; padding: 0; }
.pos-ticket-search { min-height: 38px; margin: 0 0 6px; padding: 8px; font-size: 13px; }
.pos-ticket-rail .pos-ticket-button { grid-template-columns: 1fr; gap: 2px; padding: 9px 7px; border-left: 4px solid transparent; }
.pos-ticket-rail .pos-ticket-button.active { border-left-color: #00a84f; }
.pos-ticket-rail .pos-ticket-button b { font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pos-ticket-rail .pos-ticket-button strong { font-size: 12px; color: #0b6f73; }
.pos-ticket-rail .pos-ticket-button small { display: none; }
.pos-ticket-payment { min-width: 0; }
.pos-payment { display: grid; grid-template-columns: minmax(150px,1fr) auto auto minmax(150px,1.2fr); align-items: end; }
.pos-payment button { min-height: 50px; min-width: 110px; border-radius: 8px; font-weight: 900; }
.pos-payment .pos-cash { border: 0; background: #f5a000; color: #172634; }
.pos-payment #posCloverPay { width: auto; margin: 0; background: #00a84f; color: #fff; }
.pos-hosted-payment-hint { margin-top: 7px; color: #647681; font-size: 11px; text-align: right; }

@media (max-width: 980px) {
  .pos-ticket-grid.pos-ticket-grid--compact { grid-template-columns: 105px minmax(0,1fr); gap: 8px; }
  .pos-ticket-grid--compact .panel { padding: 10px; }
  .pos-ticket-rail .panel-head span { display: none; }
  .pos-ticket-rail .panel-head h3 { font-size: 17px; }
  .pos-payment { position: sticky; bottom: 0; z-index: 20; grid-template-columns: repeat(3,1fr); padding: 10px; background: #fff; box-shadow: 0 -5px 18px rgba(7,26,43,.14); }
  .pos-payment label { grid-column: 1/-1; margin: 0; }
  .pos-payment button { min-width: 0; }
}

@media (max-width: 560px) {
  .pos-register-commandbar { min-height: 54px; padding: 5px 7px; }
  .pos-register-commandbar h2 { font-size: 18px; }
  .pos-register-commandbar span { display: none; }
  .pos-register-commandbar #posHeaderRefresh { font-size: 0; width: 44px; padding: 0; }
  .pos-register-commandbar #posHeaderRefresh::before { content: '↻'; font-size: 21px; }
  .pos-ticket-grid.pos-ticket-grid--compact { grid-template-columns: 86px minmax(0,1fr); }
  .pos-ticket-rail { padding: 5px !important; }
  .pos-ticket-rail .panel-head { display: none; }
  .pos-ticket-search { font-size: 11px; padding: 6px 4px; }
  .pos-ticket-payment .panel-head { gap: 5px; }
  .pos-ticket-payment .panel-head h3 { font-size: 17px; }
  .pos-ticket-payment #posSyncOrder { display: none; }
}

/* Clover Station 2018 WebView fallback (CSS Grid is not available there). */
.nsp-clover-legacy .pos-register-commandbar {
  display: flex !important;
}
.nsp-clover-legacy .pos-register-commandbar > div {
  flex: 1 1 auto;
}
.nsp-clover-legacy .pos-ticket-grid.pos-ticket-grid--compact {
  display: flex !important;
  align-items: stretch;
}
.nsp-clover-legacy .pos-ticket-grid.pos-ticket-grid--compact > :first-child {
  flex: 0 0 170px;
  width: 170px;
  min-width: 170px;
  margin-right: 8px;
}
.nsp-clover-legacy .pos-ticket-grid.pos-ticket-grid--compact > :last-child {
  flex: 1 1 auto;
  min-width: 0;
}
.nsp-clover-legacy .pos-payment {
  display: flex !important;
  flex-wrap: nowrap;
}
.nsp-clover-legacy .pos-payment label {
  flex: 1 1 auto;
}
.nsp-clover-legacy .pos-payment #posCloverPay {
  min-width: 160px;
}

@media (max-width: 980px) {
  .nsp-clover-legacy .pos-ticket-grid.pos-ticket-grid--compact > :first-child {
    flex-basis: 105px;
    width: 105px;
    min-width: 105px;
  }
  .nsp-clover-legacy .pos-payment {
    flex-wrap: wrap;
  }
  .nsp-clover-legacy .pos-payment label {
    flex: 0 0 100%;
  }
  .nsp-clover-legacy .pos-payment button,
  .nsp-clover-legacy .pos-payment #posCloverPay {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
  }
}
