*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;background:#f5f7f9;color:#17202a;display:flex;min-height:100vh}.sidebar{width:245px;background:#fff;border-right:1px solid #e6e9ed;padding:24px 16px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0}.brand{display:flex;gap:10px;align-items:center;padding:5px 10px 30px}.brand-mark{width:40px;height:40px;border-radius:11px;background:#17202a;color:#fff;display:grid;place-items:center;font-weight:800}.brand b{display:block}.brand span{font-size:11px;color:#7b8794}.nav,.ghost{width:100%;border:0;background:transparent;text-align:left;padding:12px 13px;border-radius:10px;color:#64707c;cursor:pointer;font-size:14px}.nav:hover,.nav.active{background:#edf5fb;color:#126ca5;font-weight:700}.sidebar-bottom{margin-top:auto}.sidebar-bottom small{display:block;color:#9aa4ae;font-size:10px;padding:12px}.ghost{margin-top:4px}.ghost:hover{background:#f1f3f5}main{margin-left:245px;width:calc(100% - 245px);padding:28px 34px}.topbar{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.eyebrow{font-size:10px;letter-spacing:1.6px;color:#7b8794;font-weight:800}h1{font-size:28px;margin:4px 0 0}h2{font-size:15px;margin:0}.top-actions,.section-tools{display:flex;gap:10px;align-items:center}.period{font-size:11px;color:#78838d}.period select,select,input,textarea{border:1px solid #dfe4e8;background:#fff;border-radius:9px;padding:10px 11px;color:#26313a;outline:none}.primary{background:#126ca5;border:0;color:#fff;border-radius:9px;padding:11px 15px;font-weight:700;cursor:pointer}.secondary{background:#edf5fb;border:1px solid #cfe3f0;color:#126ca5;border-radius:9px;padding:9px 12px;font-weight:700;cursor:pointer}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.card{background:#fff;border:1px solid #e8ebee;border-radius:13px;padding:17px;box-shadow:0 2px 10px #17202a08}.card .label{font-size:11px;color:#7c8791}.card .value{font-size:25px;font-weight:800;margin-top:7px}.card .sub{font-size:11px;color:#8c969f;margin-top:5px}.grid{display:grid;gap:18px;margin-bottom:18px}.grid.two{grid-template-columns:1.4fr 1fr}.panel{background:#fff;border:1px solid #e8ebee;border-radius:13px;padding:18px;box-shadow:0 2px 10px #17202a06}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.panel-head span{font-size:11px;color:#89939c}.chart-panel{min-height:330px}.chart-panel canvas{max-height:260px}.bar{margin:14px 0}.bar-top{display:flex;justify-content:space-between;font-size:12px;margin-bottom:6px}.track{height:7px;background:#eef1f3;border-radius:99px;overflow:hidden}.fill{height:100%;background:#126ca5;border-radius:99px}.row{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #eef0f2;font-size:12px}.row:last-child{border:0}.muted{color:#89939c}.status{display:inline-block;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800}.status.ok{background:#e9f7ef;color:#187345}.status.bad{background:#fdecec;color:#a33131}.view{display:none}.view.active{display:block}.section-tools{margin-bottom:14px}.section-tools input{min-width:280px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;color:#7d8790;font-size:10px;text-transform:uppercase;letter-spacing:.5px;padding:10px 9px;border-bottom:1px solid #e6eaed;white-space:nowrap}td{padding:11px 9px;border-bottom:1px solid #f0f2f4;white-space:nowrap}.table-btn{border:1px solid #dfe4e8;background:#fff;border-radius:7px;padding:5px 8px;cursor:pointer}.report-card{background:#17202a;color:#fff;border-radius:14px;padding:24px;margin-bottom:18px}.report-card h2{font-size:18px;margin-bottom:12px}.report-card p{color:#d6dce1;line-height:1.7;font-size:13px}.metric{font-weight:800}.modal{display:none;position:fixed;inset:0;background:#17202a99;z-index:10;align-items:center;justify-content:center;padding:20px}.modal.show{display:flex}.modal-card{background:#fff;border-radius:16px;width:min(700px,100%);padding:22px;max-height:92vh;overflow:auto}.modal-card.wide{width:min(800px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.close{border:0;background:#f1f3f5;width:32px;height:32px;border-radius:50%;font-size:20px;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-bottom:18px}.form-grid label,.full-label{font-size:11px;color:#6e7983;display:flex;flex-direction:column;gap:6px}.form-grid input,.form-grid select{width:100%}.full-label{margin-bottom:15px}.pay-box{border:1px solid #e4e9ed;background:#f8fafb;border-radius:12px;padding:14px;margin-bottom:18px}.pay-head{display:flex;justify-content:space-between;margin-bottom:10px;font-size:12px}.pay-head span{color:#8b959d}.payment-row{display:grid;grid-template-columns:1fr 150px 36px;gap:8px;margin-bottom:8px}.payment-row button{border:0;background:#fdecec;color:#a33131;border-radius:8px;cursor:pointer}.pay-total{display:flex;justify-content:space-between;border-top:1px solid #e1e6e9;margin-top:12px;padding-top:12px}.full{width:100%}textarea{resize:vertical}@media(max-width:900px){.sidebar{width:70px;padding:15px 8px}.brand div:not(.brand-mark),.nav{font-size:0}.nav:before{content:"•";font-size:20px}.sidebar-bottom{display:none}main{margin-left:70px;width:calc(100% - 70px);padding:20px}.cards{grid-template-columns:1fr 1fr}.grid.two{grid-template-columns:1fr}.topbar{align-items:flex-start;gap:10px}.top-actions{flex-direction:column;align-items:stretch}.form-grid{grid-template-columns:1fr}}@media(max-width:560px){.cards{grid-template-columns:1fr}.section-tools{flex-wrap:wrap}.section-tools input{min-width:100%}.topbar{flex-direction:column}.payment-row{grid-template-columns:1fr 110px 36px}}.items-box{border:1px solid #e4e9ed;background:#f8fafb;border-radius:12px;padding:14px;margin-bottom:18px}.sale-item-row{display:grid;grid-template-columns:minmax(220px,1.8fr) 90px 140px 36px;gap:8px;margin-bottom:8px}.sale-item-row button{border:0;background:#fdecec;color:#a33131;border-radius:8px;cursor:pointer;font-size:18px}.wrap-cell{white-space:normal!important;min-width:190px;max-width:340px}.actions{white-space:nowrap}.table-btn.danger{color:#a33131;border-color:#f0caca;margin-left:5px}.good-text{color:#187345}.bad-text{color:#a33131}.pay-total small{font-weight:400;color:#7c8791;margin-left:10px}.pay-total small strong{font-weight:800}.panel small,td small{color:#89939c;font-size:10px}@media(max-width:700px){.sale-item-row{grid-template-columns:1fr 80px 110px 36px}}

