:root{color:#17211d;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--accent:#176b57;--accent-strong:#0c4f40;--surface:#fff;--border:#d9e2dc;--muted:#5c6d66;--error:#b42318;--error-bg:#fff2f0;--ok-bg:#eef8f3;background:#f7f8f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}.app-shell{min-height:100vh;padding:24px}.module-nav{z-index:10;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f7f8f5f0;gap:8px;padding:12px 24px;display:flex;position:sticky;top:0}.module-nav__item{border:1px solid var(--border);background:var(--surface);color:#17211d;cursor:pointer;border-radius:8px;min-height:38px;padding:0 14px;font-weight:700}.module-nav__item--active{border-color:var(--accent);background:var(--accent);color:#fff}.home{width:min(100%,920px);margin:0 auto;padding:48px 0}.home__intro{max-width:680px}.eyebrow{color:var(--accent-strong);letter-spacing:0;text-transform:uppercase;margin:0 0 12px;font-size:.82rem;font-weight:700}h1{margin:0;font-size:2.35rem;line-height:1.1}.lede{color:var(--muted);margin:16px 0 0;font-size:1.05rem;line-height:1.6}.status-panel{border:1px solid var(--border);background:var(--surface);border-radius:8px;align-items:flex-start;gap:14px;max-width:560px;margin-top:32px;padding:18px;display:flex;box-shadow:0 12px 28px #17211d14}.status-panel--ok{background:var(--ok-bg)}.status-panel--error{background:var(--error-bg)}.status-icon{flex:none;margin-top:2px}.status-icon--ok{color:var(--accent)}.status-icon--error{color:var(--error)}.status-icon--loading{color:var(--muted)}.status-label{margin:0;font-weight:700}.status-text{color:var(--muted);margin:4px 0 0;line-height:1.5}.masters-page,.directory-page,.stock-page,.legacy-page,.sales-page,.dashboard-page,.voice-page,.purchase-page{width:min(100%,1080px);margin:0 auto;padding:32px 0}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.tabs{gap:8px;margin:28px 0 18px;display:flex;overflow-x:auto}.tab,.primary-button,.secondary-button,.icon-button{border:1px solid var(--border);background:var(--surface);color:#17211d;cursor:pointer;border-radius:8px;min-height:42px}.tab{white-space:nowrap;padding:0 16px}.tab--active,.primary-button{border-color:var(--accent);background:var(--accent);color:#fff}.primary-button,.secondary-button,.icon-button{justify-content:center;align-items:center;gap:8px;font-weight:700;display:inline-flex}.primary-button{padding:0 16px}.secondary-button{background:var(--surface);padding:0 16px}.secondary-button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.5}.icon-button{flex:none;width:42px}.notice,.muted-text{margin:12px 0}.notice{border-radius:8px;padding:12px 14px;font-weight:700}.notice--ok{background:var(--ok-bg);color:var(--accent-strong)}.notice--error{background:var(--error-bg);color:var(--error)}.notice--warning{color:#7a4a00;background:#fff4cf;border:1px solid #e9bf55}.muted-text{color:var(--muted)}.module-panel{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:20px}.module-panel+.module-panel{margin-top:18px}.module-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px;display:flex}.module-heading h2{margin:0;font-size:1.2rem}.module-heading span{color:var(--muted);font-size:.92rem}.inline-form,.sku-form,.row-edit,.sku-row-edit,.party-form,.legacy-form,.purchase-form,.purchase-header-form,.purchase-items,.bag-editor,.purchase-lines,.purchase-list{gap:10px;display:grid}.purchase-header-form,.purchase-total-panel{grid-template-columns:repeat(3,minmax(0,1fr))}.purchase-header-form,.purchase-item-editor__top,.purchase-total-panel{align-items:end;gap:10px;display:grid}.purchase-form label,.purchase-header-form label,.purchase-item-editor label,.purchase-deduction-row label,.purchase-adjustment-row label,.purchase-total-panel label{color:var(--muted);gap:6px;font-size:.92rem;font-weight:700;display:grid}.purchase-warning{color:#71520a;background:#fff9e8;align-items:center;gap:8px;display:inline-flex}.purchase-warning--strong{color:#8a1f13;background:#fff2f0}.purchase-item-editor{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;gap:12px;padding:14px;display:grid}.purchase-subheading{margin:12px 0 4px}.purchase-item-editor__top{grid-template-columns:minmax(0,1.2fr) minmax(0,.7fr) minmax(90px,.4fr) minmax(90px,.4fr) auto}.purchase-item-editor__amount,.purchase-total-panel div{align-content:center;gap:4px;min-height:42px;display:grid}.purchase-item-editor__amount span,.purchase-total-panel span{color:var(--muted);font-size:.8rem}.bag-editor{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));align-items:end}.bag-input{grid-template-columns:minmax(0,1fr) 34px;gap:4px;display:grid}.bag-editor>label{min-width:0}.bag-editor .secondary-button{justify-content:center;min-height:40px}.purchase-deduction-row,.purchase-adjustment-row{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;align-items:end;gap:10px;padding:12px;display:grid}.purchase-deduction-row{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,.7fr) minmax(0,.7fr) minmax(0,1.2fr) minmax(0,.7fr) minmax(90px,.4fr) minmax(0,1fr) auto}.purchase-adjustment-row{grid-template-columns:minmax(0,1.3fr) minmax(0,1.1fr) minmax(0,1.1fr) minmax(0,.7fr) minmax(0,.7fr) minmax(0,.7fr) minmax(90px,.4fr) auto}.sale-item-editor,.sale-mix-row{align-items:end;gap:10px;display:grid}.sale-item-editor{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr) minmax(0,.8fr) minmax(90px,.4fr) auto;padding:12px}.sale-item-editor label{color:var(--muted);gap:6px;font-size:.92rem;font-weight:700;display:grid}.sale-row{align-items:flex-start}.sale-row__main{gap:10px;min-width:min(100%,620px);display:grid}.sale-mix-editor{border:1px solid var(--border);background:#fff;border-radius:8px;gap:8px;padding:10px;display:grid}.sale-mix-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,130px)}.purchase-total-panel{border:1px solid var(--border);background:#fff;border-radius:8px;padding:14px;display:grid}.purchase-row{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;min-height:74px;padding:12px;display:flex}.purchase-row p{color:var(--muted);margin:4px 0 0;font-size:.92rem}.revision-list,.approval-list{color:var(--muted);flex-wrap:wrap;gap:6px 12px;margin-top:8px;font-size:.82rem;display:flex}.approval-list{color:#31584d}.stock-impact-list{color:#394f62;gap:4px;margin-top:8px;font-size:.82rem;display:grid}.locked-text{color:var(--accent-strong);font-weight:800}.status-badge{border:1px solid var(--border);color:var(--accent-strong);vertical-align:middle;background:#fff;border-radius:8px;padding:2px 8px;font-size:.78rem;font-weight:800;display:inline-flex}.row-remarks{min-width:180px;color:var(--muted);gap:6px;font-size:.82rem;font-weight:700;display:grid}.voice-grid,.voice-result,.payable-summary,.payment-entry,.report-table{gap:10px;display:grid}.voice-grid label,.purchase-report-filters label{color:var(--muted);gap:6px;font-size:.92rem;font-weight:700;display:grid}.voice-result{color:var(--muted);margin-top:12px;font-size:.9rem}.segmented-control{border:1px solid var(--border);background:#fff;border-radius:8px;width:fit-content;display:inline-flex;overflow:hidden}.segmented-control button{border:0;border-right:1px solid var(--border);color:var(--muted);cursor:pointer;background:#fff;padding:8px 12px;font-weight:800}.segmented-control button:last-child{border-right:0}.segmented-control button.is-active{color:#fff;background:#143c3c}.data-table{border-collapse:collapse;width:100%;color:var(--text);font-size:.86rem}.data-table th,.data-table td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:8px}.data-table th{background:#f3f6f5;font-weight:800}.review-row td{background:#fff7ed}.field-warning{color:#9a3412;margin-top:4px;font-size:.78rem;display:block}.draft-status-panel{color:var(--muted);flex-wrap:wrap;gap:10px;margin:8px 0 12px;font-size:.84rem;font-weight:700;display:flex}.modal-backdrop{z-index:40;background:#0f172a61;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--border);background:#fff;border-radius:8px;gap:16px;width:min(520px,100%);padding:20px;display:grid;box-shadow:0 20px 50px #0f172a2e}.voice-recorder-panel{gap:12px;display:grid}.recording-strip{border:1px solid var(--border);background:#f7f9f8;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px;display:grid}.recording-strip>div:first-child{gap:3px;display:grid}.recording-strip span{color:var(--muted);font-size:.84rem}.recording-strip--active{background:#fff2f0;border-color:#f0a6a0}.voice-bars{align-items:center;gap:3px;height:34px;display:inline-flex}.voice-bars span{background:#d9534f;border-radius:999px;width:4px;height:10px;animation:.9s ease-in-out infinite voice-bar}.voice-bars span:nth-child(2n){animation-delay:.12s}.voice-bars span:nth-child(3n){animation-delay:.24s}.recording-strip:not(.recording-strip--active) .voice-bars span{background:#a8b3ad;animation:none}.voice-error-details pre{color:#f6fbf8;background:#17201b;border-radius:8px;padding:10px;overflow:auto}@keyframes voice-bar{0%,to{height:8px}50%{height:30px}}.payable-summary{color:#31584d;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin-top:8px;font-size:.86rem;font-weight:700}.payment-entry{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));width:min(100%,780px)}.purchase-report-filters{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end}.report-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.report-metric,.report-row{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;padding:12px}.report-metric{gap:4px;display:grid}.report-metric span,.report-row span{color:var(--muted);font-size:.86rem}.report-metric strong,.report-row strong{color:#17211d}.report-row{flex-wrap:wrap;gap:8px 14px;display:flex}.inline-form{grid-template-columns:minmax(0,1fr) auto}.sku-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.party-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.party-form label,.legacy-form label{color:var(--muted);gap:6px;font-size:.92rem;font-weight:700;display:grid}.legacy-form__remarks{max-width:680px}.legacy-lines,.legacy-list,.legacy-batch__lines{gap:10px;display:grid}.legacy-line{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr) minmax(0,.8fr) minmax(90px,.4fr) auto;align-items:end;gap:10px;padding:12px;display:grid}.legacy-line__total{align-content:center;gap:4px;min-height:42px;display:grid}.legacy-line__total span{color:var(--muted);font-size:.8rem}.form-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.legacy-batch{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;gap:12px;padding:14px;display:grid}.legacy-batch__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.legacy-batch__header p{color:var(--muted);margin:4px 0 0}.legacy-batch__header span{color:var(--muted);white-space:nowrap}.legacy-batch__line{color:var(--muted);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr) minmax(0,.7fr) minmax(0,.7fr);gap:10px;padding:10px;display:grid}.legacy-batch__line span:first-child,.legacy-batch__line strong{color:#17211d}.party-form__wide{grid-column:1/-1}.party-form__submit{width:max-content}input,select,textarea{border:1px solid var(--border);color:#17211d;background:#fff;border-radius:8px;width:100%;padding:0 12px}input,select{min-height:42px}textarea{resize:vertical;min-height:96px;padding:10px 12px}.list-grid{gap:10px;margin-top:18px;display:grid}.master-row{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;min-height:68px;padding:12px;display:flex}.party-list{gap:10px;margin-top:18px;display:grid}.party-row{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;grid-template-columns:minmax(0,1.2fr) minmax(0,1.5fr) auto;align-items:center;gap:14px;min-height:76px;padding:12px;display:grid}.party-row__main p,.party-row__meta{color:var(--muted);font-size:.92rem}.party-row__main p{margin:4px 0 0}.party-row__meta{flex-wrap:wrap;gap:8px 14px;display:flex}.stock-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;display:grid}.stock-card{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-height:86px;padding:14px;display:flex}.stock-card p,.ledger-row p{color:var(--muted);margin:4px 0 0;font-size:.92rem}.stock-card__figures{text-align:right;white-space:nowrap;justify-items:end;gap:4px;display:grid}.stock-card__figures span{font-size:1.05rem;font-weight:800}.stock-card__figures small{color:var(--muted)}.ledger-list{gap:10px;display:grid}.ledger-row{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,1fr);align-items:center;gap:14px;min-height:76px;padding:12px;display:grid}.ledger-row__meta{color:var(--muted);flex-wrap:wrap;gap:8px 14px;font-size:.92rem;display:flex}.ledger-row__remarks{text-align:right}.master-row p{color:var(--muted);margin:4px 0 0;font-size:.92rem}.row-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.row-edit{grid-template-columns:minmax(0,1fr) auto;width:min(100%,420px)}.sku-row-edit{grid-template-columns:minmax(0,180px) minmax(0,180px) auto;width:min(100%,520px)}.switch{color:var(--muted);white-space:nowrap;align-items:center;gap:8px;font-size:.92rem;display:inline-flex}.switch input{width:18px;min-height:18px}.filters{grid-template-columns:repeat(2,minmax(0,180px));gap:10px;display:grid}.text-button{color:var(--accent-strong);cursor:pointer;background:0 0;border:0;font-weight:700}@media (width<=640px){.app-shell{padding:18px}.module-nav{padding:10px 18px}.home{padding:28px 0}h1{font-size:2rem}.status-panel{padding:16px}.page-header,.master-row,.party-row,.stock-card,.purchase-row,.row-actions{align-items:stretch}.page-header,.master-row,.stock-card,.purchase-row{flex-direction:column}.inline-form,.sku-form,.sku-row-edit,.party-form,.legacy-line,.legacy-batch__line,.purchase-deduction-row,.purchase-adjustment-row,.sale-item-editor,.sale-mix-row,.purchase-header-form,.purchase-item-editor__top,.purchase-total-panel,.filters,.party-row,.ledger-row{grid-template-columns:1fr}.stock-card__figures,.ledger-row__remarks{text-align:left;justify-items:start}.row-actions{justify-content:space-between}.legacy-batch__header{flex-direction:column}}
