/* Toko Madura v1 — halaman POS, scanner, stok, dan laporan */
.tm-main{max-width:1440px;width:100%;}
.tm-muted,.tm-optional{color:var(--muted);font-size:11px;font-weight:400;}
.tm-positif{color:var(--green)!important;}
.tm-negatif{color:var(--red)!important;}
.tm-stat-blue{color:var(--blue-dark)!important;}
.tm-month-input{width:auto;min-width:165px;}
.tm-stat-grid .stat-card small{display:block;color:var(--muted);font-size:11px;margin-top:5px;}
.tm-profit-card{border-color:rgba(74,222,128,.4);background:rgba(74,222,128,.05);}
.tm-badge-warning{background:rgba(250,204,21,.1);color:#facc15;border-color:rgba(250,204,21,.35);}
.tm-row-active{background:var(--blue-bg);}
.tm-cell-sub{display:block;font-size:11px;color:var(--muted);margin-top:3px;line-height:1.45;}
.tm-danger-btn{color:var(--red);border-color:rgba(248,113,113,.35);}
.tm-danger-btn:hover{background:rgba(248,113,113,.1);border-color:var(--red);color:var(--red);}

.tm-quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 16px;}
.tm-quick{display:flex;align-items:center;gap:11px;text-align:left;padding:13px;border:1px solid var(--border);border-radius:11px;background:var(--card);color:var(--text);cursor:pointer;font-family:inherit;}
.tm-quick:hover{border-color:var(--blue);background:var(--blue-bg);}
.tm-quick>svg{width:21px;height:21px;color:var(--blue-dark);}
.tm-quick span{display:flex;flex-direction:column;min-width:0;}
.tm-quick strong{font-size:13px;}
.tm-quick small{font-size:11px;color:var(--muted);margin-top:2px;}
.tm-formula-note{display:flex;gap:12px;align-items:flex-start;padding:13px 15px;border:1px solid rgba(37,99,235,.32);background:var(--blue-bg);border-radius:10px;margin:-10px 0 18px;color:var(--secondary);font-size:12px;line-height:1.55;}
.tm-formula-note>div{color:var(--blue-dark);padding-top:2px;}.tm-formula-note svg{width:18px;height:18px;}.tm-formula-note p{margin:0;}.tm-formula-note strong{color:var(--text);}
.tm-dashboard-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;}
.tm-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid var(--border);font-size:13px;}
.tm-section-head>div{display:flex;flex-direction:column;gap:3px;}.tm-section-head span{color:var(--muted);font-size:11px;font-weight:400;}
.tm-low-list{padding:4px 16px;}
.tm-low-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--border);font-size:13px;}
.tm-low-row:last-child{border-bottom:none;}.tm-low-row>div{display:flex;flex-direction:column;}.tm-low-row small{font-size:11px;color:var(--muted);margin-top:3px;}.tm-low-row>span{white-space:nowrap;color:var(--secondary);font-family:monospace;font-size:12px;}