.hidden{display:none!important}
.auth-screen{position:fixed;inset:0;z-index:9999;background:#f4f1e9;display:grid;place-items:center;padding:24px}
.auth-card{width:min(420px,100%);background:#fff;padding:36px;border:1px solid #ded7c6;box-shadow:0 20px 60px rgba(0,0,0,.08)}
.auth-card .brand-mark{width:54px;height:54px;border-radius:50%;background:#082d52;color:#fff;display:grid;place-items:center;font-weight:800;margin-bottom:22px}
.auth-card h1{margin:0 0 8px;color:#082d52}
.auth-card>p{margin:0 0 24px;color:#6d7775}
.auth-card label{display:block;margin:0 0 14px;font-size:12px;font-weight:600}
.auth-card input{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #ded7c6;font:inherit}
.auth-error{min-height:20px;color:#b3453a;font-size:12px;margin:12px 0 0}
.top-actions .ghost{margin-left:8px}

.app-shell{display:contents}

.sale-tabs{display:flex;gap:6px;margin-bottom:14px;border-bottom:1px solid #e4e9ed}.sale-tab{border:0;background:transparent;padding:10px 13px;border-radius:8px 8px 0 0;color:#7b8794;font-weight:700;cursor:pointer}.sale-tab.active{background:#edf5fb;color:#126ca5}.sale-tab-panel{display:none}.sale-tab-panel.active{display:block}.item-main{display:flex;flex-direction:column;gap:4px;min-width:0}.item-main select{width:100%}.item-description{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:2px}.gift-free{display:grid;place-items:center;background:#fff4d6;color:#8b681b;border-radius:8px;font-size:9px;font-weight:800;letter-spacing:.5px}.gift-row{grid-template-columns:minmax(220px,1.8fr) 90px 100px 36px}.gift-row .gift-qty{width:100%}

.table-btn.danger{color:#b42318;border-color:#f0b8b2}.table-btn.danger:hover{background:#fff1f0}
