:root{color-scheme:light;font-family:Segoe UI,SF Pro Text,Helvetica Neue,sans-serif;--bg: #f5f7fa;--card: #ffffff;--line: #d8e0ea;--text: #123;--muted: #4d6277;--accent: #005cb9;--accent-2: #e64100}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top right,#eef6ff,var(--bg) 55%);color:var(--text)}input,select,button{font:inherit}.shell{min-height:100vh;padding:1rem}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:1rem;background:radial-gradient(circle at 15% 10%,#dcecff,#f4f7fb 60%)}.auth-card{width:100%;max-width:420px;height:150px;margin-top:-300px;background:#fff0;border:0 solid var(--line);border-radius:0;padding:1rem 1rem 9.35rem;display:grid;gap:.7rem}.auth-card h1{margin:0}.auth-brand{display:flex;align-items:center;gap:.6rem}.auth-brand img{width:160px;height:160px;border-radius:0;box-shadow:none;background:transparent;margin-left:90px}.auth-login-title{display:flex;flex-direction:column;margin-right:-23px}.auth-card p{margin:0;color:var(--muted)}.auth-card input{width:100%;padding:.7rem;border-radius:12px;border:1px solid var(--line)}.auth-role-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.auth-role-tabs button{background:#e8f0fa;color:#234b73}.auth-role-tabs .active{background:#005cb9;color:#fff}.auth-error{color:#b91c1c!important;font-weight:600}.auth-submit{background:#49b6ff;transition:background-color .14s ease,transform .14s ease}.auth-submit:hover:not(:disabled){background:#1f8fd6;transform:translateY(-1px)}.auth-submit:active:not(:disabled){background:#1777b3;transform:translateY(0)}.auth-bottom-logo{display:flex;justify-content:center;margin-top:.25rem}.auth-bottom-logo img{width:56px;height:auto}.topbar{display:grid;gap:.6rem;margin-bottom:1rem}.header-card{background:#04070c;border-radius:18px;padding:.68rem .74rem;display:flex;align-items:center;justify-content:space-between;gap:.65rem;box-shadow:0 6px 14px #00000029}.brand{display:flex;align-items:center;gap:.65rem;min-width:0}.brand-logo{width:46px;height:46px;border-radius:0;flex-shrink:0}.brand-copy h1{margin:0;color:#fff;font-size:2rem;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-user{margin:.12rem 0 0;color:#d5d5d5;font-size:.95rem;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-role{margin:0;color:#fff;font-size:.95rem;white-space:nowrap}.header-pill{display:inline-block;width:fit-content;background:#2436b8;color:#fff;border-radius:999px;font-weight:800;font-size:1.02rem;padding:.28rem .78rem}.logout-btn{background:#be1c0d;color:#fff;border:1px solid #ffffffb8;border-radius:999px;padding:.36rem .95rem;font-size:.9rem;letter-spacing:.2px;box-shadow:inset 0 0 0 1px #ffffff3d;white-space:nowrap;flex-shrink:0}.logout-btn:hover:not(:disabled){background:#ff8080;transform:translateY(-1px)}.logout-btn:active:not(:disabled){background:#fd5c5c;transform:translateY(0)}.notice{margin:0 0 1rem;background:#e8f4ff;color:#0f4f8b;border:1px solid #b9d8f4;padding:.65rem;border-radius:12px}.cashier-tabs{display:flex;gap:.45rem;margin-bottom:.7rem}.cashier-tabs button{background:#e6ecf5;color:#20324a;border:1px solid #d3dbe8}.cashier-tabs button.active{background:#111827;color:#fff;border-color:#111827}.grid{display:grid;grid-template-columns:repeat(2,minmax(320px,1fr));gap:1rem}.billing-grid{padding-bottom:8.8rem}.panel{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:.9rem;box-shadow:0 8px 26px #1027440f}.panel h2{margin:0 0 .8rem}.panel-title{display:inline-flex;align-items:center;gap:.42rem}.panel-icon{font-size:1rem;line-height:1}.panel input,.panel select{width:100%;padding:.6rem;border-radius:10px;border:1px solid var(--line);background:#fff}.form-grid{display:grid;gap:.87rem;margin-bottom:.75rem}.bill-discount-inline{display:grid;grid-template-columns:88px 1fr;gap:.5rem}.discount-row{display:grid;grid-template-columns:92px 1fr;gap:.45rem;margin-top:50px;margin-bottom:50px}.list{display:grid;gap:.5rem;max-height:320px;overflow:auto;padding-right:.2rem}.list-row{border:1px solid var(--line);border-radius:12px;padding:.55rem;display:flex;justify-content:space-between;align-items:center;gap:.5rem}.list-row p{margin:.1rem 0;color:var(--muted);font-size:1.88rem}.cart-list .list-row{background:#eceff3;border-color:#d0d7e1}button{border:none;border-radius:10px;background:var(--accent);color:#fff;padding:.55rem .9rem;font-weight:700}button:disabled{background:#9ea8b7}.add-feedback-btn{transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease}.add-feedback-btn:hover:not(:disabled){background:#0a6fd3;box-shadow:0 8px 18px #005cb947;transform:translateY(-1px)}.add-feedback-btn:active:not(:disabled){background:#004c99;box-shadow:0 3px 10px #00458a59;transform:translateY(0) scale(.98)}.catalog-add-wrap{display:flex;align-items:center;gap:.35rem}.catalog-qty-input{width:30px}.qty-box{display:flex;align-items:center;gap:.5rem}.qty-box button{width:32px;height:32px;padding:0}.qty-box input{width:58px;height:32px;text-align:center;border:1px solid #c7d1de;border-radius:8px;background:#fff;padding:.2rem}.return-line-controls{display:grid;gap:.35rem;width:145px}.return-line-controls input,.return-line-controls select{width:100%}.totals p,.totals h3{margin:0}.totals{position:fixed;right:.9rem;bottom:.7rem;z-index:50;width:min(340px,calc(100vw - 1.2rem));border:1px solid #1f3652;border-radius:16px;background:#0e2238;color:#fff;padding:.62rem .75rem;margin-top:0;box-shadow:0 16px 36px #05132252;display:grid;gap:.28rem}.totals p{font-size:.86rem;opacity:.88}.totals h3{font-size:1.08rem}.checkout{width:100%;margin-top:.35rem;background:var(--accent-2)}.stock-row{display:flex;gap:.4rem;align-items:center}.stock-row input{width:110px}.mobile-quickbar{display:none}.add-customer-fab{position:fixed;right:1rem;bottom:5rem;z-index:55;width:52px;height:52px;border-radius:999px;background:#15a34a;color:#fff;display:grid;place-items:center;box-shadow:0 12px 24px #061c0e47;padding:0}.add-customer-fab svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}.fab-plus{position:absolute;top:8px;left:10px;font-size:.85rem;font-weight:800;line-height:1}.admin-metrics{display:grid;gap:.55rem;grid-template-columns:repeat(2,minmax(120px,1fr))}.admin-metrics article{border:1px solid var(--line);border-radius:12px;padding:.7rem;background:#f7faff}.admin-metrics p{margin:0;color:var(--muted)}.admin-metrics strong{display:block;margin-top:.2rem;font-size:1.15rem}.admin-mobile{display:grid;gap:.9rem}.admin-shell{display:grid;grid-template-columns:220px 1fr;gap:.9rem;align-items:start}.admin-sidebar{background:#fbfcfe;border:1px solid #d9dee7;border-radius:14px;padding:.5rem;display:grid;gap:.45rem;position:sticky;top:.6rem}.admin-sidebar button{width:100%;text-align:left;background:#e9edf4;color:#253247;border:1px solid #d1d8e4;border-radius:10px;padding:.6rem .68rem;font-weight:700}.admin-sidebar button.active{background:#111827;color:#fff;border-color:#111827}.admin-content{min-width:0}.admin-table{display:grid;gap:.3rem}.admin-table header,.admin-table article{display:grid;grid-template-columns:1.2fr .95fr .75fr .95fr;gap:.5rem;align-items:center;padding:.55rem .6rem;border-radius:10px}.admin-table header{background:#e7ebf3;border:1px solid #d3dbe8;font-weight:700;color:#38465d;font-size:.84rem}.admin-table .th-sort{width:100%;text-align:left;background:transparent;border:none;padding:0;color:inherit;font:inherit;font-weight:700}.stock-table header,.stock-table article{grid-template-columns:1.2fr .8fr .8fr .65fr .75fr}.customer-table header,.customer-table article{grid-template-columns:1.1fr .9fr .6fr .9fr .9fr}.item-wise-table header,.item-wise-table article{grid-template-columns:1.2fr .9fr .7fr .7fr .7fr}.returns-table header,.returns-table article{grid-template-columns:.7fr 1.5fr .6fr .8fr 1fr}.th-action{font-weight:700}.action-cell{display:flex;justify-content:flex-start}.row-danger{background:#b42318;border-radius:7px;padding:.34rem .52rem;font-size:.74rem}.admin-table article{background:#f7f9fc;border:1px solid #dde4ee;font-size:.9rem;color:#192538}.admin-page-actions{display:flex;gap:.5rem;margin-bottom:.6rem}.admin-page-actions button{background:#1f2937;border-radius:8px;padding:.45rem .7rem;font-size:.8rem}.report-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.55rem}.report-head h2{margin:0}.report-head select{width:150px;border-radius:8px;border:1px solid #cfd8e5;background:#fff;padding:.42rem}.admin-inline-form{display:grid;gap:.45rem;margin-bottom:.65rem;background:#f3f6fb;border:1px solid #d7e0eb;border-radius:10px;padding:.55rem}.admin-inline-form input,.admin-inline-form select{width:100%;padding:.52rem;border-radius:8px;border:1px solid #cad4e2;background:#fff}.admin-inline-form textarea{width:100%;padding:.52rem;border-radius:8px;border:1px solid #cad4e2;background:#fff;font:inherit;resize:vertical}.hidden-file-input{display:none}.admin-inline-form div{display:flex;gap:.45rem}.stock-suggestions{display:grid;gap:.25rem;max-height:180px;overflow:auto;border:1px solid #d3dce8;border-radius:8px;background:#fff;padding:.28rem}.stock-suggestions button{text-align:left;background:#f2f5fa;color:#1f2937;border:1px solid #dde3ec;border-radius:6px;padding:.4rem .52rem}.customer-suggestions{display:grid;gap:.25rem;max-height:170px;overflow:auto;border:1px solid #d3dce8;border-radius:8px;background:#fff;padding:.28rem}.customer-suggestions button{text-align:left;background:#f2f5fa;color:#1f2937;border:1px solid #dde3ec;border-radius:6px;padding:.4rem .52rem}.form-hint{margin:0;font-size:.78rem;color:#5c6778}.outstanding-text{color:#b91c1c!important;font-weight:700}.admin-inline-form button{padding:.42rem .7rem;border-radius:8px}.admin-inline-form .ghost{background:#6b7280}.admin-inline-form .danger{background:#b42318}.returned-stock-panel{margin-bottom:.65rem;border:1px solid #d9e1ec;border-radius:12px;background:#f8fafd;padding:.55rem}.returned-stock-panel h3{margin:0 0 .45rem;font-size:.96rem;color:#1c2739}.returned-inline-form{margin-bottom:.4rem}.returned-log{display:grid;gap:.35rem}.returned-log .list-row span{color:#5a677a;font-size:.75rem;white-space:nowrap}.stock-current-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.stock-current-head h3{margin:0}.stock-current-actions{margin-bottom:0}.admin-table .low{color:#b42318;font-weight:800}.admin-mobile-section{background:#fbfcfe;border:1px solid #d9dee7;border-radius:14px;padding:.95rem;box-shadow:0 6px 16px #121c2d0d}.admin-mobile-section h2{margin:0 0 .8rem;font-size:1.25rem;font-weight:700;letter-spacing:.1px;color:#172133}.snapshot-layout{display:grid;grid-template-columns:2fr 1fr;gap:.7rem}.snapshot-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.snapshot-grid article{background:#eef1f6;border:1px solid #d7dde8;border-radius:12px;padding:.62rem .55rem;text-align:center}.snapshot-grid p{margin:0;font-size:.85rem;color:#4e5a6d;font-weight:600;text-transform:capitalize}.snapshot-grid strong{font-size:1.22rem;color:#121826;font-weight:800}.low-stock-card{background:#eceff5;color:#1a2436;border:1px solid #d7dde8;border-radius:12px;display:grid;place-content:center;gap:.25rem;text-align:center;transition:background-color .12s ease,transform .12s ease}.low-stock-card strong{font-size:1.34rem}.low-stock-card span{font-size:.77rem;color:#5a6678}.low-stock-card:hover{background:#e3e8f1;transform:translateY(-1px)}.chart-title-row{display:flex;justify-content:space-between;align-items:center;gap:.6rem}.chart-title-row h2{margin:0}.rep-chart-title{white-space:nowrap}.rep-title-row{flex-wrap:nowrap;align-items:center}.rep-search{display:flex;align-items:center;flex:1;justify-content:flex-end}.rep-filters{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;flex-wrap:wrap}.rep-search input,.rep-search select{width:210px;border-radius:10px;border:1px solid #cfd6e2;background:#f7f9fc;padding:.55rem;color:#1c2739}.rep-search-wide input,.rep-search-wide select{width:190px}.rep-date-filters{display:flex;align-items:center;gap:.35rem}.rep-date-field{display:grid;gap:.15rem}.rep-date-field span{font-size:.72rem;font-weight:700;color:#5a677a;line-height:1}.rep-date-field input{width:138px;border-radius:10px;border:1px solid #cfd6e2;background:#f7f9fc;padding:.55rem;color:#1c2739}.rep-result{color:#667286;font-size:.79rem;margin-top:.35rem}.bar-chart{margin-top:.5rem;display:grid;grid-template-columns:repeat(8,1fr);align-items:end;gap:.35rem;min-height:210px;padding:.45rem;background:linear-gradient(to top,#e2e7f0 1px,transparent 1px) 0 0/100% 34px;border:1px solid #dde3ec;border-radius:12px}.rep-bar-chart{grid-template-columns:repeat(auto-fit,minmax(62px,1fr));overflow-x:auto}.bar-col{display:grid;justify-items:center;align-content:end;gap:.22rem}.bar-value{font-size:.68rem;color:#5d697c}.bar-wrap{width:100%;height:150px;display:flex;align-items:flex-end}.bar{width:100%;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#64748b,#475569)}.bar-label{font-size:.62rem;color:#546074;transform:rotate(-48deg);transform-origin:top left;white-space:nowrap;margin-top:.6rem}.low-stock-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:100;display:grid;place-items:center;padding:.9rem}.low-stock-modal-card{width:min(560px,100%);max-height:80vh;overflow:auto;background:#fbfcfe;border:1px solid #d8e0eb;border-radius:14px;padding:.75rem;box-shadow:0 20px 40px #070f1933}.low-stock-modal-head{display:flex;justify-content:space-between;align-items:center}.low-stock-modal-head h3{margin:0;color:#172234}.low-stock-modal-head button{background:#5f6c80;border-radius:999px;font-size:.78rem;padding:.35rem .7rem}.low-stock-modal-list{margin-top:.6rem;display:grid;gap:.45rem}@media (max-width: 960px){.grid{grid-template-columns:1fr}}@media (max-width: 520px){body{background:linear-gradient(170deg,#dfe8f4,#edf2f8 48%,#f7f9fc)}.shell{padding:.6rem .6rem 5.8rem}.topbar{position:sticky;top:0;z-index:30;margin-bottom:.65rem}.header-card{border-radius:16px;padding:.62rem}.brand-logo{width:42px;height:38px;border-radius:0}.brand-copy h1{font-size:clamp(1.45rem,6.2vw,1.95rem)}.brand-user,.brand-role{font-size:clamp(.62rem,3vw,.86rem)}.header-pill{font-size:.75rem;padding:.26rem .62rem}.logout-btn{background:#be1c0d;border-color:#fffc;font-size:.73rem;font-weight:800;padding:.28rem .62rem;box-shadow:0 8px 20px #07111e57}.notice{margin-top:.7rem;border:none;box-shadow:0 8px 22px #1238621a;border-radius:14px}.grid{gap:.8rem;margin-top:.75rem}.billing-grid{padding-bottom:11.8rem}.panel{border:1px solid #dce4ee;border-radius:18px;padding:.85rem;background:#fffffff2;box-shadow:0 10px 24px #11273e14}.panel h2{font-size:1.08rem;margin-bottom:.6rem}.panel input,.panel select{border-radius:12px;padding:.7rem;border-color:#d5dfeb}.cashier-tabs{margin-top:.68rem}.list{max-height:250px;gap:.42rem}.list-row{border-radius:14px;padding:.62rem;background:#fff}.list-row strong{font-size:1.03rem}.list-row p{font-size:.82rem}.qty-box button{width:34px;height:34px;border-radius:9px}.stock-row input{width:92px}.checkout{display:none}.totals{left:.65rem;right:.65rem;width:auto;bottom:4.9rem}.mobile-quickbar{display:flex;position:fixed;left:.65rem;right:.65rem;bottom:.65rem;z-index:50;align-items:center;justify-content:space-between;gap:.6rem;background:#0e2238;color:#fff;border-radius:16px;padding:.6rem .7rem;box-shadow:0 16px 36px #0513226b}.mobile-quickbar p{margin:0;font-size:.8rem;opacity:.8}.mobile-quickbar strong{display:block;margin-top:.14rem;font-size:1.07rem}.mobile-quickbar button{background:#e64100;white-space:nowrap;border-radius:11px;padding:.62rem .88rem}.discount-row{grid-template-columns:82px 1fr}.add-customer-fab{right:.95rem;bottom:5.6rem;width:48px;height:48px}.admin-metrics{grid-template-columns:1fr}.admin-shell{grid-template-columns:1fr;gap:.6rem}.admin-sidebar{position:static;display:grid;grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto;padding:.35rem;gap:.4rem}.admin-sidebar button{white-space:nowrap;padding:.5rem .66rem;font-size:.82rem}.admin-table header,.admin-table article{grid-template-columns:1fr .8fr .7fr .85fr;font-size:.74rem;gap:.35rem;padding:.5rem}.stock-table header,.stock-table article{grid-template-columns:1fr .65fr .65fr .55fr .75fr}.customer-table header,.customer-table article{grid-template-columns:1fr .7fr .5fr .7fr .7fr}.item-wise-table header,.item-wise-table article{grid-template-columns:1fr .7fr .55fr .55fr .55fr}.returns-table header,.returns-table article{grid-template-columns:.7fr 1.1fr .5fr .7fr .9fr}.admin-page-actions{flex-wrap:wrap;gap:.35rem}.admin-page-actions button{font-size:.72rem;padding:.36rem .55rem}.report-head{flex-wrap:wrap}.report-head select{width:100%}.returned-stock-panel{padding:.5rem}.returned-stock-panel h3{font-size:.9rem}.stock-current-head{flex-wrap:wrap}.admin-mobile-section{padding:.7rem}.snapshot-layout{grid-template-columns:1.9fr 1fr;gap:.5rem}.snapshot-grid{gap:.45rem}.snapshot-grid article{border-radius:12px;padding:.45rem}.snapshot-grid p{font-size:.83rem}.snapshot-grid strong{font-size:1.15rem}.low-stock-card strong{font-size:1.06rem}.low-stock-card span{font-size:.68rem}.chart-title-row{align-items:flex-start;flex-wrap:wrap;justify-content:flex-start}.chart-title-row h2{font-size:1.03rem;margin-top:.18rem}.rep-chart-title{font-size:.96rem;width:auto;overflow:hidden;text-overflow:ellipsis}.rep-search input,.rep-search select{width:170px;padding:.42rem}.rep-search-wide input{width:100%}.rep-search-wide select{width:150px}.rep-filters{width:100%;justify-content:flex-start}.rep-date-filters{width:100%}.rep-date-field{flex:1;min-width:0}.rep-date-field input{flex:1;min-width:0;padding:.42rem}.rep-bar-chart{grid-template-columns:repeat(auto-fit,minmax(52px,1fr))}.bar-chart{min-height:190px;gap:.22rem;padding:.4rem .3rem}.bar-wrap{height:132px}.bar-label{font-size:.58rem}}