/* Kasir */
.tm-success-sale{display:flex;align-items:center;gap:10px;padding:11px 14px;border:1px solid rgba(74,222,128,.35);background:rgba(74,222,128,.08);border-radius:10px;margin-bottom:14px;color:var(--green);}
.tm-success-sale>svg{width:19px;height:19px;}.tm-success-sale>div{display:flex;flex-direction:column;flex:1;}.tm-success-sale strong{font-size:13px;}.tm-success-sale span{font-size:11px;color:var(--secondary);margin-top:2px;}
.tm-scan-card{background:linear-gradient(135deg,rgba(37,99,235,.18),rgba(37,99,235,.05));border:1px solid rgba(37,99,235,.45);border-radius:13px;padding:16px;margin-bottom:16px;position:relative;z-index:30;}
.tm-scan-main{display:flex;gap:10px;align-items:flex-end;}
.tm-scan-input-wrap,.tm-manual-search{display:flex;align-items:center;gap:8px;background:var(--card-2);border:1px solid var(--border-2);border-radius:8px;padding:0 10px;}
.tm-scan-input-wrap:focus-within,.tm-manual-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.2);}
.tm-scan-input-wrap>svg,.tm-manual-search>svg{color:var(--blue-dark);width:18px;height:18px;}
.tm-scan-input-wrap input,.tm-manual-search input{border:none!important;background:transparent!important;box-shadow:none!important;padding-left:0;}
.tm-scan-input-wrap input{font-size:18px;font-family:monospace;letter-spacing:.02em;}
.tm-camera-btn{height:41px;white-space:nowrap;}
.tm-manual-search{margin-top:10px;flex:1;min-width:220px;}
.tm-search-results{position:absolute;left:16px;right:16px;top:calc(100% - 5px);z-index:80;background:var(--card-2);border:1px solid var(--border-2);border-radius:10px;box-shadow:0 18px 40px rgba(0,0,0,.58);max-height:380px;overflow:auto;padding:5px;}
.tm-search-results button{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:10px;border:none;border-radius:7px;background:transparent;color:var(--text);font-family:inherit;text-align:left;cursor:pointer;}
.tm-search-results button:hover{background:var(--blue-bg);}.tm-search-results button>span{display:flex;flex-direction:column;min-width:0;}.tm-search-results button>span:last-child{text-align:right;align-items:flex-end;}.tm-search-results strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.tm-search-results b{font-size:12px;color:var(--blue-dark);}.tm-search-results small{font-size:11px;color:var(--muted);margin-top:3px;}.tm-search-empty{padding:22px;text-align:center;color:var(--muted);font-size:13px;}
.tm-pos-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(290px,.72fr);gap:16px;align-items:start;}
.tm-cart-card,.tm-payment-card{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden;}
.tm-payment-card{padding:17px;position:sticky;top:18px;}.tm-payment-card h3{font-family:Georgia,serif;font-size:18px;margin:0 0 16px;}
.tm-cart-list{padding:0 16px;}
.tm-cart-row{display:grid;grid-template-columns:minmax(180px,1fr) 130px 150px 34px;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--border);}
.tm-cart-product{display:flex;flex-direction:column;min-width:0;}.tm-cart-product strong{font-size:14px;}.tm-cart-product small{font-size:11px;color:var(--muted);margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.tm-qty-control{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;border:1px solid var(--border-2);border-radius:8px;overflow:hidden;}
.tm-qty-control button{height:34px;border:none;background:var(--card-2);color:var(--text);font-size:18px;cursor:pointer;}.tm-qty-control button:hover{background:var(--blue-bg);color:var(--blue-dark);}.tm-qty-control input{border:none!important;border-radius:0!important;text-align:center;padding:5px!important;min-width:0;background:var(--card)!important;box-shadow:none!important;}
.tm-cart-price{display:grid;grid-template-columns:1fr;gap:4px;text-align:right;}.tm-cart-price label{font-size:10px;color:var(--muted);}.tm-cart-price input{text-align:right;padding:6px 8px;font-family:monospace;}.tm-cart-price strong{font-size:12px;color:var(--blue-dark);}.tm-remove{color:var(--muted);}
.tm-cart-empty{display:flex;min-height:250px;align-items:center;justify-content:center;flex-direction:column;color:var(--muted);gap:7px;}.tm-cart-empty svg{width:42px;height:42px;color:var(--muted-2);}.tm-cart-empty strong{color:var(--secondary);font-size:14px;}.tm-cart-empty span{font-size:12px;}
.tm-clear-cart{margin:12px 16px;}
.tm-pay-methods{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;}.tm-pay-methods button{padding:8px;border-radius:7px;border:1px solid var(--border-2);background:var(--card-2);color:var(--secondary);font-family:inherit;cursor:pointer;}.tm-pay-methods button.active{border-color:var(--blue);background:var(--blue-bg);color:var(--blue-dark);font-weight:600;}
.tm-payment-summary{border-top:1px dashed var(--border-2);border-bottom:1px dashed var(--border-2);padding:10px 0;margin:5px 0 15px;}.tm-payment-summary>div{display:flex;justify-content:space-between;gap:12px;padding:4px 0;font-size:12px;color:var(--secondary);}.tm-payment-summary b{color:var(--text);font-family:monospace;}.tm-payment-summary .total{font-size:16px;padding:9px 0;border-top:1px solid var(--border);margin-top:5px;}.tm-payment-summary .total span,.tm-payment-summary .total b{color:var(--text);font-weight:700;}

/* Stok */
.tm-stock-adjust .tm-section-head,.tm-edit-stock .tm-section-head{padding:0 0 13px;margin-bottom:14px;}
.tm-stock-adjust-grid{display:grid;grid-template-columns:1.25fr .8fr .8fr 1fr auto;gap:10px;align-items:end;}.tm-stock-adjust-grid .field{margin:0;}.tm-stock-adjust-grid>.btn{height:40px;}
.tm-inline-scan{display:flex;gap:6px;}.tm-inline-scan .btn{padding:9px 12px;}
.tm-list-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 10px;}.tm-list-toolbar .tm-manual-search{margin:0;max-width:520px;}.tm-list-toolbar>span{font-size:12px;color:var(--muted);}
.tm-stock-table td{vertical-align:top;}.tm-tier-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px;}.tm-tier-chips span{font-size:10px;padding:3px 6px;background:var(--card-2);border:1px solid var(--border);border-radius:5px;color:var(--muted);}
.tm-tier-editor{border-top:1px solid var(--border);margin-top:15px;padding-top:12px;}.tm-tier-editor>p{font-size:12px;font-weight:600;color:var(--secondary);margin:0 0 9px;}.tm-tier-edit-row{display:grid;grid-template-columns:1.2fr 1fr .7fr;gap:12px;align-items:end;padding:10px 0;border-top:1px dashed var(--border);}.tm-tier-edit-row>div:first-child{display:flex;flex-direction:column;align-self:center;}.tm-tier-edit-row small{font-size:11px;color:var(--muted);margin-top:3px;}.tm-tier-edit-row .field{margin:0;}.tm-form-actions{display:flex;gap:8px;margin-top:15px;flex-wrap:wrap;}

