@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#f7f7f4;--paper:#fff;--ink:#232722;--muted:#898d86;--line:#eceee9;--border:#eceee9;--accent:#315c48;--text:#232722;--green:#315c48;--green-soft:#edf4ef;--lime:#d9edb5;--amber:#a56b20;--amber-soft:#fff4df;--red:#b45048;--red-soft:#fff0ed;--shadow:0 8px 28px #28372b0a}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer}.sidebar{width:244px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);padding:27px 17px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;gap:11px;align-items:center;color:var(--ink);text-decoration:none;margin:0 0 43px 5px}.brand-mark{width:36px;height:36px;border-radius:12px;background:var(--green);color:#fff;font:800 26px Manrope;display:grid;place-items:center;letter-spacing:-3px;padding-right:3px}.brand b{font:800 16px Manrope;display:block;letter-spacing:-.5px}.brand small{font-size:9px;letter-spacing:1.1px;color:#969990;display:block;margin-top:2px}.nav-label{font-size:10px;color:#aaa;letter-spacing:1px;margin:0 0 10px 10px;font-weight:700}.nav-item{width:100%;border:0;background:none;color:#73776f;text-align:left;padding:11px 12px;border-radius:9px;margin:2px 0;display:flex;gap:12px;align-items:center;font-weight:500}.nav-item:hover,.nav-item.active{background:#eef3ee;color:var(--green)}.nav-item.active{font-weight:700}.nav-icon{width:18px;text-align:center;font-size:17px}.nav-count{margin-left:auto;background:#f3e4c8;color:#89601e;font-size:11px;padding:2px 7px;border-radius:10px}.sidebar-bottom{margin-top:auto}.shop-card{padding:12px 8px;display:flex;align-items:center;gap:10px;border-top:1px solid var(--line)}.shop-avatar,.user-avatar{background:#f1d9c8;color:#774e37;border:0;border-radius:50%;display:grid;place-items:center;font-weight:700}.shop-avatar{width:32px;height:32px}.shop-card b{font-size:12px;display:block}.shop-card small{color:var(--muted);font-size:10px}.dots{margin-left:auto;font-size:20px;color:#888}.sidebar-bottom p{font-size:10px;color:#a0a39d;margin:4px 8px}.main{margin-left:244px;min-height:100vh}.topbar{height:68px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 40px;background:#ffffffa8}.breadcrumb{font:700 13px Manrope}.top-actions{display:flex;align-items:center;gap:15px}.today{font-size:12px;color:var(--muted)}.user-avatar{width:31px;height:31px}.icon-button{border:1px solid var(--line);background:#fff;border-radius:8px;width:34px;height:34px}.content{max-width:1220px;margin:auto;padding:36px 40px 60px}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:25px}.eyebrow{font-size:11px;color:var(--green);font-weight:700;letter-spacing:.9px;text-transform:uppercase;margin-bottom:7px}.page-heading h1{font:800 25px Manrope;margin:0;letter-spacing:-.8px}.page-heading p{color:var(--muted);font-size:13px;margin:7px 0 0}.primary,.secondary,.quiet{border:0;border-radius:8px;padding:10px 14px;font-weight:600;display:inline-flex;align-items:center;gap:7px}.primary{background:var(--green);color:#fff}.primary:hover{background:#254937}.secondary{border:1px solid var(--line);color:var(--ink);background:white}.quiet{background:var(--green-soft);color:var(--green)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:17px}.stat-card,.panel,.table-card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.stat-card{padding:17px 18px}.stat-top{display:flex;justify-content:space-between;color:#777c74;font-size:12px}.stat-icon{height:28px;width:28px;display:grid;place-items:center;background:var(--green-soft);color:var(--green);border-radius:8px;font-size:15px}.stat-value{font:800 24px Manrope;letter-spacing:-.8px;margin:9px 0 5px}.stat-foot{font-size:11px;color:#92968f}.stat-foot strong{color:var(--green);font-weight:600}.dashboard-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:16px;margin-bottom:16px}.panel{padding:19px 20px}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.panel-header h2{font:700 14px Manrope;margin:0}.panel-header p{font-size:11px;color:var(--muted);margin:5px 0 0}.text-link{border:0;background:none;color:var(--green);font-size:11px;font-weight:700}.chart-summary{font:800 20px Manrope;margin:3px 0}.chart-summary span{font:400 11px 'DM Sans';color:var(--muted);margin-left:5px}.chart{height:145px;width:100%;display:block;overflow:visible}.chart-grid{stroke:#eff0ec;stroke-width:1}.chart-fill{fill:url(#fill)}.chart-line{fill:none;stroke:#47725b;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart-label{font:10px 'DM Sans';fill:#a1a49e}.chart-wrap{position:relative;padding-top:8px}.chart-tooltip{position:absolute;right:8%;top:20%;background:#2f4c3a;color:#fff;padding:7px 10px;border-radius:7px;font-size:10px}.activity-list{display:flex;flex-direction:column}.activity{display:flex;gap:11px;padding:11px 0;border-bottom:1px solid #f2f2ef;align-items:center}.activity:last-child{border:0}.activity-icon{width:34px;height:34px;display:grid;place-items:center;background:var(--green-soft);color:var(--green);border-radius:10px;font-size:14px}.activity-copy{flex:1;min-width:0}.activity-copy b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-copy small{color:var(--muted);font-size:10px}.activity-amount{text-align:right;font-weight:700;font-size:11px;white-space:nowrap}.activity-amount small{display:block;font-size:9px;color:var(--muted);font-weight:400;margin-top:3px}.table-card{overflow:hidden}.table-toolbar{display:flex;justify-content:space-between;align-items:center;padding:17px 19px;border-bottom:1px solid var(--line)}.table-toolbar h2{font:700 14px Manrope;margin:0}.search-box{border:1px solid var(--line);border-radius:7px;padding:8px 10px;display:flex;gap:7px;align-items:center;color:#888;background:white}.search-box input{border:0;outline:0;width:170px;font-size:11px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}th{background:#fcfcfb;color:#9a9d97;font-size:10px;font-weight:600;padding:11px 16px;white-space:nowrap}td{padding:13px 16px;border-top:1px solid #f2f3ef;font-size:11px;white-space:nowrap}td b{font-size:11px}.product-cell{display:flex;align-items:center;gap:9px}.product-thumb{width:34px;height:34px;border-radius:8px;background:#f1ede5;display:grid;place-items:center;font-size:16px}.muted{color:var(--muted)}.pill{display:inline-flex;padding:4px 8px;border-radius:20px;font-size:10px;font-weight:600}.pill.green{background:var(--green-soft);color:var(--green)}.pill.amber{background:var(--amber-soft);color:var(--amber)}.pill.red{background:var(--red-soft);color:var(--red)}.pill.gray{background:#f0f1ee;color:#71756f}.action-row{display:flex;gap:7px;align-items:center}.toolbar{display:flex;gap:9px;align-items:center;margin-bottom:16px}.toolbar .search-box{flex:1;max-width:360px}.toolbar select{border:1px solid var(--line);border-radius:7px;background:#fff;padding:8px 10px;color:#62665f;font-size:11px}.empty-state{text-align:center;padding:44px 15px;color:var(--muted)}.empty-state strong{color:var(--ink);display:block;margin:8px}.mobile-brand,.mobile-nav{display:none}.alert-row{display:flex;align-items:center;gap:10px;padding:9px 0}.alert-row+.alert-row{border-top:1px solid #f2f3ef}.alert-dot{width:8px;height:8px;border-radius:50%;background:#d79740}.alert-dot.red{background:#cd7168}.alert-row b{font-size:11px}.alert-row small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.alert-row button{margin-left:auto}.progress{height:5px;background:#edf0eb;border-radius:5px;margin-top:8px;overflow:hidden}.progress i{height:100%;display:block;background:#78967e;border-radius:5px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);background:#283b2e;color:white;padding:11px 17px;border-radius:9px;opacity:0;transition:.2s;z-index:20;font-size:12px;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}.modal-backdrop{position:fixed;inset:0;background:#20271f66;display:grid;place-items:center;padding:18px;z-index:10}.modal{width:min(500px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:14px;padding:23px;box-shadow:0 18px 70px #1113}.modal h2{font:800 18px Manrope;margin:0 0 5px}.modal>p{font-size:12px;color:var(--muted);margin:0 0 19px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:11px;font-weight:600;color:#5f645c}.field input,.field select,.field textarea{width:100%;border:1px solid #e4e7e1;border-radius:7px;padding:10px;font-size:12px;outline-color:#92ad96;background:#fff}.field textarea{min-height:70px;resize:vertical}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.payment-list{padding:11px;background:#f6f7f4;border-radius:8px;font-size:11px;margin:12px 0}.modal-close{float:right;border:0;background:none;font-size:21px;color:#81857d}
@media(max-width:1050px){.content{padding-left:26px;padding-right:26px}.topbar{padding:0 26px}.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){body{padding-bottom:65px}.sidebar{display:none}.main{margin:0}.topbar{height:55px;padding:0 17px}.breadcrumb{display:none}.mobile-brand{display:flex;align-items:center;gap:8px;border:0;background:none;font:800 14px Manrope;padding:0}.mobile-brand .brand-mark{width:29px;height:29px;font-size:21px;border-radius:9px}.today{font-size:10px}.content{padding:25px 16px 35px}.page-heading{margin-bottom:18px}.page-heading h1{font-size:22px}.page-heading p{font-size:11px}.page-heading .primary{padding:9px 10px;font-size:11px}.stats{gap:9px;margin-bottom:12px}.stat-card{padding:13px}.stat-value{font-size:19px}.stat-top{font-size:10px}.stat-icon{width:25px;height:25px}.stat-foot{font-size:9px}.dashboard-grid{grid-template-columns:1fr;gap:12px;margin-bottom:12px}.panel{padding:15px}.chart{height:125px}.mobile-nav{display:flex;position:fixed;z-index:6;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));justify-content:space-around}.mobile-nav button{border:0;background:none;color:#888d85;font-size:9px;display:flex;flex:1;align-items:center;flex-direction:column;gap:3px;padding:3px 0}.mobile-nav button span{font-size:18px}.mobile-nav button.active{color:var(--green);font-weight:700}.toolbar{flex-wrap:wrap}.toolbar .search-box{max-width:none;flex-basis:100%}.toolbar select{flex:1}.table-toolbar{padding:14px}.table-toolbar h2{font-size:12px}.search-box input{width:115px}th,td{padding:11px 12px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.modal{padding:19px}.hide-mobile{display:none}}

/* Meta commerce design language adapted for a focused shop-management workspace. */
:root{--bg:#fff;--paper:#fff;--ink:#1c1e21;--muted:#5d6c7b;--line:#dee3e9;--border:#dee3e9;--accent:#0064e0;--text:#1c1e21;--green:#0a1317;--green-soft:#f1f4f7;--lime:#d9edb5;--amber:#a56b20;--amber-soft:#fff4df;--red:#e41e3f;--red-soft:#fff0ed;--shadow:0 1px 4px #14161a12;--blue:#0064e0;--blue-deep:#0457cb}
body{background:#fff;color:#1c1e21;font-family:'Optimistic VF','Optimistic Text',Manrope,Arial,sans-serif;letter-spacing:-.12px}
.sidebar,.topbar,.mobile-nav{background:#fff}.sidebar{border-color:#dee3e9;padding-top:25px}.brand-mark{background:#0a1317;border-radius:50%;font-family:'Optimistic VF',Manrope,sans-serif}.brand b,.page-heading h1,.panel-header h2,.table-toolbar h2,.modal h2,.stat-value{font-family:'Optimistic VF',Manrope,Arial,sans-serif;letter-spacing:-.55px}.nav-item{border-radius:100px}.nav-item:hover,.nav-item.active{background:#f1f4f7;color:#1c1e21}.nav-count{border-radius:100px}.shop-avatar,.user-avatar{background:#f1f4f7;color:#1c1e21}.user-avatar{width:40px;height:40px}
.content{max-width:1280px}.page-heading{margin-bottom:28px}.page-heading h1{font-size:28px;font-weight:500}.page-heading p{font-size:14px;line-height:1.5;color:#5d6c7b}.eyebrow{color:#5d6c7b;letter-spacing:.7px}.primary,.secondary,.quiet,.text-link,.icon-button{border-radius:100px}.primary{background:#000;color:#fff;padding:12px 22px}.primary:hover{background:#444950}.secondary{border:2px solid #0a1317;background:transparent;color:#0a1317;padding:9px 17px}.quiet{background:#f1f4f7;color:#1c1e21;padding:8px 13px}.text-link{color:#385898}.buy-flow .primary{background:#0064e0}.buy-flow .primary:hover{background:#0457cb}
.stat-card,.panel,.table-card{border-radius:24px;box-shadow:none;border-color:#dee3e9}.stat-card{padding:20px}.stat-icon{border-radius:50%;background:#f1f4f7;color:#1c1e21}.stat-value{font-size:26px;font-weight:500}.dashboard-grid{gap:20px;margin-bottom:20px}.panel{padding:24px}.chart-line{stroke:#0064e0}.chart-tooltip{border-radius:100px;background:#0a1317}.chart-fill{opacity:.75}.activity-icon{border-radius:12px;background:#f1f4f7;color:#1c1e21}.table-toolbar{border-radius:24px 24px 0 0!important}.table-card{border-radius:0 0 24px 24px}.table-card:has(.empty-state){border-radius:24px}th{background:#f8f9fa;color:#5d6c7b}td{border-color:#eff1f3}tr.row-selected td{background:#fef2f2!important}.pill{border-radius:100px}.pill.green{background:#31a24c;color:#fff}.pill.amber{background:#f2a918;color:#0a1317}.pill.red{background:#e41e3f;color:#fff}.pill.gray{background:#f1f4f7;color:#4b4c4f}
.search-box{border-radius:100px;background:#f1f4f7;border-color:transparent;min-height:40px;padding:8px 15px}.search-box input{background:transparent}.toolbar select{border-radius:100px;min-height:40px}.product-thumb{background:#f1f4f7;border-radius:16px}.progress{background:#dee3e9}.progress i{background:#0064e0}.modal{border-radius:24px}.modal-close{border-radius:50%;width:36px;height:36px;background:#f1f4f7}.field input,.field select,.field textarea{border-radius:8px;border-color:#ced0d4;min-height:44px}.field input:focus,.field select:focus,.field textarea:focus{border:2px solid #1876f2;outline:none}.mobile-nav{border-color:#dee3e9}.mobile-nav button.active{color:#1c1e21}.mobile-nav button{min-height:42px}.brand small{letter-spacing:.7px}
.demo-banner{display:flex;gap:8px;align-items:center;background:#f1f4f7;border:1px solid #dee3e9;border-radius:100px;padding:10px 15px;margin:-9px 0 20px;font-size:11px;color:#5d6c7b}.demo-banner b{color:#1c1e21;white-space:nowrap}.connected-panel{max-width:660px;padding:30px}.connected-panel .stat-icon{font-size:18px;background:#31a24c;color:#fff}.connected-panel h2{font:500 24px Manrope;margin:18px 0 10px}.connected-panel p{color:#5d6c7b;font-size:13px;line-height:1.55}.connected-next{display:flex;flex-direction:column;gap:5px;background:#f1f4f7;border-radius:16px;padding:17px;margin:22px 0;color:#1c1e21;font-size:12px}.connected-next span{color:#5d6c7b;line-height:1.5}.online-mode .sidebar-bottom{margin-top:auto}
#auth-root{position:fixed;inset:0;z-index:30;background:#fff;overflow-y:auto}.auth-screen{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 18px}.auth-card{width:min(440px,100%);border:1px solid #dee3e9;border-radius:32px;padding:34px;box-shadow:0 4px 22px #14161a0c}.auth-brand{display:flex;align-items:center;gap:11px;margin-bottom:34px}.auth-brand .brand-mark{background:#0a1317}.auth-brand b{display:block;font:800 16px Manrope}.auth-brand small{font-size:9px;color:#5d6c7b;letter-spacing:.8px}.auth-card h1{font:500 28px Manrope;letter-spacing:-.6px;margin:7px 0}.auth-description{font-size:13px;line-height:1.5;color:#5d6c7b;margin:0 0 22px}.auth-field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;margin:14px 0}.auth-field input{width:100%;height:46px;border:1px solid #ced0d4;border-radius:8px;padding:0 13px;font:400 14px Manrope}.auth-field input:focus{outline:2px solid #1876f2;border-color:transparent}.auth-submit{width:100%;justify-content:center;margin-top:8px;min-height:46px}.auth-links{display:flex;justify-content:space-between;gap:10px;margin-top:18px;flex-wrap:wrap}.auth-links button{border:0;background:none;color:#385898;font-size:11px;font-weight:700;padding:6px 0}.auth-message{padding:11px 13px;border-radius:10px;background:#fff4df;color:#7d581a;font-size:12px;line-height:1.5;margin:13px 0}.auth-loading{padding:12px 0;color:#5d6c7b;font-size:13px}.auth-footnote{font-size:11px;color:#8595a4;margin:16px 0}.auth-active .main{visibility:hidden}.auth-active .sidebar,.auth-active .mobile-nav{visibility:hidden}
@media(max-width:720px){.demo-banner{border-radius:16px;align-items:flex-start;flex-direction:column;gap:4px}.connected-panel{padding:22px}.auth-card{padding:25px 21px;border-radius:24px}.auth-brand{margin-bottom:27px}}

/* Database-backed product and inventory workspace. */
.online-mode .sidebar nav{display:block}.online-mode .sidebar .nav-label{display:block}.online-mode .mobile-nav{display:flex}
.online-mode .sidebar-bottom p{display:none}
.online-error{padding:13px 16px;margin:0 0 18px;border-radius:14px;background:#fff4df;color:#805718;border:1px solid #f1d9a9;line-height:1.5;font-size:13px}
.online-activity-list{display:flex;flex-direction:column}.online-activity{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #eff1f3}.online-activity:last-child{border:0}.online-activity-icon{width:34px;height:34px;border-radius:12px;background:#f1f4f7;display:grid;place-items:center;flex:none}.online-activity>span:nth-child(2){flex:1;min-width:0}.online-activity b{font-size:12px;display:block;overflow:hidden;text-overflow:ellipsis}.online-activity small{font-size:11px;color:#5d6c7b;display:block;margin-top:4px}.online-activity strong{font-size:13px}.qty-in{color:#16823b}.qty-out{color:#c32b44}
.product-thumb img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.variant-heading{display:flex;justify-content:space-between;align-items:center;margin:24px 0 12px}.variant-heading h3{font-size:14px;margin:0}.online-modal{width:min(760px,100%)}.variant-editor{position:relative;border:1px solid #dee3e9;border-radius:16px;padding:18px;margin:0 0 12px;min-width:0}.variant-editor legend{font-size:11px;font-weight:700;color:#5d6c7b;padding:0 7px}.variant-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.variant-editor .field{min-width:0}.variant-editor .field>span,.online-modal .field>span{font-size:11px;font-weight:600;color:#5d6c7b}.variant-editor small{color:#5d6c7b;font-size:10px}.variant-remove{position:absolute;top:4px;right:7px;border:0;background:#f1f4f7;border-radius:50%;width:28px;height:28px;font-size:18px}.variant-editor .check-field,.online-modal .check-field{display:flex;align-items:center;gap:8px;font-size:11px;color:#3d454d}.variant-editor .check-field input,.online-modal .check-field input{width:16px;height:16px;accent-color:#1876f2}.online-modal textarea{font:inherit}.online-modal .modal-actions{position:sticky;bottom:-19px;background:#fff;padding:13px 0 3px}
@media(max-width:720px){.online-activity{gap:9px}.online-activity small{font-size:10px}.variant-grid{grid-template-columns:1fr}.variant-editor{padding:14px}.variant-heading{align-items:flex-start;gap:8px}.online-modal .modal-actions{bottom:-19px}}
.order-line{position:relative;display:grid;grid-template-columns:minmax(0,2fr) minmax(80px,.6fr) minmax(120px,.9fr);gap:10px;align-items:end;padding:13px 44px 13px 14px;margin:0 0 10px;border:1px solid #dee3e9;border-radius:16px}.order-line .variant-remove{top:50%;transform:translateY(-50%);right:8px}.order-line .field{min-width:0}.order-summary-fields{margin-top:16px}.order-summary-fields output{min-height:44px;display:flex;align-items:center;font-weight:700}.online-order-total{display:flex;justify-content:space-between;align-items:center;padding:17px;margin-top:15px;border-radius:16px;background:#f1f4f7}.online-order-total b{font-size:20px}.order-detail-table{margin:10px 0 15px}.order-totals{display:grid;gap:10px;padding:15px 0;border-bottom:1px solid #dee3e9}.order-totals>div{display:flex;justify-content:space-between;gap:12px}.order-totals>div span{color:#5d6c7b}.order-note{padding:12px;background:#f1f4f7;border-radius:12px;font-size:12px}.modal-section-title{font-size:13px;margin:22px 0 10px}.status-history{display:grid;gap:10px;margin-top:12px}.status-history>div{border-left:2px solid #1876f2;padding:2px 0 2px 10px}.status-history b,.status-history small{display:block}.status-history b{font-size:11px}.status-history small{font-size:10px;color:#5d6c7b;margin-top:3px}.payment-entry{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #dee3e9}.payment-entry:last-child{border:0}.payment-entry span{font-size:11px;color:#5d6c7b}.payment-entry b{white-space:nowrap}
@media(max-width:720px){.order-line{grid-template-columns:1fr 88px;gap:8px;padding:13px 37px 13px 12px}.order-line .field:first-child{grid-column:1/-1}.order-line .variant-remove{right:5px;top:15px;transform:none}.online-order-total{padding:14px}.online-order-total b{font-size:17px}}
.order-toolbar{align-items:center;gap:8px}.order-toolbar .search-box{flex:1;min-width:240px}.order-toolbar select{min-height:40px;border:1px solid var(--line);background:#fff;padding:0 14px}.order-date-filter{display:flex;align-items:center;gap:7px;padding:0 10px;min-height:40px;border:1px solid var(--line);border-radius:100px;background:#fff;color:var(--muted);font-size:11px}.order-date-filter input{min-width:115px;border:0;background:transparent;color:var(--ink);outline:none;font-size:11px}
@media(max-width:720px){.order-toolbar .search-box{flex-basis:100%;min-width:0}.order-toolbar select{flex:1;min-width:145px}.order-date-filter{flex:1;justify-content:space-between}.order-date-filter input{min-width:0;width:120px}}
.report-toolbar{justify-content:flex-end;margin-bottom:16px}.report-toolbar .secondary{min-height:40px}.report-loading{padding:12px 15px;margin-bottom:14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--muted);font-size:12px}.report-stats{margin-bottom:16px}.report-stats .stat-value{font-size:clamp(17px,2vw,24px);overflow-wrap:anywhere}.report-grid{grid-template-columns:.8fr 1.2fr;margin-bottom:14px}.report-grid .panel{min-width:0}.report-bar{height:4px;max-width:180px;margin-top:6px;overflow:hidden;border-radius:9px;background:#edf0eb}.report-bar i{display:block;height:100%;background:#78967e;border-radius:9px}.report-note{padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--muted);font-size:11px;line-height:1.6}.report-toolbar .order-date-filter input{min-width:125px}
@media(max-width:720px){.report-grid{grid-template-columns:1fr}.report-toolbar{justify-content:stretch}.report-toolbar .secondary{width:100%;justify-content:center}.report-stats .stat-value{font-size:17px}.mobile-nav button{font-size:8px}}
.customer-tabs, .order-tabs{display:flex;gap:7px;margin:-8px 0 16px;border-bottom:1px solid var(--line)}.customer-tabs button, .order-tabs button{border:0;border-bottom:2px solid transparent;background:none;padding:10px 13px;color:var(--muted);font-size:12px;font-weight:600}.customer-tabs button.active, .order-tabs button.active{border-bottom-color:var(--green);color:var(--green)}.debt-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.debt-details summary{cursor:pointer;color:var(--green);font-size:11px}.debt-order{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--line);font-size:11px}.debt-order span{color:var(--muted)}.debt-order b{white-space:nowrap}.debt-amount{color:var(--amber)}
@media(max-width:720px){.customer-tabs, .order-tabs{margin-top:-5px}.debt-stats .stat-value{font-size:17px}}
.return-item-line{display:grid;grid-template-columns:minmax(0,2fr) minmax(110px,.8fr);gap:12px;align-items:center;padding:12px 14px;margin-bottom:8px;border:1px solid #dee3e9;border-radius:12px;background:#fafbfc}
.return-item-line .return-info b{font-size:13px;display:block}
.return-item-line .return-info small{color:#5d6c7b;font-size:11px}
.return-order-card{padding:12px 14px;border:1px solid #dee3e9;border-radius:12px;margin-bottom:8px;background:#f8f9fa}
.return-order-card b{font-size:12px}
.return-order-card small{color:#5d6c7b;display:block;margin-top:2px}
.purchase-line{grid-template-columns:minmax(180px,2fr) minmax(90px,.65fr) minmax(150px,1fr)}
.purchase-actions{flex-wrap:wrap}
@media(max-width:720px){.purchase-line{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.purchase-line .field:first-child{grid-column:1/-1}}
.heading-actions{display:flex;align-items:center;gap:8px;flex:none}
@media(max-width:720px){.heading-actions{gap:6px}.heading-actions .primary,.heading-actions .secondary{padding:9px 12px;font-size:11px}}
.notification-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px}
.notification-badge{position:absolute;top:-4px;right:-4px;background:#e53e3e;color:#fff;font-size:10px;font-weight:700;padding:2px 5px;border-radius:10px;line-height:1;min-width:16px;text-align:center}
.task-item-card{background:#fff;border:1px solid var(--border);border-radius:8px;padding:12px 14px;margin-bottom:8px;display:flex;justify-content:space-between;align-items:center;transition:box-shadow .15s}
.task-item-card:hover{box-shadow:0 2px 6px rgba(0,0,0,.06)}
.task-item-left{display:flex;align-items:center;gap:12px}
.task-checkbox{width:18px;height:18px;cursor:pointer}
.task-title-done{text-decoration:line-through;color:var(--muted)}
.role-badge{font-size:11px;font-weight:600;padding:3px 8px;border-radius:4px;display:inline-block}
.role-owner{background:#ebf8ff;color:#2b6cb0}
.role-admin{background:#faf5ff;color:#6b46c1}
.role-cashier{background:#f0fff4;color:#276749}
.role-stock{background:#fffaf0;color:#c05621}
.role-sales{background:#e6fffa;color:#234e52}
.role-accountant{background:#edf2f7;color:#4a5568}
.notif-item{padding:12px;border-bottom:1px solid var(--border);display:flex;gap:12px;align-items:flex-start}
.notif-item.unread{background:#f8fafc;font-weight:500}
.notif-icon{font-size:20px;line-height:1}

/* Print A5 invoice styles */
@media print {
  @page {
    size: A5 portrait;
    margin: 6mm 8mm;
  }
  html, body {
    background: #fff !important;
    color: #000 !important;
    font-size: 11pt !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body > *:not(#print-container) {
    display: none !important;
  }
  #print-container {
    display: block !important;
    visibility: visible !important;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  #print-container * {
    visibility: visible !important;
  }
}

#print-container {
  display: none;
}

.a5-invoice {
  font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
  color: #111;
  line-height: 1.35;
  font-size: 12px;
}
.a5-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  border-bottom: 2px solid #000;
  padding-bottom: 8px;
  margin-bottom: 10px;
}
.a5-shop-info h2 {
  font-size: 16px;
  font-weight: 800;
  text-transform: uppercase;
  margin: 0 0 3px;
}
.a5-shop-info p {
  font-size: 10.5px;
  margin: 1px 0;
  color: #333;
}
.a5-title-box {
  text-align: right;
}
.a5-title-box h1 {
  font-size: 15px;
  font-weight: 800;
  margin: 0 0 2px;
  text-transform: uppercase;
}
.a5-order-code {
  font-size: 14px;
  font-weight: 700;
  font-family: monospace;
}
.a5-date {
  font-size: 10px;
  color: #555;
}
.a5-recipient-card {
  border: 1.5px solid #222;
  border-radius: 6px;
  padding: 8px 12px;
  margin-bottom: 10px;
  background: #fafafa;
}
.a5-recipient-card .title {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 4px;
  border-bottom: 1px dashed #ccc;
  padding-bottom: 3px;
  display: flex;
  justify-content: space-between;
}
.a5-recipient-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px 10px;
  font-size: 11.5px;
}
.a5-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 10px;
}
.a5-table th {
  background: #eee !important;
  color: #000 !important;
  border: 1px solid #444;
  padding: 5px 6px;
  font-size: 10.5px;
  font-weight: 700;
  text-align: left;
}
.a5-table td {
  border: 1px solid #777;
  padding: 5px 6px;
  font-size: 11px;
  vertical-align: top;
}
.a5-table .num {
  text-align: right;
  white-space: nowrap;
}
.a5-table .center {
  text-align: center;
}
.a5-summary-row {
  display: flex;
  justify-content: space-between;
  margin-bottom: 8px;
}
.a5-notes {
  flex: 1;
  font-size: 10.5px;
  padding-right: 14px;
}
.a5-calc {
  width: 220px;
  font-size: 11.5px;
}
.a5-calc-line {
  display: flex;
  justify-content: space-between;
  padding: 2px 0;
}
.a5-cod-box {
  border: 2.5px solid #000;
  background: #fdfdfd;
  padding: 8px 10px;
  margin: 6px 0 10px;
  text-align: center;
  border-radius: 4px;
}
.a5-cod-box .cod-title {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}
.a5-cod-box .cod-val {
  font-size: 20px;
  font-weight: 800;
  margin: 3px 0;
  letter-spacing: -0.5px;
}
.a5-cod-box .cod-text {
  font-size: 10.5px;
  font-style: italic;
}
.a5-signatures {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  text-align: center;
  margin-top: 14px;
  font-size: 11px;
}
.a5-signatures .sign-role {
  font-weight: 700;
}
.a5-signatures .sign-note {
  font-size: 9.5px;
  color: #666;
  font-style: italic;
  margin-top: 2px;
}
.a5-signatures .sign-space {
  height: 48px;
}
.a5-footer {
  text-align: center;
  font-size: 9.5px;
  color: #555;
  margin-top: 10px;
  border-top: 1px dashed #bbb;
  padding-top: 6px;
}

/* ==========================================================================
   Universal Pagination Bar & Controls
   ========================================================================== */
.pagination-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  padding: 12px 16px;
  background: #fff;
  border: 1px solid var(--line);
  border-top: 0;
  border-radius: 0 0 12px 12px;
  font-size: 13px;
}
.pagination-info {
  color: var(--muted);
  font-size: 12.5px;
}
.pagination-info b {
  color: var(--ink);
  font-weight: 600;
}
.pagination-controls {
  display: flex;
  align-items: center;
  gap: 4px;
}
.page-btn {
  border: 1px solid var(--line);
  background: #fff;
  color: var(--ink);
  min-width: 32px;
  height: 32px;
  padding: 0 8px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.15s ease;
}
.page-btn:hover:not(:disabled) {
  background: var(--green-soft);
  color: var(--green);
  border-color: var(--green);
}
.page-btn.active {
  background: var(--green);
  color: #fff;
  font-weight: 700;
  border-color: var(--green);
}
.page-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  background: #f8fafc;
}
.page-ellipsis {
  padding: 0 4px;
  color: var(--muted);
  font-size: 12px;
  user-select: none;
}
.pagination-size {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: var(--muted);
}
.pagination-size select {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  padding: 4px 8px;
  font-size: 12px;
  color: var(--ink);
  cursor: pointer;
}

/* ==========================================================================
   Product Tree-Table & Hierarchy Styling
   ========================================================================== */
.product-parent-row {
  transition: background 0.15s ease;
}
.product-parent-row:hover {
  background: #fbfcfb;
}
.product-link {
  color: #1d4ed8;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  transition: color 0.15s;
}
.product-link:hover {
  color: #1e40af;
  text-decoration: underline;
}
.tree-toggle-btn {
  border: 0;
  background: transparent;
  color: #64748b;
  width: 24px;
  height: 24px;
  border-radius: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 10px;
  padding: 0;
  transition: all 0.15s ease;
}
.tree-toggle-btn:hover {
  background: #e2e8f0;
  color: #0f172a;
}
.product-child-row {
  background: #f8fafc;
  font-size: 13px;
  border-bottom: 1px dashed #e2e8f0;
  transition: background 0.15s ease;
}
.product-child-row:hover {
  background: #f1f5f9;
}
.tree-branch {
  color: #94a3b8;
  font-weight: 700;
  user-select: none;
}
.sku-tag {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 11px;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  color: #334155;
  padding: 2px 6px;
  border-radius: 4px;
  display: inline-block;
}
.quick-stock-edit-btn {
  border: 0;
  background: transparent;
  color: #94a3b8;
  cursor: pointer;
  padding: 2px 5px;
  border-radius: 4px;
  font-size: 11px;
  transition: all 0.15s;
  margin-left: 4px;
}
.quick-stock-edit-btn:hover {
  color: var(--green);
  background: var(--green-soft);
}
.committed-orders-trigger {
  cursor: pointer;
  transition: opacity 0.15s;
}
.committed-orders-trigger:hover {
  opacity: 0.8;
}

/* ==========================================================================
   Sortable Table Headers & Tabs
   ========================================================================== */
.sortable-th {
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
  transition: color 0.15s;
}
.sortable-th:hover {
  color: var(--green);
}
.sortable-th .sort-icon {
  font-size: 11px;
  margin-left: 4px;
  display: inline-block;
  vertical-align: middle;
}
.product-quick-tabs {
  display: flex;
  gap: 8px;
  margin-bottom: 14px;
  overflow-x: auto;
  padding-bottom: 2px;
}
.product-quick-tabs .tab-item {
  border: 1px solid var(--line);
  background: #fff;
  color: #64748b;
  border-radius: 20px;
  padding: 7px 14px;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.15s;
}
.product-quick-tabs .tab-item:hover {
  border-color: var(--green);
  color: var(--green);
}
.product-quick-tabs .tab-item.active {
  background: var(--green);
  color: #fff;
  border-color: var(--green);
  font-weight: 600;
}

