:root{--ink:#162f2e;--muted:#687775;--green:#225c49;--lime:#d4f477;--line:#dbe4df;--bg:#f3f6f4;--red:#a92b39}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--green);color:white;border:0;border-radius:9px;min-height:44px;padding:10px 17px;font-weight:650;cursor:pointer;text-decoration:none}button:hover,.button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:wait}.secondary{background:#edf2ef;color:var(--ink);border:1px solid var(--line)}.danger{background:#fce9ec;color:var(--red)}.small{font-size:14px;padding:6px 10px;min-height:36px}.text-button{background:transparent;color:var(--green);padding:5px}.auth-body{min-height:100vh;display:grid;place-items:center;background:var(--ink)}.auth-card{width:min(440px,calc(100% - 32px));margin:8vh auto;padding:36px;background:white;border-radius:20px;box-shadow:0 20px 80px #102b2910}.brand-mark{display:grid;place-items:center;background:var(--lime);color:var(--ink);width:44px;height:44px;font-size:28px;font-weight:850;border-radius:12px}.eyebrow{font-size:12px;font-weight:750;letter-spacing:1.6px;color:var(--muted)}h1{font-size:30px;letter-spacing:-1px;line-height:1.2;margin:0 0 10px}h2{font-size:19px;letter-spacing:-.4px;margin:0}h3{margin:0;font-size:17px}p{margin:10px 0 20px}label{display:block;font-size:14px;font-weight:650;margin-bottom:15px}input,select,textarea{display:block;width:100%;border:1px solid #c9d7cf;border-radius:8px;padding:10px 12px;min-height:44px;background:white;color:var(--ink);margin-top:6px}input:focus,select:focus,textarea:focus{outline:3px solid #9bccb966;border-color:var(--green)}input[type=number]{min-width:70px}textarea{resize:vertical}form>button{margin-top:6px}.shell{display:grid;grid-template-columns:228px 1fr;min-height:100vh}.sidebar{background:var(--ink);color:white;padding:26px 18px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;gap:10px;align-items:center;padding:0 6px 28px;font-size:22px;font-weight:750;letter-spacing:-.7px}.brand .brand-mark{width:35px;height:35px;font-size:23px;border-radius:8px}.sidebar small{color:#a5b8b1;padding:0 15px;font-size:12px;letter-spacing:1.3px}.nav{display:grid;gap:5px;margin-top:14px}.nav button{justify-content:flex-start;background:transparent;color:#c2d3cc;font-weight:550;border-radius:9px;padding:12px 15px}.nav button.active{background:var(--lime);color:var(--ink)}.nav-icon{width:23px;font-size:18px;text-align:center}.side-foot{margin-top:auto;padding:24px 10px 0;color:#b5cac0;font-size:14px}.workspace{min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 36px;background:white;border-bottom:1px solid var(--line);gap:10px}.shop-title{font-weight:700}.date{font-size:14px;color:var(--muted)}main.content{padding:32px 36px;max-width:1600px;margin:auto}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.heading p{margin:6px 0 0;color:var(--muted);font-size:15px}.badge{display:inline-block;border-radius:6px;padding:3px 8px;background:#edf4ef;color:var(--green);font-size:12px;font-weight:650;white-space:nowrap}.badge.warn{background:#fff0d2;color:#875718}.badge.cancelled{background:#fce9ec;color:var(--red)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:26px}.stat{background:white;border:1px solid var(--line);padding:22px;border-radius:13px}.stat:first-child{background:var(--ink);color:white}.stat:first-child .muted{color:#c1d2ca}.stat .value{display:block;font-weight:750;font-size:29px;letter-spacing:-1px;margin-top:8px}.muted{color:var(--muted);font-size:14px}.panel{background:white;border:1px solid var(--line);border-radius:13px;padding:22px;margin-bottom:22px;min-width:0}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.two-col{display:grid;grid-template-columns:1.4fr 1fr;gap:22px}.sale-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px}.summary{position:sticky;top:20px;align-self:start}.summary .total-row{margin-top:16px;padding-top:18px;border-top:1px solid var(--line);font-size:22px;font-weight:750}.summary button.primary{width:100%;margin-top:20px;background:var(--ink);color:var(--lime)}.row{display:flex;justify-content:space-between;gap:12px;margin:10px 0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.discount-fields{display:grid;grid-template-columns:85px 1fr;gap:8px}.search{padding:13px 15px;background:#f8faf9}.results{display:grid;gap:6px;max-height:320px;overflow:auto;margin-top:10px}.result{display:flex;justify-content:space-between;gap:15px;align-items:center;text-align:left;width:100%;background:#f8faf9;color:var(--ink);font-weight:500;border:1px solid var(--line)}.result strong{display:block}.result small{display:block;color:var(--muted);font-size:12px}.result .price{text-align:right;white-space:nowrap}.table-wrap{width:100%;overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{font-weight:650;text-align:left;font-size:12px;color:var(--muted);background:#f7f9f8;text-transform:uppercase;letter-spacing:.6px}th,td{padding:13px 12px;border-bottom:1px solid #e7eee9;vertical-align:middle}td strong{font-size:14px}td small{display:block;color:var(--muted);font-size:12px}.right{text-align:right}.nowrap{white-space:nowrap}.empty{text-align:center;padding:40px 20px;color:var(--muted)}.empty strong{display:block;color:var(--ink);font-size:19px;margin-bottom:8px}.cart-line{padding:18px 0;border-bottom:1px solid var(--line)}.cart-title{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:10px}.cart-controls{display:grid;grid-template-columns:85px minmax(140px,1fr) 100px;gap:15px;align-items:end}.cart-controls label{margin:0}.line-total{text-align:right;padding-bottom:12px;font-weight:750}.filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:22px}.filters label{margin:0;min-width:160px}.filters .search-label{flex:1}.notice{padding:13px 16px;border-radius:8px;background:#eef5e5;color:#3b5526;font-size:14px}.error{padding:13px 16px;border-radius:8px;background:#fce9ec;color:var(--red);font-size:14px}.help{font-size:13px;color:var(--muted)}.full{grid-column:1/-1}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);background:var(--ink);color:white;padding:14px 22px;border-radius:12px;box-shadow:0 10px 30px #0002;z-index:20}#toast[data-error=true]{background:var(--red)}dialog{border:1px solid var(--line);border-radius:16px;max-width:660px;width:calc(100% - 28px);padding:26px;max-height:90vh;overflow:auto;color:var(--ink)}dialog::backdrop{background:#102b2977;backdrop-filter:blur(3px)}dialog h2{margin-bottom:20px}dialog #close-modal{margin-top:20px}.receipt-head{text-align:center;margin-bottom:24px}.receipt-head h2{margin:0}.receipt-totals{max-width:340px;margin-left:auto}.receipt-actions{display:flex;gap:10px;margin-top:24px}.section-label{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:1px;margin:22px 0 12px}.actions{display:flex;gap:8px;flex-wrap:wrap}[hidden]{display:none!important}:focus-visible{outline:3px solid #72aa93;outline-offset:2px}@media(max-width:1150px){.shell{grid-template-columns:190px 1fr}main.content{padding:25px}.topbar{padding:17px 25px}.sale-layout{grid-template-columns:1fr}.summary{position:static}.two-col{grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.shell{display:block}.sidebar{position:static;height:auto;padding:14px}.brand{padding:0 0 10px;font-size:20px}.sidebar small,.side-foot{display:none}.nav{display:flex;overflow:auto;margin-top:0;padding-bottom:4px;gap:5px}.nav button{white-space:nowrap;font-size:14px;padding:8px 10px}.nav-icon{display:none}.topbar{padding:12px 16px}.topbar .date{display:none}main.content{padding:22px 15px}.heading{align-items:flex-start;gap:10px}.heading h1{font-size:25px}.heading p{font-size:14px}.panel{padding:16px}.stat{padding:16px}.stat .value{font-size:24px}.cards{gap:10px}.fields{grid-template-columns:1fr}.cart-controls{grid-template-columns:75px 1fr}.line-total{grid-column:1/-1;padding:0}.filters label{flex:1}.auth-card{padding:25px}.discount-fields{grid-template-columns:75px 1fr}.shop-title{font-size:14px}}@media print{body{background:white}#app,#toast,#close-modal,.receipt-actions{display:none!important}dialog{display:block!important;position:static;max-height:none;width:100%;max-width:none;border:0;padding:0;overflow:visible}dialog::backdrop{display:none}table{font-size:12px}th,td{padding:8px} .receipt-head{margin-top:20px}}
.summary .row>:last-child,.line-total{white-space:nowrap}.cart-controls{grid-template-columns:85px minmax(140px,1fr) 115px}@media(max-width:700px){.cart-controls{grid-template-columns:75px 1fr}}

/* Full-list low-stock printing, including multi-page reports. */
.panel-head:has(#low-stock-preview){flex-wrap:wrap}
dialog:has(.low-stock-print){max-width:960px}
@media print{
 @page{margin:14mm}
 html,body{height:auto!important;overflow:visible!important}
 dialog[open]{position:static!important;inset:auto!important;margin:0!important;max-height:none!important;height:auto!important;overflow:visible!important}
 .low-stock-print .table-wrap{overflow:visible!important}
 .low-stock-print table{width:100%;table-layout:fixed}
 .low-stock-print th,.low-stock-print td{overflow-wrap:anywhere;padding:8px 6px}
 .low-stock-print th:first-child{width:5%}
 .low-stock-print th:nth-child(2){width:33%}
 .low-stock-print th:nth-child(3){width:20%}
 .low-stock-print th:nth-child(4),.low-stock-print th:nth-child(5){width:14%}
 .low-stock-print th:nth-child(6){width:14%}
 .low-stock-print thead{display:table-header-group}
 .low-stock-print tr{break-inside:avoid;page-break-inside:avoid}
 .low-stock-print .receipt-head{break-inside:avoid;page-break-after:avoid}
}

@media(max-width:700px){.topbar{flex-wrap:wrap}.topbar>.actions{flex-wrap:wrap}.topbar #global-low-stock-print{background:var(--green);color:white}}
#sale-customer-panel{border-top:1px solid var(--line);margin-top:18px;padding-top:4px}#sale-customer-panel .section-label{margin-top:14px}#quick-customer{margin-bottom:16px}#credit-balance{margin-top:12px}#adjust-history td:nth-child(6){min-width:180px;white-space:normal}#customer-detail{scroll-margin-top:20px}.summary{max-height:none}

.report-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:32px}.report-breakdown .row strong{white-space:nowrap}.report-period{margin-top:0;color:var(--muted)}#adjust-preview{margin:10px 0 16px;font-size:17px;font-weight:650}@media(max-width:700px){.report-breakdown{grid-template-columns:1fr;gap:12px}}
/* Compact report workspace */
.report-primary-cards{margin-bottom:16px}.report-more{background:white;border:1px solid var(--line);border-radius:12px;margin-bottom:22px}.report-more>summary{padding:15px 18px;cursor:pointer;font-weight:700}.report-more>summary span{font-size:13px;font-weight:400;color:var(--muted);margin-left:14px}.report-more-body{padding:0 18px 4px}.report-more-body>.panel{border:0;padding:5px 0;margin-bottom:8px}.report-secondary-cards .stat:first-child{background:white;color:var(--ink)}.report-secondary-cards .stat:first-child .muted{color:var(--muted)}.report-tabs{display:flex;gap:5px;flex-wrap:wrap;padding:6px;background:#e7ede9;border:1px solid var(--line);border-radius:12px 12px 0 0}.report-tabs button{background:transparent;color:#435b51;min-height:42px;padding:9px 12px;font-size:14px;border:1px solid transparent}.report-tabs button[aria-selected=true]{background:var(--ink);color:white;border-color:var(--ink)}.report-tabs button span{font-size:12px;padding:1px 6px;border-radius:5px;background:#ffffff80;color:var(--ink)}.report-tabs button[aria-selected=true] span{background:var(--lime)}.report-tab-panel{border-top:0;border-radius:0 0 12px 12px;padding:20px}.report-tab-panel>.panel-head{margin-bottom:7px}.report-tab-panel>.help{margin-top:5px}.report-table-tools{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:14px 0 18px}.report-table-tools label{margin:0}.report-search-label{width:min(440px,70%)}.report-table-tools select{min-width:90px}.report-scroll{max-height:520px;overflow:auto;border:1px solid var(--line);border-radius:8px;overscroll-behavior:contain}.report-scroll thead th{position:sticky;top:0;z-index:1;background:#eef3ef}.report-scroll td{padding:11px 12px}.report-scroll tbody tr:nth-child(even){background:#fafcfb}.report-scroll td:first-child{white-space:nowrap}.report-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px}.report-page-count{font-size:14px;color:var(--muted)}.report-page-actions{display:flex;align-items:center;gap:10px}.report-page-actions label{display:flex;align-items:center;gap:7px;font-size:13px;margin:0}.report-page-actions select{margin:0;min-height:36px;padding:5px 8px;width:auto}.report-export-note{margin:12px 0 0;font-size:12px}.report-scroll .actions{flex-wrap:nowrap}@media(max-width:700px){.report-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.report-tabs button{justify-content:space-between;text-align:left;padding:8px;font-size:13px}.report-tab-panel{padding:14px}.report-more>summary span{display:block;margin:5px 0 0}.report-pagination{flex-direction:column;align-items:flex-start;gap:12px}.report-page-actions{width:100%;justify-content:space-between;gap:6px}.report-scroll{max-height:460px}.report-table-tools{gap:10px}.report-search-label{width:100%}.report-tab-panel .panel-head{flex-wrap:wrap}}

/* Original logo displayed within its white artwork area; original file is preserved. */
.shop-logo{position:relative;overflow:hidden;aspect-ratio:1080/648;width:160px;max-width:100%;background:white;border-radius:8px;flex-shrink:0}.shop-logo img{display:block;position:absolute;width:100%;height:auto;left:0;top:-45.5247%}.auth-card>.shop-logo{width:210px;margin:0 auto 20px}.hesara-brand{display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:20px}.hesara-brand .shop-logo{width:165px}.receipt-head .shop-logo{width:150px;margin:0 auto 12px}.stock-preview{white-space:pre-line;line-height:1.8}@media(max-width:700px){.hesara-brand{flex-direction:row;align-items:center;gap:14px}.hesara-brand .shop-logo{width:82px}.hesara-brand>span{font-size:18px}}@media print{.shop-logo{break-inside:avoid}}