/* Riwayat */
.tm-filter-bar{display:grid;grid-template-columns:170px 150px minmax(230px,1fr) auto;gap:10px;align-items:end;background:var(--card);border:1px solid var(--border);border-radius:11px;padding:13px;margin-bottom:15px;}.tm-filter-bar .field{margin:0;}.tm-filter-bar .tm-manual-search{margin:0;}.tm-filter-total{display:flex;flex-direction:column;align-items:flex-end;padding-bottom:4px;}.tm-filter-total small{color:var(--muted);font-size:10px;}.tm-filter-total strong{font-size:16px;font-family:monospace;margin-top:2px;}
.tm-sale-detail{border-color:var(--blue);}.tm-detail-totals{display:flex;justify-content:flex-end;gap:16px;flex-wrap:wrap;padding:12px 0;font-size:12px;color:var(--muted);}.tm-detail-totals b{display:block;color:var(--text);font-family:monospace;margin-top:2px;}.tm-cancel-note{font-size:12px;color:var(--red);padding:10px;background:rgba(248,113,113,.08);border-radius:7px;}

/* Laporan */
.tm-report-actions{display:flex;gap:8px;flex-wrap:wrap;}.tm-profit-equation{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px;margin:-8px 0 18px;}.tm-profit-equation>span{display:flex;flex-direction:column;align-items:center;font-family:monospace;font-weight:700;font-size:14px;}.tm-profit-equation small{font-family:inherit;font-size:10px;color:var(--muted);font-weight:400;margin-top:4px;}.tm-profit-equation>b{color:var(--muted);font-size:16px;}
.tm-report-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;}.tm-daily-bars{padding:10px 16px 14px;}.tm-daily-bars>div{display:grid;grid-template-columns:90px minmax(80px,1fr) 110px;gap:10px;align-items:center;padding:6px 0;font-size:11px;}.tm-daily-bars>div>span{color:var(--muted);}.tm-daily-bars i{display:block;height:7px;border-radius:999px;background:var(--card-2);overflow:hidden;}.tm-daily-bars em{display:block;height:100%;background:var(--blue);border-radius:999px;}.tm-daily-bars b{text-align:right;font-family:monospace;font-weight:500;color:var(--secondary);}

