@import "https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400..700;1,9..40,400..700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{color:#1e2b22;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--green:#274c35;--green-dark:#1b3826;--green-accent:#2e7445;--green-soft:#eaf4ed;--green-banner:#1e3b2b;--line:#e4eae2;--line-light:#edf2eb;--muted:#7d8a7f;--text-dark:#1d2b21;--text-secondary:#576559;--panel:#fff;--shadow-sm:0 1px 3px #17281b0a;--shadow-md:0 4px 20px #17281b0d;background-color:#f7f9f6;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background-color:#f7f9f6;min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}.app-shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);z-index:30;background:#fff;flex-direction:column;width:252px;padding:24px 14px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;padding:0 8px 24px;display:flex}.brand-mark{color:#274c35;background:#e8f3ea;border-radius:12px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.brand strong{letter-spacing:-.3px;color:#1e2c21;font:800 16px Manrope,sans-serif;display:block}.brand span{color:#8c978d;letter-spacing:1.2px;margin-top:3px;font-size:8.5px;font-weight:700;display:block}.nav-label{letter-spacing:1px;color:#929d93;padding:0 12px 10px;font-size:9.5px;font-weight:700}.sidebar nav{gap:4px;display:grid}.nav-item{color:#556357;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:11px;padding:10px 12px;font-size:13px;font-weight:600;transition:all .15s;display:flex}.nav-item:hover{color:var(--green);background:#f2f7f1}.nav-item.active{color:#245634;background:#eaf4ed;font-weight:700}.nav-item span{flex:1}.nav-count{color:#975b16;background:#fff0d8;border-radius:20px;padding:2px 7px;font-size:10px}.sidebar-bottom{border-top:1px solid var(--line);flex-direction:column;gap:12px;margin-top:auto;padding:16px 8px 4px;display:flex}.sidebar-brand-status{color:#3b4d40;align-items:center;gap:8px;display:flex}.sidebar-brand-status strong{font-size:11.5px;font-weight:700}.sidebar-brand-status small{color:#8c978d;font-size:9.5px;display:block}.sidebar-settings-btn{color:#637265;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:9px;padding:8px 6px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.sidebar-settings-btn:hover{color:var(--green);background:#f2f7f1}.connection-dot{background:#43a36a;border-radius:50%;flex-shrink:0;width:7px;height:7px;box-shadow:0 0 0 3px #e7f5eb}.main{background-color:#f7f9f6;flex-direction:column;flex:1;min-width:0;max-width:100%;min-height:100vh;margin-left:252px;display:flex}.topbar{border-bottom:1px solid var(--line);z-index:20;background:#fff;justify-content:space-between;align-items:center;height:58px;padding:0 36px;display:flex;position:sticky;top:0}.breadcrumbs{color:#8a968b;letter-spacing:.5px;align-items:center;gap:8px;font-size:11px;font-weight:600;display:flex}.breadcrumbs strong{color:#27372b;letter-spacing:0;font-weight:700}.crumb-slash{color:#cdd6cc}.topbar-right{align-items:center;gap:12px;display:flex}.topbar-date{color:#7b887d;font-size:11px;font-weight:500}.owner-pill{color:#617063;background:#f3f6f2;border:1px solid #e1e7e0;border-radius:20px;padding:4px 10px;font-size:10.5px;font-weight:600}.lock-toggle-btn{color:#4f5f52;background:#fff;border:1px solid #dbe2da;border-radius:6px;align-items:center;gap:5px;padding:4px 9px;font-size:11px;font-weight:600;transition:all .15s;display:inline-flex}.lock-toggle-btn:hover{background:#f4f8f3;border-color:#ccd6cb}.lock-toggle-btn.is-locked{color:#926017;background:#fbf1df;border-color:#edd9b5}.page{box-sizing:border-box;flex:1;width:100%;min-width:0;max-width:1400px;margin:0 auto;padding:26px 36px 48px}.page-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px;display:flex}.eyebrow{letter-spacing:1.1px;color:#829283;text-transform:uppercase;margin:0 0 6px;font-size:9px;font-weight:700}.page h1{letter-spacing:-.6px;color:#1e2c21;margin:0;font:800 24px/1.2 Manrope,sans-serif}.subtitle{color:#7a877b;margin:6px 0 0;font-size:12px;line-height:1.5}.btn{white-space:nowrap;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:8px 14px;font-size:12px;font-weight:700;transition:all .15s;display:inline-flex}.btn-primary{color:#fff;background:#244733;box-shadow:0 1px 3px #24473326}.btn-primary:hover{background:#193625}.btn-secondary{color:#415144;background:#fff;border-color:#dbe2da}.btn-secondary:hover{background:#f6f9f5}.welcome-banner{color:#fff;background:#1e3b2b;border-radius:12px;margin-bottom:18px;padding:26px 30px;position:relative;overflow:hidden;box-shadow:0 4px 20px #1930231f}.banner-content{z-index:2;max-width:680px;position:relative}.banner-eyebrow{letter-spacing:1.2px;color:#8ed4a7;text-transform:uppercase;margin:0 0 8px;font-size:9.5px;font-weight:700}.banner-title{letter-spacing:-.4px;color:#fff;margin:0 0 10px;font:800 22px/1.25 Manrope,sans-serif}.banner-desc{color:#b9d8c2;margin:0 0 18px;font-size:12px;line-height:1.6}.banner-desc p{margin:0}.banner-badge-pill{color:#a3e8be;background:#254b36;border:1px solid #ffffff26;border-radius:30px;align-items:center;gap:7px;padding:6px 14px;font-size:11px;font-weight:600;display:inline-flex}.banner-badge-dot{background:#4ade80;border-radius:50%;width:6px;height:6px;box-shadow:0 0 6px #4ade8099}.banner-watermark{opacity:.16;pointer-events:none;color:#fff;position:absolute;top:50%;right:28px;transform:translateY(-50%)}.metrics-row{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px;display:grid}.metric-box{border:1px solid var(--line);box-shadow:var(--shadow-sm);cursor:pointer;background:#fff;border-radius:12px;flex-direction:column;padding:18px 22px 16px;transition:transform .15s,box-shadow .15s;display:flex}.metric-box:hover{box-shadow:var(--shadow-md);border-color:#cfdad0}.metric-box-head{color:#79877b;justify-content:space-between;align-items:center;font-size:11px;font-weight:600;display:flex}.metric-box-arrow{color:#a4b0a5;transition:transform .15s}.metric-box:hover .metric-box-arrow{color:var(--green);transform:translate(2px,-2px)}.metric-box-value{letter-spacing:-.6px;color:#1f2d22;margin:10px 0 5px;font:800 24px Manrope,sans-serif}.metric-box-sub{color:#929d93;font-size:10px}.stock-section{margin-bottom:24px}.stock-section-head{justify-content:space-between;align-items:flex-end;margin-bottom:12px;display:flex}.stock-section-head h2{color:#223226;letter-spacing:-.2px;margin:0;font:800 15px Manrope,sans-serif}.stock-section-head p{color:#88958a;margin:4px 0 0;font-size:11px}.stock-section-link{color:#275637;background:0 0;border:0;border-radius:4px;align-items:center;gap:4px;padding:4px 6px;font-size:11px;font-weight:700;transition:all .15s;display:inline-flex}.stock-section-link:hover{background:#edf5ee;text-decoration:underline}.stock-grid{grid-template-columns:repeat(6,1fr);gap:10px;width:100%;min-width:0;display:grid}.stock-card{box-sizing:border-box;background:#fff;border:1px solid #e5ebe4;border-radius:9px;flex-direction:column;min-width:0;padding:12px 13px 10px;transition:border-color .15s,box-shadow .15s;display:flex;box-shadow:0 1px 3px #17281b05}.stock-card:hover{border-color:#c7d8c9;box-shadow:0 2px 8px #17281b0d}.stock-card-top{justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.stock-card-code{color:#223326;white-space:nowrap;text-overflow:ellipsis;max-width:80px;font-size:11.5px;font-weight:700;line-height:1.2;overflow:hidden}.stock-status-pill{color:#2d7345;white-space:nowrap;background:#eef7f0;border-radius:4px;padding:2px 5px;font-size:8.5px;font-weight:700}.stock-status-pill.warning{color:#a4691b;background:#fff4e3}.stock-card-body{align-items:baseline;gap:4px;margin-bottom:10px;display:flex}.stock-card-number{color:#27693e;font:800 24px/1 Manrope,sans-serif}.stock-card-unit{color:#8c978e;letter-spacing:.5px;text-transform:uppercase;font-size:8.5px;font-weight:700}.stock-card-foot{border-top:1px solid #f1f4f0;justify-content:space-between;align-items:center;margin-top:auto;padding-top:7px;display:flex}.stock-card-date{color:#929d93;font-size:9.5px}.stock-card-edit-btn{color:#2b593a;background:0 0;border:0;align-items:center;gap:2px;padding:0;font-size:10px;font-weight:700;display:inline-flex}.stock-card-edit-btn:hover{text-decoration:underline}.mid-split-grid{grid-template-columns:minmax(0,1.45fr) minmax(320px,1fr);gap:16px;margin-bottom:24px;display:grid}.panel{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:12px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.panel-heading{justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px 14px;display:flex}.panel-heading h2{color:#253528;letter-spacing:-.2px;margin:0;font:800 14px Manrope,sans-serif}.panel-heading p{color:#859186;margin:4px 0 0;font-size:10.5px}.chart-tag{color:#637164;background:#f3f6f2;border:1px solid #e1e7e0;border-radius:12px;padding:3px 8px;font-size:9.5px;font-weight:700}.chart-container{flex-direction:column;justify-content:flex-end;min-height:140px;padding:10px 20px 8px;display:flex}.chart-bars-row{justify-content:space-between;align-items:flex-end;gap:14px;height:100px;padding:0 10px;display:flex;position:relative}.chart-bar-col{cursor:pointer;flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex;position:relative}.chart-bar-fill{background-color:#c0deca;border-radius:4px 4px 0 0;width:100%;max-width:38px;transition:background-color .15s,height .3s}.chart-bar-col:hover .chart-bar-fill{background-color:#2e6642}.chart-bar-col.active .chart-bar-fill{background-color:#245634}.chart-tooltip{color:#fff;white-space:nowrap;pointer-events:none;z-index:10;background:#1b2f21;border-radius:5px;padding:4px 8px;font-size:9.5px;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 4px 10px #0003}.chart-x-labels{border-top:1px solid #edf2ec;justify-content:space-between;margin-top:4px;padding:8px 10px 0;display:flex}.chart-x-label{text-align:center;color:#8c978e;flex:1;font-size:9.5px;font-weight:500}.panel-footer-note{color:#7b887d;background:#fbfdfa;border-top:1px solid #edf2ec;margin-top:auto;padding:11px 20px;font-size:10.5px}.panel-footer-note strong{color:#274732;font-weight:700}.action-items-list{flex-direction:column;gap:2px;padding:4px 20px 10px;display:flex}.action-item-row{text-align:left;color:#223226;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;width:100%;padding:10px;transition:background .15s;display:flex}.action-item-row:hover{background:#f3f8f3}.action-item-icon{color:#3b5c42;background:#f2f6f1;border-radius:8px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.action-item-text{flex:1;min-width:0}.action-item-text strong{color:#233427;font-size:11.5px;display:block}.action-item-text small{color:#8a968b;margin-top:2px;font-size:9.5px;display:block}.action-item-arrow{color:#a4b0a5;transition:transform .15s}.action-item-row:hover .action-item-arrow{color:var(--green);transform:translate(2px,-2px)}.panel-footer-bullet{color:#838f85;background:#fbfdfa;border-top:1px solid #edf2ec;margin-top:auto;padding:12px 20px;font-size:10px;line-height:1.4}.table-wrap{width:100%;overflow-x:auto}table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:11px}thead{background:#fbfdfa}th{letter-spacing:.5px;text-transform:uppercase;color:#8c978d;text-align:left;border-top:1px solid #f0f4ee;border-bottom:1px solid #edf2eb;padding:10px 20px;font-size:9px;font-weight:700}td{color:#556457;border-bottom:1px solid #f0f4ee;padding:12px 20px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#f9fbf8}.trx-code-col strong{color:#243527;font-size:11.5px;font-weight:700;display:block}.trx-code-col small{color:#8a968b;margin-top:2px;font-size:9.5px;display:block}.trx-status-pill{color:#2b7344;background:#eef7f0;border-radius:4px;align-items:center;padding:3px 7px;font-size:9px;font-weight:700;display:inline-flex}.trx-total-cell{text-align:right}.trx-total-wrap{align-items:center;gap:12px;display:inline-flex}.trx-amount{color:#233427;font-size:11.5px;font-weight:700}.trx-detail-btn{color:#2b593a;background:0 0;border:0;border-radius:4px;align-items:center;gap:2px;padding:3px 6px;font-size:10px;font-weight:700;transition:all .15s;display:inline-flex}.trx-detail-btn:hover{background:#eef5ee;text-decoration:underline}.text-btn{color:#2b593a;white-space:nowrap;background:0 0;border:0;align-items:center;gap:4px;font-size:11px;font-weight:700;display:inline-flex}.text-btn:hover{text-decoration:underline}.modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:60;background:#12201673;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:12px;width:min(100%,540px);max-height:90vh;padding:24px;overflow:auto;box-shadow:0 20px 60px #1020142e}.modal-head{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.modal-head h2{color:#213225;margin:0;font:800 20px Manrope,sans-serif}.modal-head p{color:#839185;margin:4px 0 0;font-size:11px}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.span-2{grid-column:1/-1}.field-label,.form-grid label{color:#5d6c60;flex-direction:column;gap:5px;font-size:10px;font-weight:700;display:flex}.field-label input,.field-label select,.form-grid input,.form-grid select{color:#253528;background:#fff;border:1px solid #dce4da;border-radius:7px;outline:0;width:100%;height:36px;padding:0 10px;font-size:11.5px}.field-label input:focus,.field-label select:focus,.form-grid input:focus,.form-grid select:focus{border-color:#639871;box-shadow:0 0 0 3px #eaf4ed}.modal-actions{justify-content:flex-end;gap:8px;margin-top:22px;display:flex}.batch-stock-table{border:1px solid #e7eee6;border-radius:8px;width:100%;margin-top:10px;overflow:hidden}.batch-stock-table th{background:#f7faf6;padding:8px 12px}.batch-stock-table td{vertical-align:middle;padding:8px 12px}.batch-stock-input{text-align:center;border:1px solid #d3ded1;border-radius:6px;outline:none;width:76px;height:32px;font-size:13px;font-weight:700}.batch-stock-input:focus{border-color:#3b744e;box-shadow:0 0 0 2px #eaf3ec}.alert{border-radius:8px;align-items:center;gap:10px;margin-bottom:18px;padding:10px 14px;font-size:11px;display:flex}.alert-success{color:#28633c;background:#ebf7ee;border:1px solid #cce8d3}.alert-error{color:#a03c31;background:#fef0ee;border:1px solid #f9d1cb}.alert span{flex:1}.alert button{color:inherit;background:0 0;border:0;padding:0}.icon-btn{color:#677769;background:0 0;border:1px solid #0000;border-radius:7px;place-items:center;width:32px;height:32px;display:grid}.icon-btn:hover{background:#f1f6f0}.toolbar{border-bottom:1px solid #edf2ec;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex}.searchbox{color:#8c978e;background:#fff;border:1px solid #dce3da;border-radius:7px;align-items:center;gap:8px;width:100%;max-width:400px;height:36px;padding:0 11px;display:flex}.searchbox input{color:#253628;background:0 0;border:0;outline:0;width:100%;font-size:11.5px}.toolbar-filters{flex:1;align-items:center;gap:10px;display:flex}.toolbar-date-input{color:#253628;background:#fff;border:1px solid #dce3da;border-radius:7px;outline:none;height:36px;padding:0 10px;font-size:11.5px}.toolbar-date-input:focus{border-color:#274c35}.toolbar-btn{color:#3f5142;white-space:nowrap;background:#fff;border:1px solid #dce3da;border-radius:7px;height:36px;padding:0 14px;font-size:11.5px;font-weight:600}.toolbar-btn:hover{background:#f7faf6}.sales-layout{grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);align-items:start;gap:16px;display:grid}.sales-search{width:calc(100% - 40px);margin:0 20px 14px}.product-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 16px 16px;display:grid}.pick-product{text-align:left;background:#fff;border:1px solid #e5ebe3;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;transition:all .15s;display:flex}.pick-product:hover:not(:disabled){background:#fbfdfa;border-color:#a9caa7}.product-symbol{color:#3b744e;background:#eef6ee;border-radius:8px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.pick-info{flex:1;min-width:0}.pick-info strong{color:#243527;white-space:nowrap;text-overflow:ellipsis;font-size:11px;display:block;overflow:hidden}.pick-info small{color:#8e9a8f;margin-top:2px;font-size:9.5px;display:block}.pick-info b{color:#2a613d;margin-top:4px;font-size:11px;display:block}.cart-items{border-top:1px solid #edf2ec;border-bottom:1px solid #edf2ec;min-height:80px;margin:14px 20px}.cart-row{border-bottom:1px solid #f1f4f0;align-items:center;gap:8px;padding:10px 0;display:flex}.cart-row:last-child{border-bottom:0}.cart-name{flex:1;min-width:0}.cart-name strong{color:#253628;font-size:11px;display:block}.cart-name small{color:#8c978e;font-size:9.5px;display:block}.qty-control{border:1px solid #dce4da;border-radius:6px;align-items:center;display:flex;overflow:hidden}.qty-control button{color:#395c42;background:#f6f9f5;border:0;width:24px;height:26px;font-weight:700}.qty-control span{text-align:center;width:26px;font-size:11px}.cart-subtotal{color:#275637;white-space:nowrap;font-size:11px}.checkout-total{justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.checkout-total span{color:#728174;font-size:11px}.checkout-total strong{color:#244933;font:800 20px Manrope,sans-serif}.checkout-submit{width:calc(100% - 40px);margin:0 20px 14px}.footer{border-top:1px solid var(--line);color:#929d93;justify-content:space-between;align-items:center;padding:14px 36px;font-size:10px;display:flex}.footer span:first-child{color:#637566;align-items:center;gap:6px;display:flex}.mobile-menu,.mobile-close,.scrim{display:none}@media (width<=1200px){.stock-grid{grid-template-columns:repeat(4,1fr)}.mid-split-grid{grid-template-columns:1fr}}@media (width<=900px){.sidebar{width:260px;transition:transform .22s;transform:translate(-100%)}.sidebar.sidebar-open{transform:translate(0);box-shadow:10px 0 40px #00000026}.mobile-close{margin-left:auto;display:grid}.mobile-menu{margin-right:10px;display:grid}.scrim{z-index:25;background:#10201466;border:0;display:block;position:fixed;inset:0}.main{margin-left:0}.topbar{padding:0 16px}.page{padding:20px 16px 36px}.stock-grid{grid-template-columns:repeat(3,1fr)}.metrics-row{grid-template-columns:1fr;gap:10px}.sales-layout{grid-template-columns:1fr}}@media (width<=768px){.stock-grid{grid-template-columns:repeat(2,1fr);gap:10px}}@media (width<=540px){.welcome-banner{margin-bottom:14px;padding:18px}.banner-title{font-size:17px;line-height:1.3}.banner-desc{margin-bottom:12px;font-size:11.5px}.banner-badge-pill{padding:4px 10px;font-size:10px}.metrics-row{grid-template-columns:1fr;gap:10px}.metric-box{padding:14px 16px 12px}.metric-box-value{margin:6px 0 3px;font-size:20px}.stock-grid{grid-template-columns:repeat(2,1fr);gap:8px}.stock-card{padding:10px 10px 8px}.stock-card-number{font-size:20px}.topbar-date,.banner-watermark{display:none}.page h1{font-size:20px}}.catat-penjualan-container{margin-bottom:24px}.catat-penjualan-card{background:#fff;border:1px solid #e2ebe0;border-radius:8px;padding:24px;box-shadow:0 1px 3px #1b2b1f0a}.catat-penjualan-header{margin-bottom:22px}.catat-penjualan-header .eyebrow{letter-spacing:1.1px;color:#829283;text-transform:uppercase;margin:0 0 4px;font-size:9.5px;font-weight:700}.catat-penjualan-header h2{color:#172a1b;letter-spacing:-.4px;margin:0 0 6px;font-size:24px;font-weight:800}.catat-penjualan-header .subtitle{color:#627564;margin:0;font-size:13px}.catat-form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=640px){.catat-form-grid{grid-template-columns:1fr}}.field-group{flex-direction:column;display:flex}.field-label{color:#2c3e2e;margin-bottom:6px;font-size:12px;font-weight:600}.field-input{color:#1a2a1d;background:#fff;border:1px solid #d4ded2;border-radius:6px;outline:none;width:100%;padding:10px 14px;font-size:13.5px;transition:border-color .15s,box-shadow .15s}.field-input:focus{border-color:#274c35;box-shadow:0 0 0 2px #274c351a}.catat-info-notice{color:#3b5a3f;background:#edf5eb;border-radius:6px;margin-top:18px;padding:14px 18px;font-size:12.5px;line-height:1.5}.catat-form-actions{justify-content:flex-end;align-items:center;gap:12px;margin-top:20px;display:flex}.btn-simpan-pendapatan{color:#fff;cursor:pointer;background-color:#1e4a2a;border:none;border-radius:6px;padding:10px 22px;font-size:13px;font-weight:600;transition:background-color .15s}.btn-simpan-pendapatan:hover:not(:disabled){background-color:#173b21}.btn-simpan-pendapatan:disabled{opacity:.6;cursor:not-allowed}.inventory-panel{background:#fff;border:1px solid #e2ebe0;border-radius:12px;padding:24px;box-shadow:0 1px 3px #1b2b1f0a}.inventory-actions-bar{align-items:center;gap:10px;margin-bottom:24px;display:flex}.btn-variant-pill{color:#253928;cursor:pointer;background:#fff;border:1px solid #d4ded3;border-radius:20px;padding:7px 16px;font-size:12px;font-weight:600;transition:all .15s}.btn-variant-pill:hover{background:#f4f8f4;border-color:#bccbc0}.inventory-stock-grid{grid-template-columns:repeat(6,1fr);gap:16px;display:grid}@media (width<=1280px){.inventory-stock-grid{grid-template-columns:repeat(4,1fr)}}@media (width<=900px){.inventory-stock-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=600px){.inventory-stock-grid{grid-template-columns:repeat(2,1fr);gap:12px}}.inv-stock-card{background-color:#f3f8f3;border:1px solid #dbe8dc;border-radius:12px;flex-direction:column;justify-content:space-between;min-height:126px;padding:14px 14px 12px;transition:box-shadow .15s,border-color .15s;display:flex}.inv-stock-card:hover{border-color:#c4d8c6;box-shadow:0 2px 8px #1b2b1f0f}.inv-card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.inv-card-code{color:#1e3323;letter-spacing:-.2px;white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:700;overflow:hidden}.inv-status-pill{white-space:nowrap;border-radius:16px;padding:2.5px 8px;font-size:10px;font-weight:600}.inv-status-pill.safe{color:#2b7a42;background-color:#fff;border:1px solid #d6e6d8}.inv-status-pill.warning{color:#b45309;background-color:#fff9ee;border:1px solid #f9dfbe}.inv-card-body{align-items:baseline;gap:5px;margin-bottom:12px;display:flex}.inv-card-qty{color:#1a4223;font-size:26px;font-weight:800;line-height:1}.inv-card-unit{color:#556c5a;letter-spacing:.5px;text-transform:uppercase;font-size:9.5px;font-weight:700}.inv-card-footer{border-top:1px solid #e5eee5;justify-content:space-between;align-items:center;margin-top:auto;padding-top:8px;display:flex}.inv-card-date{color:#7b8e7e;font-size:10px}.inv-edit-link{color:#1e4a2a;cursor:pointer;background:0 0;border:none;align-items:center;gap:2px;padding:0;font-size:11px;font-weight:700;display:inline-flex}.inv-edit-link:hover{text-decoration:underline}.inv-stock-card.warning,.stock-card.warning{background-color:#fef2f2!important;border-color:#fecaca!important}.inv-stock-card.warning:hover,.stock-card.warning:hover{border-color:#fca5a5!important;box-shadow:0 2px 8px #b91c1c14!important}.inv-stock-card.warning .inv-card-code,.stock-card.warning .stock-card-code{color:#991b1b!important}.inv-stock-card.warning .inv-status-pill.warning,.stock-card.warning .stock-status-pill.warning{color:#b91c1c!important;background-color:#fff!important;border:1px solid #fca5a5!important}.inv-stock-card.warning .inv-card-qty,.stock-card.warning .stock-card-number{color:#b91c1c!important}.inv-stock-card.warning .inv-card-unit,.stock-card.warning .stock-card-unit{color:#991b1b!important}.inv-stock-card.warning .inv-card-footer,.stock-card.warning .stock-card-foot{border-top-color:#fecaca!important}.inv-stock-card.warning .inv-card-date,.stock-card.warning .stock-card-date{color:#ef4444!important}.inv-stock-card.warning .inv-edit-link,.stock-card.warning .stock-card-edit-btn{color:#b91c1c!important}.daily-stock-modal{background:#fff;border-radius:10px;flex-direction:column;width:min(100%,680px);max-height:90vh;display:flex;overflow:hidden;box-shadow:0 10px 30px #0000001f}.daily-stock-header{border-bottom:1px solid #eef2ed;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.daily-stock-header h2{color:#192c1c;margin:0;font-size:17px;font-weight:700}.daily-stock-body{flex:1;padding:20px 24px;overflow-y:auto}.daily-stock-instruction{color:#556957;margin:0 0 18px;font-size:12px;line-height:1.55}.daily-stock-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=600px){.daily-stock-grid{grid-template-columns:1fr}}.daily-stock-item{background:#fbfdfa;border:1px solid #dce7db;border-radius:8px;flex-direction:column;padding:12px 14px;display:flex}.daily-stock-item-label{color:#243827;margin-bottom:6px;font-size:11.5px;font-weight:700}.daily-stock-item-input{color:#182b1b;background:#fff;border:1px solid #d4ded3;border-radius:6px;outline:none;width:100%;padding:8px 12px;font-size:13px;transition:border-color .15s,box-shadow .15s}.daily-stock-item-input:focus{border-color:#274c35;box-shadow:0 0 0 2px #274c351a}.daily-stock-status-label{color:#455747;margin-top:10px;margin-bottom:4px;font-size:11px;font-weight:600}.daily-stock-select{color:#182b1b;cursor:pointer;background:#fff;border:1px solid #d4ded3;border-radius:6px;outline:none;width:100%;padding:8px 12px;font-size:13px;transition:border-color .15s}.daily-stock-select:focus{border-color:#274c35}.daily-stock-footer{background:#fff;border-top:1px solid #eef2ed;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.report-print-btn{color:#243827;cursor:pointer;background:#fff;border:1px solid #d4ded3;border-radius:6px;align-items:center;gap:6px;padding:7px 14px;font-size:11.5px;font-weight:600;transition:all .15s;display:inline-flex}.report-print-btn:hover{background:#f4f8f4;border-color:#bccbc0}.report-filter-panel{background:#fff;border:1px solid #e2ece1;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:12px 18px;display:flex}.report-filter-controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.report-toggle-group{background:#f1f5f0;border-radius:6px;gap:2px;padding:2.5px;display:inline-flex}.report-toggle-btn{color:#556857;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:5px 14px;font-size:11.5px;font-weight:600;transition:all .15s}.report-toggle-btn.active{color:#192c1c;background:#fff;box-shadow:0 1px 3px #00000014}.report-date-selector{color:#243827;background:#fff;border:1px solid #d4ded3;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.report-date-selector input{color:#243827;cursor:pointer;background:0 0;border:none;outline:none;font-size:11.5px;font-weight:600}.report-export-btn{color:#243827;cursor:pointer;background:#fff;border:1px solid #d4ded3;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:11.5px;font-weight:600;transition:all .15s;display:inline-flex}.report-export-btn:hover{background:#f4f8f4;border-color:#bccbc0}.report-period-caption{color:#647566;margin-bottom:12px;font-size:11px;font-weight:500}.report-kpi-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px;display:grid}@media (width<=768px){.report-kpi-grid{grid-template-columns:1fr}}.report-kpi-card{background:#fff;border:1px solid #e2ece1;border-radius:10px;flex-direction:column;justify-content:space-between;min-height:108px;padding:16px 20px;display:flex}.report-kpi-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.report-kpi-label{color:#556857;font-size:11.5px;font-weight:600}.report-kpi-badge{color:#2b7344;background:#edf6ef;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.report-kpi-value{color:#192c1c;margin-bottom:6px;font-size:24px;font-weight:800;line-height:1.2}.report-kpi-footer{color:#8a978b;font-size:10.5px}.report-table-panel{background:#fff;border:1px solid #e2ece1;border-radius:10px;overflow:hidden}.report-table-header{border-bottom:1px solid #edf2ec;padding:18px 20px 14px}.report-table-header h2{color:#192c1c;margin:0;font-size:14.5px;font-weight:700}@media print{.sidebar,.top-nav,.report-filter-panel,.report-print-btn,.footer,.catat-penjualan-container{display:none!important}.app-shell{background:#fff!important;display:block!important}.main-content{padding:0!important;overflow:visible!important}.page{padding:0!important}}