/* Scanner kamera */
.tm-scanner-modal{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.82);display:flex;align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(4px);}
.tm-scanner-box{width:min(650px,100%);background:var(--card);border:1px solid var(--border-2);border-radius:14px;overflow:hidden;box-shadow:0 28px 70px rgba(0,0,0,.7);}.tm-scanner-box .tm-section-head{padding:14px 16px;}.tm-scanner-box>p{font-size:12px;color:var(--muted);text-align:center;padding:12px 16px;margin:0;}
.tm-video-wrap{position:relative;aspect-ratio:4/3;background:#000;overflow:hidden;}.tm-video-wrap video{width:100%;height:100%;object-fit:cover;display:block;}.tm-scan-line{position:absolute;left:12%;right:12%;top:50%;height:2px;background:#3b82f6;box-shadow:0 0 12px #3b82f6;animation:tmScan 1.7s ease-in-out infinite alternate;}.tm-scan-corners{position:absolute;inset:18%;border:2px solid rgba(255,255,255,.8);border-left-color:#3b82f6;border-right-color:#3b82f6;border-radius:8px;}
@keyframes tmScan{from{transform:translateY(-70px)}to{transform:translateY(70px)}}

@media(max-width:1100px){
  .tm-quick-actions{grid-template-columns:repeat(2,1fr);}
  .tm-pos-layout{grid-template-columns:1fr;}.tm-payment-card{position:static;}
  .tm-stock-adjust-grid{grid-template-columns:1fr 1fr 1fr;}.tm-stock-adjust-grid>.btn{width:100%;}
  .tm-filter-bar{grid-template-columns:1fr 1fr;}.tm-filter-total{align-items:flex-start;}
}
@media(max-width:900px){
  .tm-main{max-width:none;}.tm-dashboard-grid,.tm-report-grid{grid-template-columns:1fr;}.tm-quick-actions{grid-template-columns:1fr 1fr;}
  .tm-scan-main{flex-direction:column;align-items:stretch;}.tm-camera-btn{width:100%;}.tm-search-results{left:10px;right:10px;}
  .tm-cart-row{grid-template-columns:1fr 120px 34px;}.tm-cart-product{grid-column:1/-1;}.tm-cart-price{grid-column:1/3;grid-template-columns:110px 1fr;align-items:center;text-align:left;}.tm-cart-price strong{text-align:right;}.tm-cart-price label{display:none;}.tm-cart-price input{text-align:left;}
  .tm-stock-adjust-grid,.tm-tier-edit-row,.tm-filter-bar{grid-template-columns:1fr;}.tm-filter-total{align-items:flex-start;}.tm-list-toolbar{align-items:stretch;flex-direction:column;}.tm-list-toolbar .tm-manual-search{max-width:none;}
  .tm-profit-equation{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;}.tm-profit-equation>span{min-width:105px;}
  .tm-report-actions{width:100%;}.tm-report-actions>*{flex:1;}.tm-month-input{width:100%;}
}
@media(max-width:520px){
  .tm-quick-actions{grid-template-columns:1fr;}.tm-cart-row{grid-template-columns:1fr 34px;}.tm-qty-control{grid-column:1/2;width:135px;}.tm-cart-price{grid-column:1/-1;}.tm-remove{grid-column:2;grid-row:2;}
  .tm-pay-methods{grid-template-columns:1fr 1fr;}.tm-daily-bars>div{grid-template-columns:76px 1fr;}.tm-daily-bars b{grid-column:2;text-align:left;}.tm-scanner-modal{padding:8px;}.tm-video-wrap{aspect-ratio:3/4;}
}

.tm-price-locked{display:block;margin-top:4px;color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.02em}
.tm-cart-price input[readonly]{cursor:not-allowed;opacity:.78;background:var(--surface-2)}
.tm-role-note{padding:10px 12px;border:1px solid var(--border);border-radius:10px;color:var(--muted);font-size:12px;line-height:1.5;background:var(--surface-2)}
