:root{--color-primary:#e20613;--color-primary-light:#fce8eb;--color-primary-lighter:#fef5f6;--color-primary-dark:#b5040f;--color-primary-ring:#ffb3b8;--color-accent:#f39200;--color-background:#f8f9fa;--color-surface:#fff;--color-surface-muted:#fafbfc;--color-text:#2b2d42;--color-text-secondary:#5c6378;--color-text-muted:#8d99ae;--color-border:#e2e8f0;--color-border-strong:#cbd5e1;--color-success:#10b981;--color-success-bg:#ecfdf5;--color-success-text:#047857;--color-warning:#f59e0b;--color-warning-bg:#fffbeb;--color-warning-text:#b45309;--color-danger:#ef4444;--color-danger-bg:#fef2f2;--color-danger-text:#b91c1c;--color-error:#ef4444;--color-info:#3b82f6;--color-info-bg:#eff6ff;--color-info-text:#1d4ed8;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px #1018280a;--shadow-md:0 4px 12px #1018280f;--shadow-lg:0 20px 40px #10182829;--control-height:40px}*,:before,:after{box-sizing:border-box}body{background-color:var(--color-background);color:var(--color-text);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.5}button,input,select,textarea{font-family:inherit}.page{flex:1;padding:28px 32px;position:relative;overflow-y:auto}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.page-title{color:var(--color-text);letter-spacing:-.01em;margin:0;font-size:22px;font-weight:700;line-height:1.3}.page-subtitle{color:var(--color-text-muted);margin:4px 0 0;font-size:13px;font-weight:400}.page-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.section-title{color:var(--color-text);margin:0 0 16px;font-size:16px;font-weight:600}@media (width<=768px){.page{padding:20px 16px}.page-title{font-size:20px}.page-header{margin-bottom:18px}}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card-body{padding:20px}.card-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.card-title{color:var(--color-text);margin:0;font-size:15px;font-weight:600}.filter-bar{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;padding:16px;display:flex}.filter-bar>.filter-grow{flex:1;min-width:220px}.filter-bar>.filter-item{width:200px}@media (width<=640px){.filter-bar>.filter-item,.filter-bar>.filter-grow,.filter-bar>.btn{width:100%;min-width:0}}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px;display:grid}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);align-items:center;gap:14px;padding:18px 20px;display:flex}.stat-icon{background:var(--color-primary-light);width:44px;height:44px;color:var(--color-primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.stat-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:12px;font-weight:600}.stat-value{color:var(--color-text);margin:2px 0 0;font-size:22px;font-weight:700}.btn,.btn-primary,.btn-secondary,.btn-outline,.btn-success,.btn-danger,.btn-ghost{height:var(--control-height);border-radius:var(--radius-md);white-space:nowrap;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:600;line-height:1;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.btn:disabled,.btn-primary:disabled,.btn-secondary:disabled,.btn-outline:disabled,.btn-success:disabled,.btn-danger:disabled,.btn-ghost:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);color:#fff;box-shadow:0 1px 2px #e2061333}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-dark)}.btn-secondary{background-color:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background-color:var(--color-background);border-color:var(--color-border-strong)}.btn-outline{background-color:var(--color-surface);border-color:var(--color-primary);color:var(--color-primary)}.btn-outline:hover:not(:disabled){background-color:var(--color-primary-lighter)}.btn-success{background-color:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background-color:#059669}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-ghost{color:var(--color-text-secondary);background-color:#0000}.btn-ghost:hover:not(:disabled){background-color:var(--color-background);color:var(--color-text)}.btn-sm{border-radius:var(--radius-sm);height:32px;padding:0 12px;font-size:13px}.btn-block{width:100%}.icon-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background-color .15s,color .15s;display:inline-flex}.icon-btn:hover:not(:disabled){background-color:var(--color-background);color:var(--color-text)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn.view{color:#7c3aed}.icon-btn.view:hover:not(:disabled){color:#6d28d9;background-color:#f5f3ff}.icon-btn.edit{color:#2563eb}.icon-btn.edit:hover:not(:disabled){color:#1d4ed8;background-color:#eff6ff}.icon-btn.delete{color:var(--color-danger)}.icon-btn.delete:hover:not(:disabled){background-color:var(--color-danger-bg);color:#dc2626}.icon-btn.download{color:#16a34a}.icon-btn.download:hover:not(:disabled){background-color:var(--color-success-bg);color:#15803d}.action-group{align-items:center;gap:4px;display:inline-flex}.form-group{margin-bottom:16px}.form-label,.form-group>label{color:var(--color-text);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.form-hint{color:var(--color-text-muted);margin-top:4px;font-size:12px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}@media (width<=640px){.form-grid,.form-grid-3{grid-template-columns:1fr}}.form-control,.form-input,.search-input{width:100%;height:var(--control-height);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);background-color:var(--color-surface);outline:none;padding:0 12px;font-size:14px;transition:border-color .15s,box-shadow .15s}textarea.form-control,textarea.form-input{resize:vertical;height:auto;min-height:80px;padding:10px 12px}.form-control::placeholder,.form-input::placeholder,.search-input::placeholder{color:var(--color-text-muted)}.form-control:focus,.form-input:focus,.search-input:focus{border-color:var(--color-primary-ring);box-shadow:0 0 0 3px var(--color-primary-lighter)}.form-control:disabled,.form-control[readonly],.form-input:disabled{background-color:var(--color-background);color:var(--color-text-secondary);cursor:not-allowed}.search-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238d99ae' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E");background-position:12px;background-repeat:no-repeat;padding-left:38px}.alert{border-radius:var(--radius-md);border:1px solid #0000;margin-bottom:16px;padding:10px 14px;font-size:13px}.alert-error{background:var(--color-danger-bg);color:var(--color-danger-text);border-color:#fecaca}.alert-success{background:var(--color-success-bg);color:var(--color-success-text);border-color:#a7f3d0}.alert-warning{background:var(--color-warning-bg);color:var(--color-warning-text);border-color:#fde68a}.alert-info{background:var(--color-info-bg);color:var(--color-info-text);border-color:#bfdbfe}.badge{white-space:nowrap;background:var(--color-background);color:var(--color-text-secondary);border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:12px;font-weight:600;line-height:1.5;display:inline-flex}.badge-success{background:var(--color-success-bg);color:var(--color-success-text)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning-text)}.badge-danger{background:var(--color-danger-bg);color:var(--color-danger-text)}.badge-info{background:var(--color-info-bg);color:var(--color-info-text)}.badge-primary{background:var(--color-primary-light);color:var(--color-primary-dark)}.badge-neutral{color:#475569;background:#f1f5f9}.tabs{border-bottom:1px solid var(--color-border);gap:4px;margin-bottom:20px;display:flex;overflow-x:auto}.tab{color:var(--color-text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 16px;font-size:14px;font-weight:600;text-decoration:none;transition:color .15s,border-color .15s}.tab:hover{color:var(--color-text)}.tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-count{background:var(--color-background);min-width:22px;height:20px;color:var(--color-text-muted);border-radius:999px;justify-content:center;align-items:center;margin-left:6px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.tab.active .tab-count{background:var(--color-primary-light);color:var(--color-primary)}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:20px;display:grid}.kpi-card{background:var(--color-surface);border:1px solid var(--color-border);border-top:3px solid var(--kpi-color,var(--color-primary));border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:16px 16px 14px;position:relative}.kpi-icon{width:32px;height:32px;color:var(--kpi-color,var(--color-primary));background:color-mix(in srgb, var(--kpi-color,var(--color-primary)) 12%, white);border-radius:8px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:14px;right:14px}.kpi-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0;padding-right:40px;font-size:12px;font-weight:600}.kpi-value{color:var(--color-text);margin:6px 0 2px;font-size:22px;font-weight:700;line-height:1.25}.kpi-value span{color:var(--color-text-muted);font-size:13px;font-weight:600}.kpi-meta{color:var(--color-text-secondary);margin:0;font-size:12px}@media (width<=640px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpi-value{font-size:19px}.kpi-card{padding:14px 12px 12px}.kpi-icon{display:none}.kpi-label{padding-right:0;font-size:11px}}.modal-overlay{z-index:1000;background-color:#0f172a73;justify-content:center;align-items:center;padding:16px;animation:.15s ease-out modal-fade;display:flex;position:fixed;inset:0}.modal{background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;width:100%;max-width:520px;max-height:calc(100vh - 32px);animation:.18s ease-out modal-pop;display:flex;overflow:hidden}.modal.modal-sm{max-width:420px}.modal.modal-lg{max-width:760px}.modal.modal-xl{max-width:1000px}.modal-header{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.modal-title{color:var(--color-text);margin:0;font-size:17px;font-weight:700;line-height:1.35}.modal-close{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background-color .15s,color .15s;display:inline-flex}.modal-close:hover{background-color:var(--color-primary-light);color:var(--color-primary)}.modal-body{flex:1;padding:20px;overflow-y:auto}.modal-footer{border-top:1px solid var(--color-border);background-color:var(--color-surface-muted);flex-shrink:0;justify-content:flex-end;align-items:center;gap:10px;padding:14px 20px;display:flex}.detail-section-title{border-bottom:1px solid var(--color-border);color:var(--color-primary);text-transform:uppercase;letter-spacing:.04em;margin:0 0 12px;padding-bottom:8px;font-size:13px;font-weight:700}.detail-section-title:not(:first-child){margin-top:20px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.detail-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-label{color:var(--color-text-muted);margin:0 0 2px;font-size:12px}.detail-value{color:var(--color-text);word-break:break-word;margin:0;font-size:14px;font-weight:500}@media (width<=640px){.modal-overlay{align-items:flex-end;padding:0}.modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:92vh}.detail-grid,.detail-grid.cols-3{grid-template-columns:1fr 1fr}}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-pop{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}.table-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%}.data-table th{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;background-color:var(--color-surface-muted);border-bottom:1px solid var(--color-border);padding:12px 14px;font-size:12px;font-weight:600}.data-table td{color:var(--color-text);border-bottom:1px solid var(--color-border);vertical-align:middle;white-space:nowrap;padding:12px 14px;font-size:14px}.data-table td.cell-full,.data-table td.cell-wrap{white-space:normal;min-width:180px}.data-table tbody tr:last-child>td{border-bottom:none}.data-table tbody tr{transition:background-color .1s}.data-table tbody tr:hover{background-color:var(--color-primary-lighter)}.data-table .text-right{text-align:right}.data-table .text-center{text-align:center}.data-table td.cell-primary{color:var(--color-primary);font-weight:600}.data-table td.cell-empty{text-align:center;color:var(--color-text-muted);padding:40px 16px}.cell-sub{color:var(--color-text-muted);margin-top:2px;font-size:12px;display:block}@media (width>=1025px){.data-table th.col-merged,.data-table td.col-merged{display:none}.data-table td.cell-actions{z-index:1;background-color:var(--color-surface);position:sticky;right:0;box-shadow:-8px 0 8px -8px #1018281f}.data-table:has(td.cell-actions) thead th:last-child{z-index:1;background-color:var(--color-surface);position:sticky;right:0;box-shadow:-8px 0 8px -8px #1018281f}.data-table:has(td.cell-actions) thead th:last-child{background-color:var(--color-surface-muted)}.data-table tbody tr:hover td.cell-actions{background-color:var(--color-primary-lighter)}}@media (width<=1024px){.data-table .desktop-only{display:none!important}}.text-muted{color:var(--color-text-muted)}.text-success{color:var(--color-success-text)}.text-danger{color:var(--color-danger-text)}.text-primary{color:var(--color-primary)}.fw-600{font-weight:600}@media (width<=1024px){.table-card{box-shadow:none;background:0 0;border:none;overflow:visible}.data-table,.data-table tbody{width:100%;display:block}.data-table thead{display:none}.data-table tbody{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.data-table tbody tr{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:12px 16px;padding:16px;display:grid}.data-table tbody tr:hover{background:var(--color-surface);border-color:var(--color-primary-ring)}.data-table tbody td{white-space:normal;word-break:break-word;border:none;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;font-size:14px;display:flex;text-align:left!important;padding:0!important}.data-table td:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:11px;font-weight:600}.data-table td:not([data-label]):before,.data-table td[data-label=""]:before{display:none}.data-table tbody td.cell-primary{color:var(--color-primary);font-size:15px;font-weight:700;padding-bottom:4px!important}.data-table td.cell-primary:before{display:none}.data-table tbody td.cell-status{justify-content:flex-start;align-items:flex-end;padding-bottom:4px!important}.data-table td.cell-status:before{display:none}.data-table td.cell-primary:not(:has(~td.cell-status)){grid-column:1/-1}.data-table tr:has(td.cell-status) td.cell-primary{grid-area:1/1}.data-table tr:has(td.cell-primary) td.cell-status{grid-area:1/2}.data-table td.cell-full{grid-column:1/-1}.data-table tbody td.cell-right{font-weight:600}.data-table tbody td.cell-actions{flex-flow:wrap;grid-column:1/-1;justify-content:flex-end;align-items:center;gap:6px;margin-top:2px;border-top:1px solid var(--color-border)!important;padding-top:12px!important}.data-table td.cell-actions:before{display:none}.data-table tbody td.cell-empty{color:var(--color-text-muted);grid-column:1/-1;display:block;text-align:center!important;padding:32px 16px!important}.data-table td.cell-empty:before{display:none}.data-table tbody tr:has(td.cell-empty){grid-column:1/-1;display:block}}@media (width<=640px){.data-table tbody{grid-template-columns:1fr}}.pf-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:20px;display:grid}.pf-steps{flex-direction:column;gap:16px;display:flex}.pf-step{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.pf-step-head{border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:var(--radius-md) var(--radius-md) 0 0;align-items:center;gap:12px;padding:12px 16px;display:flex}.pf-step-num{color:#fff;background:var(--color-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:inline-flex}.pf-step-num.done{background:var(--color-success)}.pf-step-title{color:var(--color-text);margin:0;font-size:14px;font-weight:700}.pf-step-hint{color:var(--color-text-muted);margin:0;font-size:12px}.pf-step-body{padding:16px}.pf-step-body .form-group{margin-bottom:0}.req{color:var(--color-primary);margin-left:2px}.input-affix{height:var(--control-height);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);align-items:stretch;transition:border-color .15s,box-shadow .15s;display:flex}.input-affix:focus-within{border-color:var(--color-primary-ring);box-shadow:0 0 0 3px var(--color-primary-lighter)}.input-affix input{min-width:0;color:var(--color-text);background:0 0;border:none;outline:none;flex:1;padding:0 12px;font-size:14px}.input-affix .affix{color:var(--color-text-muted);background:var(--color-surface-muted);align-items:center;padding:0 10px;font-size:13px;font-weight:600;display:inline-flex}.input-affix .affix:first-child{border-right:1px solid var(--color-border);border-radius:var(--radius-md) 0 0 var(--radius-md)}.input-affix .affix:last-child{border-left:1px solid var(--color-border);border-radius:0 var(--radius-md) var(--radius-md) 0}.pf-summary{border:1px solid var(--color-border);border-top:3px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-surface);padding:16px;position:sticky;top:0}.pf-summary-title{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0 0 12px;font-size:12px;font-weight:700}.pf-summary-row{border-bottom:1px dashed var(--color-border);justify-content:space-between;gap:12px;padding:7px 0;font-size:13px;display:flex}.pf-summary-row span:first-child{color:var(--color-text-muted)}.pf-summary-row span:last-child{color:var(--color-text);text-align:right;word-break:break-word;font-weight:600}.pf-summary-row .empty{color:var(--color-border-strong)!important;font-weight:400!important}.pf-total{border-radius:var(--radius-md);background:var(--color-primary-lighter);text-align:center;margin-top:14px;padding:14px}.pf-total-label{color:var(--color-text-secondary);margin:0;font-size:12px;font-weight:600}.pf-total-value{color:var(--color-primary);word-break:break-all;margin:4px 0 0;font-size:26px;font-weight:800;line-height:1.2}.pf-total-calc{color:var(--color-text-muted);margin:4px 0 0;font-size:12px}.pf-status{margin-top:14px}@media (width<=860px){.pf-layout{grid-template-columns:1fr}.pf-summary{position:static}}.switch{background:var(--color-border-strong);cursor:pointer;border:none;border-radius:999px;flex-shrink:0;width:40px;height:22px;padding:0;transition:background-color .2s;position:relative}.switch span{background:#fff;border-radius:50%;width:18px;height:18px;transition:left .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.switch.on{background:var(--color-success)}.switch.on span{left:20px}.switch:focus-visible{box-shadow:0 0 0 3px var(--color-success-bg);outline:none}.empty-state{text-align:center;color:var(--color-text-muted);padding:48px 16px;font-size:14px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#d6dbe3;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#b8c0cc}.pr-short{border-radius:var(--radius-md);background:var(--color-danger-bg);border:1px solid #fecaca;margin-top:16px;padding:12px 14px}.pr-short-title{color:var(--color-danger-text);margin:0 0 10px;font-size:14px}.pr-chip{background:var(--color-surface);color:var(--color-danger-text);cursor:pointer;border:1px solid #fecaca;border-radius:999px;padding:6px 12px;font-family:inherit;font-size:13px;font-weight:500}.unit-toggle{border:1px solid var(--color-border);border-radius:var(--radius-sm);vertical-align:middle;margin-left:8px;display:inline-flex;overflow:hidden}.unit-toggle button{cursor:pointer;color:inherit;background:0 0;border:0;padding:1px 8px;font-size:11px;font-weight:600}.unit-toggle button.active{background:var(--color-primary);color:#fff}.photo-picker{margin-top:8px}.photo-picker-thumb{display:inline-block;position:relative}.photo-picker-thumb img{object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--color-border);width:64px;height:64px;display:block}.photo-picker-thumb button{background:var(--color-danger);color:#fff;cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;padding:0;display:flex;position:absolute;top:-6px;right:-6px}.sidebar{background-color:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;width:220px;height:100vh;transition:width .3s,transform .3s;display:flex;position:sticky;top:0;overflow:hidden}.sidebar-logo{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:flex-start;align-items:center;height:64px;padding:0 20px;display:flex}.brand-logo-img{object-fit:cover;width:96px;height:52px;display:block}.sidebar-menu{flex-direction:column;flex:1;gap:2px;padding:14px 12px;display:flex;overflow:hidden auto}.sidebar-bottom{border-top:1px solid var(--color-border);padding:12px}.menu-item{white-space:nowrap;color:var(--color-text-secondary);cursor:pointer;box-sizing:border-box;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;width:100%;padding:9px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s ease-in-out;display:flex;position:relative}.menu-section-label{letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;color:var(--color-text-muted);padding:14px 12px 6px;font-size:11px;font-weight:600}.menu-section-label:first-child{padding-top:2px}.menu-icon{width:18px;height:18px;color:var(--color-text-muted);flex-shrink:0;transition:color .2s ease-in-out}.menu-item:hover{background-color:var(--color-primary-lighter);color:var(--color-text)}.menu-item:hover .menu-icon{color:var(--color-primary)}.menu-item.active{background-color:var(--color-primary-light);color:var(--color-primary);font-weight:600}.menu-item.active:before{content:"";background:var(--color-primary);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:-12px}.menu-item.active .menu-icon{color:var(--color-primary)}.logout-btn,.logout-btn .menu-icon{color:var(--color-danger)}.logout-btn:hover{color:var(--color-danger);background-color:#fef2f2}.sidebar.closed{border-right:none;width:0}@media (width<=768px){.sidebar{z-index:1000;box-shadow:var(--shadow-lg);position:fixed;top:0;bottom:0;left:0}.sidebar.closed{width:220px;transform:translate(-100%)}}.mobile-close-btn{color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:6px;display:none}.mobile-close-btn:hover{background-color:var(--color-primary-light);color:var(--color-primary)}.sidebar-backdrop{display:none}@media (width<=768px){.sidebar-backdrop{z-index:999;background:#0f172a59;display:block;position:fixed;inset:0}.sidebar-logo{justify-content:space-between;align-items:center}.mobile-close-btn{display:flex}}.menu-badge{background:var(--color-danger);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.navbar{background-color:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:20;flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex;position:sticky;top:0}.navbar-left,.navbar-right{align-items:center;gap:12px;display:flex}.navbar-toggle{width:36px;height:36px;color:var(--color-text)}.navbar-toggle:hover{background-color:var(--color-primary-light)!important;color:var(--color-primary)!important}.profile-menu{border-radius:var(--radius-md);align-items:center;gap:10px;padding:4px 6px 4px 12px;transition:background-color .15s;display:flex}.profile-menu:hover{background-color:var(--color-background)}.profile-info{text-align:right;flex-direction:column;line-height:1.25;display:flex}.profile-name{color:var(--color-text);text-transform:capitalize;font-size:14px;font-weight:600}.profile-role{color:var(--color-text-muted);font-size:12px}.avatar{background-color:var(--color-primary-light);width:36px;height:36px;color:var(--color-primary);border:1px solid #f9d0d5;border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}@media (width<=768px){.navbar{padding:0 12px}}@media (width<=480px){.profile-info{display:none}}.login-container{background:radial-gradient(circle at 15% 10%, var(--color-primary-light) 0, transparent 40%), radial-gradient(circle at 85% 90%, #fff4e0 0, transparent 40%), var(--color-background);justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.login-box{background-color:var(--color-surface);border:1px solid var(--color-border);border-top:4px solid var(--color-primary);border-radius:16px;width:100%;max-width:400px;padding:32px 32px 28px;box-shadow:0 12px 32px #10182814}.login-logo-container{justify-content:center;margin:-16px 0 -12px;display:flex}.login-logo{max-width:130px;height:auto}.login-title{text-align:center;color:var(--color-text);margin:0;font-size:20px;font-weight:700}.login-subtitle{text-align:center;color:var(--color-text-muted);margin:4px 0 24px;font-size:13px}.error-message{background-color:var(--color-danger-bg);color:var(--color-danger-text);border-radius:var(--radius-md);text-align:center;border:1px solid #fecaca;margin-bottom:16px;padding:10px 12px;font-size:13px}.password-input-container{align-items:center;display:flex;position:relative}.password-input-container .form-input{padding-right:40px}.password-toggle-btn{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:color .2s;display:flex;position:absolute;right:8px}.password-toggle-btn:hover{color:var(--color-primary)}.login-btn{background-color:var(--color-primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;width:100%;height:42px;margin-top:4px;font-size:15px;font-weight:600;transition:background-color .2s;box-shadow:0 1px 2px #e2061333}.login-btn:hover:not(:disabled){background-color:var(--color-primary-dark)}.login-btn:disabled{opacity:.7;cursor:not-allowed}.login-footer{border-top:1px solid var(--color-border);text-align:center;margin-top:20px;padding-top:16px;font-size:13px}.login-link{color:var(--color-primary);font-weight:600;text-decoration:none}.login-link:hover{text-decoration:underline}.login-link.muted{color:var(--color-text-secondary)}.dash-kpis.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.dash-kpis.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.dash-kpi-link{color:inherit;text-decoration:none;transition:box-shadow .15s,transform .15s;display:block}.dash-kpi-link:hover{box-shadow:var(--shadow-md,0 4px 12px #0f172a14);transform:translateY(-1px)}.dash-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:16px;margin-bottom:16px;display:grid}.dash-span-2{grid-column:span 2}.dash-side{flex-direction:column;gap:16px;min-width:0;display:flex}.dash-panel{min-width:0}.dash-panel-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex}.dash-panel-head .card-title{margin:0}.dash-panel-body{padding:14px 16px}.dash-head-meta{color:var(--color-text-secondary);font-size:13px;font-weight:600}.dash-link{color:#2a78d6;white-space:nowrap;align-items:center;gap:4px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.dash-link:hover{text-decoration:underline}.dash-empty{text-align:center;color:var(--color-text-muted);margin:0;padding:18px 0;font-size:13px}.dash-spin{animation:.9s linear infinite dash-spin}@keyframes dash-spin{to{transform:rotate(360deg)}}.dash-chart{align-items:stretch;height:240px;padding-top:8px;display:flex}.dash-bar-col{outline:none;flex-direction:column;flex:1;min-width:0;display:flex}.dash-bar-track{border-bottom:1px solid var(--color-border-strong,#cbd5e1);background-image:linear-gradient(to top, var(--color-border) 1px, transparent 1px);background-size:100% 25%;flex:1;justify-content:center;align-items:flex-end;display:flex;position:relative}.dash-bar{opacity:.85;background:#2a78d6;border-radius:4px 4px 0 0;width:min(36px,70%);transition:opacity .15s}.dash-bar-col.today .dash-bar{opacity:1}.dash-bar-col:hover .dash-bar,.dash-bar-col:focus .dash-bar{opacity:1;box-shadow:0 0 0 2px var(--color-surface), 0 0 0 3px #2a78d6}.dash-bar-label{text-align:center;color:var(--color-text-muted);white-space:nowrap;padding:8px 0 0;font-size:12px}.dash-bar-col.today .dash-bar-label{color:var(--color-text);font-weight:700}.dash-tip{z-index:2;border-radius:var(--radius-md);color:#fff;white-space:nowrap;pointer-events:none;opacity:0;background:#1f2937;flex-direction:column;align-items:center;padding:6px 10px;font-size:12px;transition:opacity .12s,transform .12s;display:flex;position:absolute;bottom:calc(100% - 4px);left:50%;transform:translate(-50%,4px)}.dash-tip small{color:#cbd5e1;font-size:11px}.dash-bar-col:hover .dash-tip,.dash-bar-col:focus .dash-tip{opacity:1;transform:translate(-50%)}.dash-bar-col:first-child .dash-tip{left:0;transform:translateY(4px)}.dash-bar-col:first-child:hover .dash-tip,.dash-bar-col:first-child:focus .dash-tip{transform:translate(0)}.dash-bar-col:last-child .dash-tip{left:auto;right:0;transform:translateY(4px)}.dash-bar-col:last-child:hover .dash-tip,.dash-bar-col:last-child:focus .dash-tip{transform:translate(0)}.dash-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.dash-top{border-bottom:1px solid var(--color-border);padding:10px 0}.dash-top:first-child{padding-top:0}.dash-top:last-child{border-bottom:0;padding-bottom:0}.dash-top-row{justify-content:space-between;gap:8px;display:flex}.dash-meter{background:var(--color-border);border-radius:999px;height:6px;margin:6px 0 4px;display:block;overflow:hidden}.dash-meter span{background:#2a78d6;border-radius:999px;height:100%;display:block}.dash-row{border-bottom:1px solid var(--color-border);align-items:center;gap:10px;padding:10px 0;display:flex}.dash-row:first-child{padding-top:0}.dash-row:last-child{border-bottom:0;padding-bottom:0}.dash-row-icon{color:#2a78d6;background:#e8f1fc;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.dash-row-icon.orange{color:#c2531f;background:#fdeee6}.dash-row-icon.warn{background:var(--color-warning-bg);color:var(--color-warning-text)}.dash-row-main{flex-direction:column;flex:1;min-width:0;display:flex}.dash-row-main .fw-600{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dash-table{box-shadow:none;border-radius:0 0 var(--radius-lg) var(--radius-lg);border:0;margin:-14px -16px}@media (width<=1100px){.dash-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-span-2{grid-column:1/-1}.dash-side{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}}@media (width<=900px){.dash-kpis.cols-4,.dash-kpis.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.dash-grid,.dash-side{grid-template-columns:minmax(0,1fr)}.dash-span-2,.dash-side{grid-column:auto}.dash-chart{height:200px}.dash-bar{width:70%}.dash-table{margin:0}}@media (width<=640px){.dash .page-actions{width:100%}.dash .page-actions>*{flex:1;justify-content:center}.dash-panel-head,.dash-panel-body{padding:12px}.dash-bar-label{font-size:11px}}.todo-card{border:1px solid var(--color-border);border-radius:var(--radius-lg,10px);background:var(--color-surface);margin-bottom:20px;padding:16px 18px}.todo-title{color:var(--color-text);margin:0 0 10px;font-size:16px;font-weight:700}.todo-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.todo-row{border-top:1px solid var(--color-border);align-items:center;gap:12px;padding:10px 0;display:flex}.todo-row:first-child{border-top:none}.todo-row .btn-sm{flex-shrink:0;text-decoration:none}.custom-dropdown{width:100%;color:var(--color-text);font-family:inherit;position:relative}.custom-dropdown.disabled{opacity:.6;pointer-events:none}.dropdown-header{min-height:var(--control-height,40px);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md,8px);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;font-size:14px;transition:all .2s;display:flex}.dropdown-header:hover{border-color:var(--color-border-strong,#cbd5e1)}.dropdown-search-input::placeholder{color:var(--color-text-muted)}.dropdown-header.open{box-shadow:0 0 0 3px var(--color-primary-lighter);border-color:#ffb3b8}.dropdown-icon{width:18px;height:18px;color:var(--color-text-muted);flex-shrink:0;transition:transform .2s}.dropdown-icon.rotated{color:var(--color-primary);transform:rotate(180deg)}.dropdown-list{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md,8px);z-index:50;max-height:240px;margin-top:4px;padding:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 10px 24px #1018281f}.dropdown-list.floating{z-index:1100;box-shadow:0 8px 28px #00000029}.dropdown-option{cursor:pointer;border-radius:6px;padding:9px 10px;font-size:14px;transition:background-color .1s}.dropdown-option:hover{background-color:var(--color-primary-lighter)}.dropdown-option.selected{background-color:var(--color-primary-light);color:var(--color-primary);font-weight:500}.dropdown-empty{color:var(--color-text-muted);text-align:center;padding:10px 12px}.custom-datepicker{width:100%;color:var(--color-text);font-family:inherit;position:relative}.custom-datepicker.disabled{opacity:.6;pointer-events:none}.datepicker-header{min-height:var(--control-height,40px);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md,8px);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;font-size:14px;transition:all .2s;display:flex}.datepicker-header:hover{border-color:var(--color-primary-light)}.datepicker-header.open{box-shadow:0 0 0 3px var(--color-primary-lighter);border-color:#ffb3b8}.placeholder-text{color:var(--color-text-muted)}.selected-text{color:var(--color-text);font-weight:500}.datepicker-icon{width:18px;height:18px;color:var(--color-text-muted)}.datepicker-header.open .datepicker-icon{color:var(--color-primary)}.datepicker-popup{background-color:var(--color-surface);border:1px solid var(--color-border);z-index:10;border-radius:8px;width:280px;margin-top:4px;padding:16px;position:absolute;top:100%;left:0;box-shadow:0 4px 20px #00000014}.datepicker-popup.floating{z-index:1100;box-shadow:0 8px 28px #00000029}.calendar-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.calendar-title{color:var(--color-text);font-weight:600}.calendar-nav-btn{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:background-color .2s;display:flex}.calendar-nav-btn:hover{background-color:var(--color-background);color:var(--color-primary)}.calendar-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar-weekday{color:var(--color-text-muted);margin-bottom:8px;font-size:12px;font-weight:600}.calendar-day{cursor:pointer;border-radius:4px;justify-content:center;align-items:center;height:32px;font-size:14px;transition:all .1s;display:flex}.calendar-day:not(.empty):not(.selected):hover{background-color:var(--color-primary-lighter);color:var(--color-primary)}.calendar-day.empty{cursor:default}.calendar-day.today{color:var(--color-primary);background-color:var(--color-primary-lighter);font-weight:700}.calendar-day.selected{background-color:var(--color-primary);color:#fff;font-weight:600}.mt-pipeline-card{margin-bottom:24px;padding:18px 20px 20px}.mt-pipeline-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.mt-pipeline{align-items:stretch;gap:6px;display:flex}.mt-stage{text-align:left;min-width:0;font:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-top:3px solid var(--stage-color);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;flex:1 1 0;align-items:flex-start;gap:2px;padding:14px;transition:border-color .15s,box-shadow .15s,background-color .15s;display:flex}.mt-stage:hover{box-shadow:var(--shadow-md)}.mt-stage.active{background:var(--color-primary-lighter);border-color:var(--color-primary-ring);border-top-color:var(--stage-color);box-shadow:0 0 0 3px var(--color-primary-lighter)}.mt-stage.empty .mt-stage-value{color:var(--color-text-muted)}.mt-stage-top{justify-content:space-between;align-items:center;width:100%;margin-bottom:8px;display:flex}.mt-stage-icon{width:32px;height:32px;color:var(--stage-color);background:color-mix(in srgb, var(--stage-color) 12%, white);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.mt-stage-step{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.mt-stage-label{color:var(--color-text-secondary);max-width:100%;margin:0;font-size:13px;font-weight:600;line-height:1.3}.mt-stage-value{color:var(--color-text);margin:0;font-size:20px;font-weight:700;line-height:1.3}.mt-stage-value span{color:var(--color-text-muted);font-size:12px;font-weight:600}.mt-stage-meter{background:var(--color-background);border-radius:4px;width:100%;height:4px;margin:8px 0 4px;overflow:hidden}.mt-stage-meter span{background:var(--stage-color);border-radius:4px;height:100%;display:block}.mt-stage-meta{color:var(--color-text-muted);margin:0;font-size:12px}.mt-stage-arrow{color:var(--color-border-strong);flex-shrink:0;align-items:center;display:flex}.mt-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.mt-legend{flex-wrap:wrap;gap:6px 14px;display:flex}.mt-legend-item,.mt-flow-label{color:var(--color-text-secondary);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:inline-flex}.mt-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.mt-flow{flex-direction:column;gap:8px;width:100%;min-width:220px;display:flex}.mt-bar{gap:2px;width:100%;height:10px;display:flex}.mt-bar-seg{cursor:default;flex-basis:0;min-width:6px;position:relative}.mt-bar-seg:first-child{border-radius:4px 0 0 4px}.mt-bar-seg:last-child{border-radius:0 4px 4px 0}.mt-bar-seg:only-child{border-radius:4px}.mt-bar-seg:hover{filter:brightness(.92)}.mt-bar-seg:after{content:attr(data-tip);background:var(--color-text);color:#fff;white-space:nowrap;pointer-events:none;opacity:0;z-index:5;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:500;transition:opacity .1s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.mt-bar-seg:hover:after{opacity:1}.mt-bar-empty{background:var(--color-background);border:1px dashed var(--color-border);border-radius:4px;flex:1}.mt-flow-labels{flex-wrap:wrap;gap:4px 14px;display:flex}.mt-flow-label strong{color:var(--color-text);font-weight:600}@media (width<=1200px){.mt-pipeline{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.mt-stage-arrow{display:none}}@media (width<=640px){.mt-pipeline-head{flex-direction:column}.mt-pipeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mt-stage{padding:12px}.mt-stage-value{font-size:18px}.mt-legend{display:none}}.mt-machines{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:10px;display:grid}.mt-machine{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:10px 12px}.mt-machine-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.mt-machine-roll{margin:6px 0 2px;font-size:18px;font-weight:700}.mt-alert{background:var(--color-danger-bg);color:var(--color-danger-text);align-items:center;gap:10px;margin-bottom:16px;display:flex}.mt-rolls{flex-wrap:wrap;align-items:center;gap:3px;display:inline-flex}.mt-roll{border:1px solid var(--color-border);min-width:20px;height:20px;color:var(--color-text-secondary,#64748b);border-radius:4px;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:inline-flex}.mt-roll.running{background:var(--color-warning-bg);color:var(--color-warning-text);border-color:#0000}.mt-roll.finished{background:var(--color-success-bg);color:var(--color-success-text);border-color:#0000;text-decoration:line-through}.mt-timeline{border-left:2px solid var(--color-border);margin:0;padding:0 0 0 14px;list-style:none}.mt-timeline-item{padding:0 0 14px 12px;position:relative}.mt-timeline-item:before{content:"";background:var(--color-primary);border-radius:50%;width:10px;height:10px;position:absolute;top:4px;left:-20px}.mt-timeline-head{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.mt-timeline-item .cell-sub{margin-top:2px;display:block}.pagination-container{justify-content:center;align-items:center;gap:8px;margin-top:16px;padding:16px 0;display:flex}.pagination-numbers{align-items:center;gap:4px;display:flex}.pagination-nav-btn{border:1px solid var(--color-border);background-color:var(--color-surface);width:32px;height:32px;color:var(--color-text);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;transition:all .2s;display:flex}.pagination-nav-btn:hover:not(:disabled){background-color:var(--color-background);border-color:var(--color-primary);color:var(--color-primary)}.pagination-nav-btn:disabled{opacity:.5;cursor:not-allowed;background-color:var(--color-background)}.pagination-btn{min-width:32px;height:32px;color:var(--color-text);cursor:pointer;background-color:#0000;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;padding:0 8px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.pagination-btn:hover:not(.active){background-color:var(--color-surface);border-color:var(--color-border)}.pagination-btn.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.ls-box{border:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:10px;margin-top:14px;padding:14px}.ls-box.ls-ok{color:var(--color-success-text);background:var(--color-success-bg);border-color:#a7f3d0;align-items:center;gap:8px;font-size:13px;font-weight:500;display:flex}.ls-head{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.ls-title{color:var(--color-text);margin:0;font-size:14px;font-weight:600}.ls-sub{color:var(--color-text-secondary);margin:2px 0 0;font-size:12px}.ls-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=640px){.ls-grid{grid-template-columns:1fr}}.ls-part{background:var(--color-surface);border:1px solid var(--color-border);border-top-width:3px;border-radius:8px;min-width:0;padding:10px 12px}.ls-part.wastage{border-top-color:var(--color-danger)}.ls-part.difference{border-top-color:var(--color-warning)}.ls-part-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.ls-part-name{align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.ls-part.wastage .ls-part-name{color:var(--color-danger-text)}.ls-part.difference .ls-part-name{color:var(--color-warning-text)}.ls-hint{color:var(--color-text-muted);margin:2px 0 8px;font-size:11.5px}.ls-pct{color:var(--color-success-text);background:var(--color-success-bg);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11.5px;font-weight:600}.ls-pct.over{color:var(--color-danger-text);background:var(--color-danger-bg)}.ls-auto{color:var(--color-text);margin:0;font-size:22px;font-weight:700;line-height:40px}.ls-auto span{color:var(--color-text-secondary);font-size:12px;font-weight:500}.ls-chips{flex-wrap:wrap;gap:6px;margin:10px 0 8px;display:flex}.ls-chip{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;border-radius:999px;padding:4px 10px;font-family:inherit;font-size:12px;font-weight:500}.ls-chip.wastage:hover{border-color:var(--color-danger)}.ls-chip.difference:hover{border-color:var(--color-warning)}.ls-chip.wastage.on{background:var(--color-danger);border-color:var(--color-danger);color:#fff}.ls-chip.difference.on{background:var(--color-warning);border-color:var(--color-warning);color:#fff}.ls-note{height:36px;font-size:13px}.ls-approval{align-items:center;gap:8px;margin:12px 0 0;font-size:13px;display:flex}.ls-summary{margin-top:10px}.ls-summary-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;display:grid}.ls-summary-item{border-left:3px solid;border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.ls-summary-item.wastage{background:var(--color-danger-bg);border-left-color:var(--color-danger)}.ls-summary-item.wastage .ls-part-name{color:var(--color-danger-text)}.ls-summary-item.difference{background:var(--color-warning-bg);border-left-color:var(--color-warning)}.ls-summary-item.difference .ls-part-name{color:var(--color-warning-text)}.ls-need{color:var(--color-danger-text);margin:8px 0 -4px;font-size:12px;font-weight:600}.ob-list{border:1px solid var(--color-border);border-radius:12px;margin-bottom:12px;overflow:hidden}.ob-row{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;padding:12px 14px;display:flex}.ob-row:last-child{border-bottom:0}.ob-icon{background:var(--color-primary-lighter);width:32px;height:32px;color:var(--color-primary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ob-name{flex-direction:column;flex:1;min-width:0;display:flex}.ob-input{flex-shrink:0;width:180px}.ob-total{background:var(--color-surface-muted);justify-content:space-between}.ob-total strong{color:var(--color-text);font-size:16px}.ob-banner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.ob-banner p{margin:0}@media (width<=640px){.ob-row{flex-wrap:wrap}.ob-input{width:100%}}.fin-account-click{cursor:pointer;transition:border-color .15s}.fin-account-click:hover{border-color:var(--color-primary)}.fin-account-why{color:var(--color-primary);margin-top:2px;font-size:12px;font-weight:600}.fin-account-why.text-danger{color:var(--color-danger-text)}.lg-head{gap:32px;margin-bottom:14px;display:flex}.lg-head>div{flex-direction:column;display:flex}.lg-head strong{color:var(--color-text);font-size:20px}.lg-head strong.text-danger{color:var(--color-danger-text)}.lg-why{margin-bottom:14px;line-height:1.5}.lg-list{border:1px solid var(--color-border);border-radius:10px;margin:0;padding:0;list-style:none}.lg-row{border-top:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) 110px 110px;align-items:center;gap:12px;padding:10px 14px;font-size:14px;display:grid}.lg-row:first-child{border-top:none}.lg-main{flex-direction:column;min-width:0;display:flex}.lg-amt{text-align:right;font-weight:600}.lg-amt.in{color:var(--color-success-text)}.lg-amt.out{color:var(--color-danger-text)}.lg-bal{text-align:right;color:var(--color-text);font-weight:600}.lg-bal.text-danger{color:var(--color-danger-text)}.lg-cause{background:var(--color-danger-bg)}.lg-opening{background:var(--color-surface-muted)}.pp-box{border:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:12px;margin-top:16px;padding:14px 16px}.pp-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.pp-title{color:var(--color-text);margin:0;font-size:14px;font-weight:700}.pp-nums{color:var(--color-text-secondary);gap:16px;font-size:12px;display:flex}.pp-nums strong{color:var(--color-text);margin-left:4px;font-size:14px}.pp-nums strong.text-success{color:var(--color-success-text)}.pp-nums strong.text-danger{color:var(--color-danger-text)}.pp-quick{gap:14px;margin-top:6px;display:flex}.pp-link{color:var(--color-primary);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:600}.pp-link:disabled{color:var(--color-text-muted);cursor:default}.pp-warn{align-items:center;gap:5px;margin-top:6px;display:flex}.pp-cell{min-width:110px;max-width:140px}.pp-cell .badge{margin-bottom:2px}.pp-cell .cell-sub{white-space:normal}.pp-pay{white-space:nowrap;align-items:center;gap:4px;margin-top:4px;display:flex}.pp-compact .form-grid{grid-template-columns:minmax(0,1fr);gap:0}.pp-compact .pp-head{flex-direction:column;align-items:flex-start;gap:6px}.pp-choice{gap:6px;display:flex}.pp-choice-btn{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;border-radius:8px;flex:1;padding:9px 8px;font-family:inherit;font-size:13px;font-weight:600}.pp-choice-btn.on{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}.pp-choice-btn:disabled{opacity:.5;cursor:default}.pp-field{margin-top:12px;margin-bottom:0}.pp-label-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.pp-balances{color:var(--color-text-secondary);flex-wrap:wrap;gap:6px 14px;margin-top:6px;font-size:12px;display:flex}.pp-balances strong{color:var(--color-text)}.pp-balances .on strong{color:var(--color-primary)}.pp-more{margin-top:10px;display:block}.pp-row-links{gap:12px;display:flex}.pp-muted{color:var(--color-text-muted);font-weight:500}.filter-bar>.filter-item.purchase-filter-sm{width:150px}.completed-badge{cursor:pointer;-webkit-user-select:none;user-select:none;border:none;font-family:inherit;transition:background-color .15s,color .15s}.completed-badge .badge-text-hover{display:none}.completed-badge:hover{background-color:#d1fae5}.completed-badge:hover .badge-text-normal{display:none}.completed-badge:hover .badge-text-hover{display:inline}.purchase-detail-row{margin-top:14px}.purchase-received-box{background-color:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);margin:16px 0 20px;padding:14px 16px}.purchase-form-section+.purchase-form-section{margin-top:20px}.purchase-form-section .form-group{margin-bottom:0}.purchase-total-input.form-control[readonly]{color:var(--color-success-text);text-align:right;font-weight:700}@media (width<=640px){.filter-bar>.filter-item.purchase-filter-sm{width:100%}}.purchase-success{text-align:center;padding:8px 0}.purchase-success-icon{background-color:var(--color-success-bg);width:56px;height:56px;color:var(--color-success-text);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 14px;display:flex}.purchase-success-text{color:var(--color-text-secondary);margin:0}.pl-party{align-items:center;gap:10px;display:flex}.pl-avatar{width:32px;height:32px;color:var(--color-primary);background:var(--color-primary-light);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.pl-qty{flex-direction:column;gap:4px;min-width:130px;display:flex}.pl-meter{background:var(--color-background);border-radius:4px;width:100%;max-width:150px;height:6px;overflow:hidden}.pl-meter span{border-radius:4px;height:100%;display:block}.pl-meter span.full{background:var(--color-success)}.pl-meter span.short{background:var(--color-danger)}.pl-meter span.pending{background:repeating-linear-gradient(135deg,#fde68a 0 6px,#fef3c7 6px 12px)}@media (width<=1024px){.pl-qty{width:100%;min-width:0}.pl-meter{max-width:none}}@media (width>=641px) and (width<=1024px){.pl-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}.pl-kpis>.kpi-card{grid-column:span 2}.pl-kpis>.kpi-card:nth-child(n+4){grid-column:span 3}.pl-filter>.filter-grow{flex:100%}.pl-filter>.filter-item{flex:180px;width:auto}}@media (width<=1024px){.purchase-page .data-table td.col-merged[data-label="Received (KG)"]{display:none}}@media (width<=640px){.purchase-page .page-header .page-actions{width:100%}.purchase-page .page-header .btn-primary{justify-content:center;width:100%}.pl-kpis>.kpi-card:last-child:nth-child(odd){grid-column:1/-1}.pl-filter>button{justify-content:center;width:100%}.pl-filter>.filter-item{width:100%}.pl-tabs .tab{text-align:center;flex:1;padding:10px 6px}}.ap-more{color:var(--color-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin:4px 0 16px;padding:0;font-family:inherit;font-size:14px;font-weight:500;display:inline-flex}.ap-more-filled{color:var(--color-text-muted);font-size:12px;font-weight:400}.pl-status-btn{cursor:pointer;border:none;font-family:inherit}.pl-status-btn:hover{filter:brightness(.95);text-decoration:underline}.pl-st-badge{margin-bottom:4px}.pl-st-rows{flex-direction:column;gap:8px;display:flex}.pl-st-rows>div{color:var(--color-text-secondary);justify-content:space-between;font-size:14px;display:flex}.pl-st-rows strong{color:var(--color-text)}.pl-st-rows strong.text-danger{color:var(--color-danger-text)}.pl-st-rows strong.text-success{color:var(--color-success-text)}.pl-st-pays{background:var(--color-surface-muted);border-radius:8px;flex-direction:column;gap:6px;margin:12px 0 0;padding:10px 12px;font-size:13px;list-style:none;display:flex}.pl-st-pays li{color:var(--color-text-secondary);justify-content:space-between;gap:12px;display:flex}.stock-product-group{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:14px;overflow:hidden}.stock-product-group.open{border-color:var(--color-primary-ring)}.stock-product-header{cursor:pointer;text-align:left;width:100%;color:var(--color-text);background:0 0;border:none;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;font-family:inherit;transition:background-color .15s;display:flex}.stock-product-header:hover,.stock-product-group.open .stock-product-header{background-color:var(--color-primary-lighter)}.stock-product-name{align-items:center;gap:12px;min-width:0;display:flex}.stock-product-title{font-size:15px;font-weight:700;display:block}.stock-product-icon{background:var(--color-primary-light);width:38px;height:38px;color:var(--color-primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.stock-product-stats{align-items:center;gap:28px;display:flex}.stock-product-stat{flex-direction:column;gap:2px;min-width:120px;display:flex}.stock-stat-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.stock-stat-value{color:var(--color-text);font-size:15px;font-weight:700}.stock-stat-value small{color:var(--color-text-muted);font-size:12px;font-weight:500}.stock-chevron{color:var(--color-text-muted);display:inline-flex}.stock-meter{background:var(--color-background);border-radius:4px;width:100%;max-width:140px;height:5px;margin-top:4px;display:block;overflow:hidden}.stock-meter.wide{max-width:220px;height:6px}.stock-meter span{border-radius:4px;height:100%;display:block}.stock-meter span.ok{background:var(--color-success)}.stock-meter span.low{background:var(--color-warning)}.stock-meter span.empty{background:0 0}.stock-batch-meter{flex-direction:column;gap:2px;width:100%;min-width:200px;display:flex}.stock-batch-meter-top{justify-content:space-between;gap:8px;max-width:220px;font-size:13px;display:flex}.stock-product-body{background-color:var(--color-surface-muted);border-top:1px solid var(--color-border);padding:16px 18px 18px}.stock-rate-group+.stock-rate-group{margin-top:18px}.stock-rate-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;font-size:13px;display:flex}.stock-batch-banner{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);align-items:center;gap:12px;margin-bottom:18px;padding:12px 14px;display:flex}.stock-batch-banner-info{flex-direction:column;display:flex}.stock-quick{gap:6px;margin-top:8px;display:flex}.stock-quick-btn{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);height:28px;color:var(--color-text-secondary);cursor:pointer;flex:1;font-family:inherit;font-size:12px;font-weight:600;transition:all .15s}.stock-quick-btn:hover{border-color:var(--color-primary-ring);color:var(--color-primary)}.stock-quick-btn.active{background:var(--color-primary-light);border-color:var(--color-primary-ring);color:var(--color-primary)}.stock-split{margin-top:18px}.stock-split-bar{background:var(--color-background);border-radius:4px;gap:2px;height:10px;display:flex;overflow:hidden}.stock-split-bar span{flex-basis:0;min-width:4px}.stock-split-bar .left{background:var(--color-success)}.stock-split-bar .used{background:var(--color-border-strong)}.stock-split-bar .send{background:#eb6834}.stock-split-bar .over{background:var(--color-danger)}.stock-split-legend{color:var(--color-text-secondary);flex-wrap:wrap;justify-content:space-between;gap:6px 14px;margin-top:8px;font-size:12px;display:flex}.stock-split-legend>span{align-items:center;gap:6px;display:inline-flex}.stock-split-legend strong{color:var(--color-text)}.stock-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}@media (width<=1024px){.stock-meter.wide,.stock-batch-meter-top{max-width:none}.stock-batch-meter{min-width:0}}@media (width<=640px){.stock-product-header{gap:10px;padding:12px 14px}.stock-product-stats{gap:10px}.stock-product-stat{text-align:right;align-items:flex-end;min-width:0}.stock-product-stat .stock-meter,.stock-product-stat.hide-sm{display:none}.stock-product-body{padding:12px 10px}}.am-identity{align-items:center;gap:12px;display:flex}.am-avatar{width:38px;height:38px;color:var(--color-primary);background:var(--color-primary-light);border:1px solid #f9d0d5;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex}.am-avatar.off{color:var(--color-text-muted);background:var(--color-background);border-color:var(--color-border)}.am-avatar.lg{width:48px;height:48px;font-size:16px}.am-name{color:var(--color-text);font-size:15px;font-weight:700;display:block}.data-table td.am-name-cell .am-name{color:var(--color-text)}.am-contact{color:var(--color-text);align-items:center;gap:6px;font-size:13px;display:flex}.am-contact svg{color:var(--color-text-muted);flex-shrink:0}.am-contact.muted{color:var(--color-text-secondary);margin-top:4px}.am-access{align-items:center;gap:10px;display:flex}.icon-btn.am-key{color:#b45309}.icon-btn.am-key:hover:not(:disabled){background-color:var(--color-warning-bg);color:#92400e}.am-preview{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);align-items:center;gap:12px;margin-bottom:20px;padding:14px;display:flex}.am-preview-info{flex:1;min-width:0}.am-preview-info .am-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.am-toggle-row{border:1px solid var(--color-border);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.am-eye{cursor:pointer;color:var(--color-text-muted);border:none}.am-eye:hover{color:var(--color-primary)}.am-strength{align-items:center;gap:8px;margin-top:6px;font-size:12px;font-weight:600;display:flex}.am-strength-bars{gap:4px;display:flex}.am-strength-bars span{background:var(--color-border);border-radius:4px;width:28px;height:4px}.am-strength.weak{color:var(--color-danger-text)}.am-strength.weak .on{background:var(--color-danger)}.am-strength.fair{color:var(--color-warning-text)}.am-strength.fair .on{background:var(--color-warning)}.am-strength.strong{color:var(--color-success-text)}.am-strength.strong .on{background:var(--color-success)}.am-identity .cell-sub{font-weight:400}@media (width<=1024px){.data-table tbody tr td.am-name-cell{grid-area:auto/1/auto/-1}.data-table tbody tr td.am-name-cell+td+td.cell-status{grid-area:auto/1/auto/-1;align-items:flex-start;padding-bottom:0!important}.data-table tbody tr:has(td.am-name-cell) td.cell-status{grid-area:auto/1/auto/-1;align-items:flex-start;padding-bottom:0!important}.data-table tbody tr:has(td.am-name-cell) td.cell-status:before{display:block}}.am-identity{width:100%}.am-identity>div{flex:1;min-width:0}.am-identity .cell-sub{white-space:nowrap}.data-table tbody tr.pr-row-pending td:first-child{box-shadow:inset 3px 0 0 var(--color-warning)}.pr-qty{flex-direction:column;gap:4px;min-width:140px;display:flex}.pr-meter{background:var(--color-background);border-radius:4px;width:100%;max-width:160px;height:6px;display:block;overflow:hidden}.pr-meter span{background:var(--color-success);border-radius:4px;height:100%;display:block}.pr-meter span.short{background:var(--color-danger)}.pr-meter span.pending{background:repeating-linear-gradient(135deg,#fde68a 0 6px,#fef3c7 6px 12px)}.pr-banner{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);align-items:center;gap:12px;margin-bottom:16px;padding:12px 14px;display:flex}.pr-banner-icon{background:var(--color-warning-bg);width:40px;height:40px;color:var(--color-warning-text);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.pr-banner-info{flex-direction:column;flex:1;min-width:0;display:flex}.pr-banner-driver{text-align:right;flex-direction:column;align-items:flex-end;display:flex}.pr-compare{border:1px solid var(--color-border);border-left:3px solid var(--color-success);border-radius:var(--radius-md);background:var(--color-surface);margin-bottom:12px;padding:14px 16px;transition:border-color .15s}.pr-compare.short{border-left-color:var(--color-danger);background:snow}.pr-compare-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.pr-compare-grid{grid-template-columns:auto auto minmax(0,1fr) auto;align-items:end;gap:14px;display:grid}.pr-compare-sent{height:var(--control-height);color:var(--color-text);white-space:nowrap;align-items:center;margin:0;font-size:20px;font-weight:700;display:flex}.pr-compare-sent span{color:var(--color-text-muted);margin-left:4px;font-size:13px;font-weight:600}.pr-compare-arrow{color:var(--color-border-strong);flex-shrink:0;margin-bottom:11px}.pr-all-btn{height:var(--control-height)}.pr-compare .pr-meter{max-width:none;margin-top:12px}.pr-compare.short .pr-meter span{background:var(--color-danger)}.pr-shortage{border-radius:var(--radius-md);background:var(--color-danger-bg);border:1px solid #fecaca;margin-top:4px;padding:14px 16px}.pr-chips{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.pr-chip{background:var(--color-surface);color:var(--color-danger-text);cursor:pointer;border:1px solid #fecaca;border-radius:999px;padding:5px 10px;font-family:inherit;font-size:12px;font-weight:500;transition:all .15s}.pr-chip:hover{border-color:var(--color-danger)}.pr-chip.on{background:var(--color-danger);border-color:var(--color-danger);color:#fff}.pr-timeline{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);align-items:center;gap:8px;margin-bottom:20px;padding:14px 16px;display:flex}.pr-tl-step{align-items:center;gap:10px;min-width:0;display:flex}.pr-tl-dot{border:2px solid var(--color-border-strong);background:var(--color-surface);width:30px;height:30px;color:var(--color-text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.pr-tl-step.done .pr-tl-dot{border-color:var(--color-success);background:var(--color-success);color:#fff}.pr-tl-step.current .pr-tl-dot{border-color:var(--color-warning);background:var(--color-warning-bg);color:var(--color-warning-text)}.pr-tl-step.warn .pr-tl-dot{border-color:var(--color-danger);background:var(--color-danger);color:#fff}.pr-tl-title{color:var(--color-text);margin:0;font-size:13px;font-weight:700}.pr-tl-meta{color:var(--color-text-muted);white-space:nowrap;margin:0;font-size:12px}.pr-tl-line{background:var(--color-border);border-radius:2px;flex:1;min-width:20px;height:2px}.pr-tl-line.done{background:var(--color-success)}.pr-qty-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.pr-qty-card{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 14px}.pr-qty-big{color:var(--color-text);margin:2px 0;font-size:20px;font-weight:700}.pr-qty-big span{color:var(--color-text-muted);font-size:13px;font-weight:500}.pr-route{border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:14px;margin-top:14px;padding:12px 14px;display:grid}.pr-route .pr-compare-arrow{margin:20px 0 0}.pr-inline{align-items:center;gap:5px;display:inline-flex}@media (width<=1024px){.data-table tbody tr.pr-row-pending{border-left:3px solid var(--color-warning)}.data-table tbody tr.pr-row-pending td:first-child{box-shadow:none}.pr-qty{width:100%;min-width:0}.pr-meter{max-width:none}}@media (width<=640px){.pr-banner-driver{display:none}.pr-compare-grid{grid-template-columns:auto auto minmax(0,1fr)}.pr-all-btn{grid-column:1/-1;height:32px}.pr-timeline{flex-direction:column;align-items:flex-start}.pr-tl-line{flex:none;width:2px;min-width:0;height:14px;margin-left:14px}.pr-qty-cards,.pr-route{grid-template-columns:1fr}.pr-route .pr-compare-arrow{display:none}}.gd-toolbar{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.gd-legend{color:var(--color-text-secondary);flex-wrap:wrap;gap:6px 14px;font-size:12px;display:flex}.gd-legend>span{align-items:center;gap:6px;display:inline-flex}.gd-legend strong{color:var(--color-text)}.gd-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.gd-dot.free,.gd-seg.free,.gd-seg.rolls{background:var(--color-success)}.gd-dot.reserved,.gd-seg.reserved{background:#eda100}.gd-dot.used,.gd-seg.used{background:var(--color-border-strong)}.gd-batch{align-items:center;gap:10px;display:flex}.gd-batch-icon{background:var(--color-primary-light);width:34px;height:34px;color:var(--color-primary);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.gd-batch-name{font-weight:700;display:block}.gd-cell{flex-direction:column;gap:4px;width:100%;min-width:160px;max-width:220px;display:flex}.gd-cell-top{justify-content:space-between;gap:8px;font-size:13px;display:flex}.gd-bar{gap:2px;width:100%;height:6px;display:flex}.gd-seg{flex-basis:0;min-width:4px;position:relative}.gd-seg:first-child{border-radius:4px 0 0 4px}.gd-seg:last-child{border-radius:0 4px 4px 0}.gd-seg:only-child{border-radius:4px}.gd-seg:hover{filter:brightness(.92)}.gd-seg:after{content:attr(data-tip);background:var(--color-text);color:#fff;white-space:nowrap;pointer-events:none;opacity:0;z-index:5;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:500;transition:opacity .1s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.gd-seg:hover:after{opacity:1}.gd-bar-empty{background:var(--color-background);border:1px dashed var(--color-border);border-radius:4px;flex:1}.gd-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.gd-summary-item{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 14px}.gd-summary-value{color:var(--color-text);margin:2px 0;font-size:20px;font-weight:700}.gd-summary-value span{color:var(--color-text-muted);font-size:12px;font-weight:600}.gd-history-total{border-radius:var(--radius-md);background:var(--color-surface-muted);color:var(--color-text-secondary);flex-wrap:wrap;justify-content:flex-end;gap:6px 20px;margin-top:10px;padding:10px 14px;font-size:13px;display:flex}.gd-history-total strong{color:var(--color-text)}.gd-edit-preview{margin-top:18px}@media (width<=1024px){.gd-cell{min-width:0}.gd-toolbar{border-bottom:none}.gd-toolbar .tabs{width:100%;border-bottom:1px solid var(--color-border)!important}}@media (width<=640px){.gd-summary{grid-template-columns:1fr 1fr 1fr;gap:8px}.gd-summary-item{padding:10px}.gd-summary-value{font-size:16px}}@media (width<=1024px){.data-table tbody tr:has(td.cell-status) td.cell-primary.gd-batch-cell{grid-area:auto/1/auto/-1}.data-table tbody tr:has(td.gd-batch-cell) td.cell-status{grid-area:auto/1/auto/-1;align-items:flex-start;padding-bottom:0!important}.data-table tbody tr:has(td.gd-batch-cell) td.cell-status:before{display:block}}.gd-batch{width:100%}.gd-batch>div{flex:1;min-width:0}.gd-explain{border-radius:var(--radius-md);background:var(--color-info-bg);color:var(--color-info-text);border:1px solid #bfdbfe;align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 14px;font-size:13px;line-height:1.5;display:flex}.gd-explain svg{flex-shrink:0;margin-top:2px}.gd-done{align-items:center;gap:10px;display:flex}.gd-done svg{color:var(--color-text-muted);flex-shrink:0}.gd-rolls{color:var(--color-text);align-items:center;gap:6px;font-size:14px;display:inline-flex}.gd-rolls svg{color:#2a78d6}.gd-rolls.none,.gd-rolls.none svg{color:var(--color-text-muted)}.mc-board{grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:16px;margin-bottom:28px;display:grid}.mc-card{background:var(--color-surface);border:1px solid var(--color-border);border-top:3px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.mc-card.running{border-top-color:#eda100}.mc-card-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.mc-title{align-items:center;gap:10px;display:flex}.mc-icon{background:var(--color-background);width:38px;height:38px;color:var(--color-text-muted);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.mc-card.running .mc-icon{color:#b07800;background:#fff7e0}.mc-name{color:var(--color-text);font-size:15px;font-weight:700;display:block}.mc-spin{animation:3s linear infinite mc-spin}@keyframes mc-spin{to{transform:rotate(360deg)}}.mc-pulse{background:currentColor;border-radius:50%;width:7px;height:7px;animation:1.4s ease-in-out infinite mc-pulse;display:inline-block}@keyframes mc-pulse{0%,to{opacity:1}50%{opacity:.3}}.mc-idle-body{flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:12px;padding:18px 16px;display:flex}.mc-idle-body p{margin:0;font-size:13px}.mc-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px 16px 0;display:grid}.mc-roll-box{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);margin:14px 16px 0;padding:12px}.mc-roll-now{align-items:center;gap:10px;display:flex}.mc-roll-badge{color:#2a78d6;background:#e8f1fc;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.mc-roll-badge.paused{background:var(--color-info-bg);color:var(--color-info-text)}.mc-roll-now-text{flex:1;min-width:0}.mc-roll-now-title{color:var(--color-text);font-size:14px;font-weight:700;display:block}.mc-roll-count{text-align:right;flex-shrink:0}.mc-roll-count-num{color:var(--color-text);font-size:18px;font-weight:700;line-height:1.1;display:block}.mc-roll-count-num small{color:var(--color-text-muted);font-size:13px;font-weight:500}.mc-roll-meter{background:var(--color-border);border-radius:999px;height:6px;margin-top:10px;display:block;overflow:hidden}.mc-roll-meter span{background:#2a78d6;border-radius:999px;height:100%;transition:width .3s;display:block}.mc-roll-meter span.empty{background:var(--color-danger)}.mc-roll-sub{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin:12px 0 6px;font-size:11px;font-weight:600}.mc-rolls{flex-wrap:wrap;gap:6px;display:flex}.mc-roll{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.mc-roll small{color:var(--color-text-muted);font-size:11px;font-weight:500}.mc-roll.done svg{color:var(--color-success)}.mc-roll.current{color:#8a5a00;background:#fff7e0;border-color:#f5c451}.mc-roll.current .mc-pulse{color:#eda100}.mc-roll.more{cursor:pointer;color:#2a78d6;border-style:dashed;font-family:inherit}.mc-roll.more:hover{background:#e8f1fc}.mc-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;padding:14px 16px;display:flex}.mc-card.running .mc-actions,.mc-card.paused .mc-actions{border-top:1px solid var(--color-border);margin-top:auto}.mc-card.running .mc-roll-box,.mc-card.paused .mc-roll-box{margin-bottom:14px}.mc-actions-spacer{flex:1}.mc-history-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.mc-history-search{width:320px}.mc-yield{flex-direction:column;gap:4px;min-width:150px;display:flex}.mc-meter{background:var(--color-background);border-radius:4px;width:100%;max-width:150px;height:5px;display:block;overflow:hidden}.mc-meter span{border-radius:4px;height:100%;display:block}.mc-meter span.good{background:var(--color-success)}.mc-meter span.ok{background:var(--color-warning)}.mc-meter span.low{background:var(--color-danger)}.mc-detail-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px;display:grid}.mc-detail-stats>div{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 14px}.mc-big{color:var(--color-text);margin:2px 0;font-size:20px;font-weight:700}.mc-big span{color:var(--color-text-muted);font-size:12px;font-weight:600}.mc-start-note{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.mc-start-note>svg{color:#2a78d6;flex-shrink:0;margin-top:2px}.mc-start-note>div{flex-direction:column;gap:2px;font-size:13px;display:flex}.mc-waste{border-radius:var(--radius-md);background:var(--color-danger-bg);border:1px solid #fecaca;margin-top:16px;padding:12px 14px}.mc-chips{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.mc-chip{background:var(--color-surface);color:var(--color-danger-text);cursor:pointer;border:1px solid #fecaca;border-radius:999px;padding:5px 10px;font-family:inherit;font-size:12px;font-weight:500}.mc-chip.on{background:var(--color-danger);border-color:var(--color-danger);color:#fff}.fm-packing{border-radius:var(--radius-md);background:var(--color-surface-muted);color:var(--color-text-secondary);margin:0 0 16px;padding:10px 14px;font-size:14px}.fm-packing strong{color:var(--color-text)}.fm-big input{padding-top:10px;padding-bottom:10px;font-size:22px;font-weight:600}.fm-stepper{border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:stretch;display:inline-flex;overflow:hidden}.fm-stepper button{background:var(--color-surface-muted);width:48px;color:var(--color-text);cursor:pointer;border:none;font-size:22px;font-weight:600}.fm-stepper button:disabled{color:var(--color-text-muted);cursor:not-allowed}.fm-stepper input{border:none;border-left:1px solid var(--color-border);border-right:1px solid var(--color-border);text-align:center;width:72px;padding:8px 0;font-family:inherit;font-size:18px;font-weight:600}.fm-result{border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:center;gap:32px;padding:12px 14px;display:flex}.fm-result .detail-label{margin:0}.fm-result-num{color:var(--color-text);margin:2px 0 0;font-size:22px;font-weight:700}.fm-ok{color:var(--color-success);align-items:center;gap:4px;margin-left:auto;font-size:13px;font-weight:600;display:inline-flex}.fm-waste-title{color:var(--color-danger-text);margin:0 0 10px;font-size:14px}.fm-more{color:var(--color-primary);cursor:pointer;background:0 0;border:none;margin-top:16px;padding:0;font-family:inherit;font-size:13px;font-weight:500}.fm-more-body{margin-top:12px}@media (width<=1024px){.mc-yield{width:100%;min-width:0}.mc-meter{max-width:none}}@media (width<=640px){.mc-board{grid-template-columns:1fr}.mc-facts{grid-template-columns:1fr 1fr}.mc-history-search{width:100%}.mc-detail-stats{grid-template-columns:1fr 1fr 1fr;gap:8px}.mc-detail-stats>div{padding:10px}.mc-big{font-size:16px}}.mc-board-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.mc-settings-link{color:var(--color-text-secondary);align-items:center;gap:6px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.mc-settings-link:hover{color:var(--color-primary)}.mc-card.paused{border-top-color:var(--color-info)}.mc-card.paused .mc-icon{background:var(--color-info-bg);color:var(--color-info-text)}.mc-paused-bar{border-radius:var(--radius-md);background:var(--color-info-bg);color:var(--color-info-text);align-items:flex-start;gap:8px;margin:14px 16px 0;padding:10px 12px;font-size:13px;line-height:1.45;display:flex}.mc-paused-bar svg{flex-shrink:0;margin-top:2px}.mc-chips-neutral .mc-chip{border-color:var(--color-border);color:var(--color-text-secondary)}.mc-chips-neutral .mc-chip.on{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.mc-pause-list{flex-direction:column;gap:6px;display:flex}.mc-pause-item{border:1px solid var(--color-border);border-radius:var(--radius-sm);grid-template-columns:auto auto auto 1fr;align-items:center;gap:10px;padding:8px 12px;font-size:13px;display:grid}.mc-pause-item svg{color:var(--color-info)}.mc-pause-reason{text-align:right;color:var(--color-text-secondary)}.mc-cancel{color:var(--color-danger-text)}.mc-cancel:hover{border-color:var(--color-danger)}.rs-product{align-items:center;gap:10px;width:100%;display:flex}.rs-product>div{flex:1;min-width:0}.rs-product-icon{background:var(--color-success-bg);width:34px;height:34px;color:var(--color-success-text);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.rs-product-name{font-weight:700;display:block}.rs-size{color:var(--color-text-secondary);background:var(--color-background);vertical-align:middle;border-radius:4px;margin-left:4px;padding:1px 6px;font-size:11px;font-weight:600}.rs-stock{flex-direction:column;gap:4px;width:100%;min-width:150px;max-width:200px;display:flex}.rs-stock-top{justify-content:space-between;gap:8px;font-size:13px;display:flex}.rs-meter{background:var(--color-background);border-radius:4px;width:100%;height:6px;display:block;overflow:hidden}.rs-meter span{border-radius:4px;height:100%;display:block}.rs-meter span.in{background:var(--color-success)}.rs-meter span.low{background:var(--color-warning)}.rs-meter span.out{background:0 0}.rs-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.rs-stats>div{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 14px}.rs-big{color:var(--color-text);margin:2px 0;font-size:20px;font-weight:700}.rs-big span{color:var(--color-text-muted);font-size:12px;font-weight:600}.rs-split{background:var(--color-background);border-radius:4px;gap:2px;height:8px;display:flex;overflow:hidden}.rs-split span{flex-basis:0;min-width:4px}.rs-split .sent,.rs-dot.sent{background:#2a78d6}.rs-split .left,.rs-dot.left{background:var(--color-success)}.rs-legend{color:var(--color-text-secondary);justify-content:space-between;gap:12px;margin-top:8px;font-size:12px;display:flex}.rs-legend>span{align-items:center;gap:6px;display:inline-flex}.rs-legend strong{color:var(--color-text)}.rs-dot{border-radius:50%;width:8px;height:8px}.rs-total{border-radius:var(--radius-md);background:var(--color-surface-muted);color:var(--color-text-secondary);flex-wrap:wrap;justify-content:flex-end;gap:6px 20px;margin-top:10px;padding:10px 14px;font-size:13px;display:flex}.rs-total strong{color:var(--color-text)}@media (width<=1024px){.data-table tbody tr:has(td.cell-status) td.cell-primary.rs-product-cell{grid-area:auto/1/auto/-1}.data-table tbody tr:has(td.rs-product-cell) td.cell-status{grid-area:auto/1/auto/-1;align-items:flex-start;padding-bottom:0!important}.data-table tbody tr:has(td.rs-product-cell) td.cell-status:before{display:block}.rs-stock{min-width:0;max-width:none}}@media (width<=640px){.rs-stats{gap:8px}.rs-stats>div{padding:10px}.rs-big{font-size:16px}}.sale-info-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:20px;display:grid}.sale-info-box,.sale-panel{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px}.sale-panel{margin-bottom:20px}.sale-radio-group{flex-wrap:wrap;gap:20px;display:flex}.sale-radio-group label{cursor:pointer;color:var(--color-text);align-items:center;gap:6px;font-size:14px;font-weight:500;display:flex}.sale-radio-group input[type=radio]{accent-color:var(--color-primary)}.sale-form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:20px;display:grid}.sale-items-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.sale-item-card{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:12px;padding:14px}.sale-item-card-head{color:var(--color-text-secondary);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:13px;font-weight:600;display:flex}.sale-item-grid{grid-template-columns:2fr 1.2fr 1.2fr 1fr;align-items:start;gap:14px;display:grid}.sale-item-grid .form-group{margin-bottom:0}.sale-item-total{text-align:right;padding-top:22px}.sale-item-total-value{color:var(--color-text);font-size:18px;font-weight:700}.sale-notes-grid{grid-template-columns:1fr 2fr;gap:14px;margin-bottom:20px;display:grid}.sale-summary-box{background:var(--color-primary-lighter);border:1px solid var(--color-primary-light);border-radius:var(--radius-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.sale-summary-grid{text-align:center;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));justify-content:stretch;gap:12px;display:grid}.sale-summary-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.sale-summary-value{color:var(--color-text);font-size:18px;font-weight:700}.sale-summary-amount{color:var(--color-primary);font-size:22px;font-weight:800}@media (width<=768px){.sale-item-grid{grid-template-columns:1fr 1fr}.sale-item-grid>:first-child{grid-column:1/-1}.sale-item-total{padding-top:0}.sale-notes-grid{grid-template-columns:1fr}}.sl-source{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.sl-source-btn{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);text-align:left;cursor:pointer;align-items:center;gap:10px;padding:12px;font-family:inherit;transition:border-color .15s,background-color .15s;display:flex;position:relative}.sl-source-btn:hover{border-color:var(--color-border-strong)}.sl-source-btn.active{border-color:var(--color-primary-ring);background:var(--color-primary-lighter);box-shadow:0 0 0 3px var(--color-primary-lighter)}.sl-source-icon{background:var(--color-background);width:36px;height:36px;color:var(--color-text-muted);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.sl-source-btn.active .sl-source-icon{background:var(--color-primary-light);color:var(--color-primary)}.sl-source-label{color:var(--color-text);font-size:14px;font-weight:600;display:block}.sl-source-check{color:var(--color-primary);position:absolute;top:10px;right:10px}.sl-item{border:1px solid var(--color-border);border-left:3px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-surface);margin-bottom:12px;padding:14px}.sl-item.over{border-left-color:var(--color-danger)}.sl-item .form-group{margin-bottom:0}.sl-item-head{align-items:center;gap:10px;margin-bottom:12px;font-size:13px;display:flex}.sl-item-no{text-transform:uppercase;letter-spacing:.04em;background:var(--color-primary-light);color:var(--color-primary-dark);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.sl-item-amount{color:var(--color-text);margin-left:auto;font-size:15px;font-weight:700}.sl-item-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.sl-avl{float:right;color:var(--color-success-text);font-size:12px;font-weight:600}.sl-avl.over{color:var(--color-danger-text)}.sl-add{border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);width:100%;height:40px;color:var(--color-text-secondary);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;font-family:inherit;font-size:13px;font-weight:600;display:inline-flex}.sl-add:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-lighter)}.sl-profit{border-radius:var(--radius-md);justify-content:space-between;align-items:center;margin-top:12px;padding:10px 12px;font-size:13px;display:flex}.sl-profit.pos{background:var(--color-success-bg);color:var(--color-success-text)}.sl-profit.neg{background:var(--color-danger-bg);color:var(--color-danger-text)}@media (width<=640px){.sl-source{grid-template-columns:1fr}}.sl-profit.none{background:var(--color-surface-muted);color:var(--color-text-muted)}.sl-cost-line{color:var(--color-text-muted);margin:10px 0 0;font-size:13px}.sl-msg{margin:8px 0 0;padding:8px 12px;font-size:13px}.vs-stats{grid-template-columns:1.3fr 1fr 1fr;gap:12px;margin-bottom:14px;display:grid}.vs-stat{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 14px}.vs-stat.main{border-top:3px solid var(--color-primary);background:var(--color-primary-lighter)}.vs-big{color:var(--color-text);margin:2px 0 6px;font-size:22px;font-weight:800;line-height:1.2}.vs-stat.main .vs-big{color:var(--color-primary)}.vs-big span{color:var(--color-text-muted);font-size:13px;font-weight:600}.vs-info{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;display:grid}.vs-info-box{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);gap:10px;padding:12px 14px;display:flex}.vs-info-icon{background:var(--color-surface);border:1px solid var(--color-border);width:32px;height:32px;color:var(--color-text-secondary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.vs-inline{align-items:center;gap:5px;display:flex!important}.vs-totals{width:100%;max-width:300px;margin:12px 0 0 auto}.vs-total-row{color:var(--color-text-secondary);justify-content:space-between;padding:6px 0;font-size:13px;display:flex}.vs-total-row span:last-child{color:var(--color-text);font-weight:600}.vs-total-row.grand{border-top:1px solid var(--color-border);color:var(--color-text);margin-top:4px;padding-top:10px;font-size:15px;font-weight:700}.vs-total-row.grand span:last-child{color:var(--color-primary);font-size:18px}@media (width<=640px){.vs-stats{grid-template-columns:1fr 1fr}.vs-stat.main{grid-column:1/-1}.vs-info{grid-template-columns:1fr}.vs-totals{max-width:none}}.sl-paytype{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.sl-paytype-btn{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;align-items:center;gap:6px;padding:10px 16px;font-family:inherit;font-weight:600;display:inline-flex}.sl-paytype-btn.active{border-color:var(--color-primary-ring);background:var(--color-primary-lighter);color:var(--color-primary)}.sl-pending-value{color:var(--color-danger);margin:8px 0 0;font-size:20px;font-weight:700}.dp-store{align-items:center;gap:6px;font-weight:600;display:inline-flex}.dp-store svg{color:var(--color-text-muted)}.dp-quick{gap:6px;margin-top:8px;display:flex}.dp-quick-btn{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);height:28px;color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;flex:1;font-family:inherit;font-size:12px;font-weight:600}.dp-quick-btn:hover,.dp-quick-btn.active{border-color:var(--color-primary-ring);color:var(--color-primary);background:var(--color-primary-lighter)}.dp-split{margin-top:14px}.dp-split-bar{background:var(--color-background);border-radius:4px;gap:2px;height:8px;display:flex;overflow:hidden}.dp-split-bar span{flex-basis:0;min-width:4px}.dp-split-bar .send,.dp-dot.send{background:#2a78d6}.dp-split-bar .left,.dp-dot.left{background:var(--color-success)}.dp-split-bar .over,.dp-dot.over{background:var(--color-danger)}.dp-split-legend{color:var(--color-text-secondary);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;margin-top:8px;font-size:12px;display:flex}.dp-split-legend>span{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.dp-dot{flex-shrink:0}.dp-split-legend strong{color:var(--color-text)}.dp-dot{border-radius:50%;width:8px;height:8px}.dp-banner{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);align-items:center;gap:12px;margin-bottom:16px;padding:12px 14px;display:flex}.dp-banner-icon{color:#2a78d6;background:#eaf2fc;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.dp-banner-info{flex-direction:column;flex:1;min-width:0;display:flex}.dp-big input{font-size:20px;font-weight:600}.dp-link{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;font-weight:500}.dp-transport{border:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:10px;margin-top:16px;padding:12px 14px}.dp-transport-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.dp-transport-head>span{flex-direction:column;display:flex}.ps-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;padding:16px 20px 20px;display:grid}.ps-grid>.empty-state{grid-column:1/-1}.ps-machine{border:1px solid var(--color-border);border-top:3px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;gap:12px;padding:14px;display:flex}.ps-machine.off{border-top-color:var(--color-border-strong);background:var(--color-surface-muted)}.ps-machine-head{align-items:center;gap:10px;display:flex}.ps-machine-icon{background:var(--color-primary-light);width:40px;height:40px;color:var(--color-primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ps-machine.off .ps-machine-icon{background:var(--color-background);color:var(--color-text-muted)}.ps-machine-title{flex:1;min-width:0}.ps-machine-name{color:var(--color-text);font-size:15px;font-weight:700;display:block}.ps-machine-desc{color:var(--color-text-secondary);margin:0;font-size:13px}.ps-machine-stats{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ps-machine-stats>div{border-radius:var(--radius-sm);background:var(--color-surface-muted);flex-direction:column;padding:8px 10px;display:flex}.ps-machine.off .ps-machine-stats>div{background:var(--color-surface)}.ps-machine-stats strong{color:var(--color-text);font-size:15px}.ps-machine-foot{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;padding-top:10px;display:flex}.ps-switch-label{color:var(--color-text-secondary);align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.ps-toggle-row{border:1px solid var(--color-border);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.ps-toggle-row>div{flex-direction:column;display:flex}@media (width<=640px){.ps-grid{padding:12px}}.wl-header{flex-wrap:wrap}.wl-title{flex:260px;min-width:0}.wl-actions{flex-wrap:nowrap;flex-shrink:0;gap:8px;display:flex}.wl-actions>button{white-space:nowrap}@media (width<=640px){.wl-actions{width:100%}.wl-actions>button{flex:1 1 0;justify-content:center;padding-left:8px;padding-right:8px}}.rm-stage{border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:12px;padding:12px}.rm-stage-head{flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.rm-reset{margin-left:auto}.rm-kinds{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.rm-chips{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.rm-chip{background:#f1f5f9;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:12px;display:inline-flex}.rm-chip.fixed{border:1px dashed var(--color-border);color:#64748b;background:0 0}.rm-chip button{cursor:pointer;color:#64748b;background:0 0;border:0;padding:0;display:inline-flex}.rm-add{gap:6px;display:flex}.rm-add .form-control{flex:1;min-width:0}.sale-stat-unit{color:var(--color-text-muted);font-size:13px;font-weight:500}.stat-icon.stat-icon-success{background:var(--color-success-bg);color:var(--color-success-text)}.sale-filter-range{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (width<=640px){.filter-bar>.sale-filter-range{width:100%}.filter-bar>.sale-filter-range>div{flex:1;width:auto!important}}.data-table tbody tr.sb-row-pending td:first-child{box-shadow:inset 3px 0 0 var(--color-warning)}.sb-store{align-items:center;gap:6px;font-weight:600;display:inline-flex}.sb-store svg{color:var(--color-text-muted)}.sb-stock{flex-direction:column;gap:4px;width:100%;min-width:150px;max-width:200px;display:flex}.sb-stock-top{justify-content:space-between;gap:8px;font-size:13px;display:flex}.sb-meter{background:var(--color-background);border-radius:4px;width:100%;height:6px;display:block;overflow:hidden}.sb-meter span{border-radius:4px;height:100%;display:block}.sb-meter span.ok{background:var(--color-success)}.sb-meter span.low{background:var(--color-warning)}@media (width<=1024px){.data-table tbody tr.sb-row-pending{border-left:3px solid var(--color-warning)}.data-table tbody tr.sb-row-pending td:first-child{box-shadow:none}.sb-stock{min-width:0;max-width:none}}@media (width>=641px) and (width<=1024px){.sale-page .kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=1024px){.sale-page .sb-table tbody tr{grid-template-columns:minmax(0,1fr) auto}.sale-page .sb-table tbody td.cell-primary{font-size:14px}}@media (width<=640px){.sale-page .page-header .page-actions{width:100%}.sale-page .page-header .btn-primary{justify-content:center;width:100%}.sale-tabs .tab{flex:1;justify-content:center;padding:10px 6px}}.fin-period{width:170px}.fin-range{align-items:center;gap:8px;display:flex}.fin-range>div{width:150px}.fin-tabs .tab{align-items:center;gap:6px;display:inline-flex}.fin-progress{background:var(--color-border);border-radius:999px;width:80px;height:4px;margin:6px 0 0 auto;display:block;overflow:hidden}.fin-progress span{background:var(--color-success);height:100%;display:block}.fin-bill-box{border:1px solid var(--color-border);background:var(--color-surface-muted);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:12px 14px;display:flex}.fin-bill-box .detail-value{margin:2px 0}.fin-bill-nums{color:var(--color-text-secondary);flex-wrap:wrap;gap:18px;font-size:13px;display:flex}.fin-bill-nums strong{color:var(--color-text);font-size:15px;display:block}.fin-bill-nums strong.text-success{color:var(--color-success-text)}.fin-bill-nums strong.text-danger{color:var(--color-danger-text)}.fin-link{color:var(--color-primary);cursor:pointer;background:0 0;border:0;margin-top:6px;padding:0;font-size:12px;font-weight:600}.fin-accounts{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px;display:grid}.fin-account{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.fin-account-icon{background:var(--color-primary-lighter);width:32px;height:32px;color:var(--color-primary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.fin-account-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.fin-account-name{color:var(--color-text-secondary);font-size:12px;font-weight:600}.fin-account-main strong{color:var(--color-text);font-size:18px}.fin-account-main strong.text-danger{color:var(--color-danger-text)}.fin-account-total{background:var(--color-surface-muted)}.fin-warn{align-items:center;gap:5px;margin-top:6px;display:flex}.fin-head-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}@media (width<=1024px){.fin-accounts{grid-template-columns:repeat(2,minmax(0,1fr))}.fin-filter>.filter-grow{flex:100%}.fin-filter>.filter-item{flex:160px;width:auto}.fin-page .data-table .fin-progress{margin-left:0}}@media (width<=640px){.fin-page .page-header .page-actions{width:100%}.fin-head-actions{grid-template-columns:minmax(0,1fr) auto;width:100%;display:grid}.fin-period{width:auto}.fin-range{flex-wrap:nowrap;grid-area:2/1/auto/-1}.fin-range>div{flex:1;width:auto;min-width:0}.fin-tabs .tab{flex:1;justify-content:center;padding:10px 6px}.fin-accounts{grid-template-columns:minmax(0,1fr);gap:10px;margin-bottom:16px}.fin-account{padding:12px}.fin-account-main strong{font-size:17px}.fin-filter>.filter-item{flex:100%}.fin-filter>button{white-space:nowrap;flex:1 1 0;justify-content:center;min-width:0}}@media (width<=380px){.fin-opening-btn span{display:none}.fin-tabs .tab{font-size:13px;gap:4px!important}}.wd-pct{color:var(--color-success-text);background:var(--color-success-bg);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-block}.wd-pct.over{color:var(--color-danger-text);background:var(--color-danger-bg)}.wd-dot{border-radius:50%;flex:0 0 9px;width:9px;height:9px;display:inline-block}.wd-dot.wastage{background:var(--color-danger)}.wd-dot.difference{background:var(--color-warning)}.wd-row-active td{background:var(--color-primary-lighter)}.wj-pending{text-align:left;cursor:pointer;align-items:center;gap:8px;width:100%;margin-bottom:16px;font-family:inherit;font-size:13.5px;display:flex}.wj-pending-go{align-items:center;gap:4px;margin-left:auto;font-weight:600;display:inline-flex}.wj-empty{text-align:center;color:var(--color-text-secondary);flex-direction:column;align-items:center;gap:4px;padding:36px 20px;display:flex}.wj-empty p{max-width:520px;margin:0}.wj-hero{margin-bottom:16px;padding:20px 22px}.wj-hero-line{color:var(--color-text);margin:0 0 14px;font-size:18px;line-height:1.5}.wj-good{color:var(--color-success-text);font-weight:700}.wj-bad{color:var(--color-danger-text);font-weight:700}.wj-bar{background:#f1f5f9;border-radius:8px;height:34px;display:flex;overflow:hidden}.wj-bar>span{min-width:3px;height:100%;display:block}.wj-bar .wj-bar-good{background:var(--color-success);color:#fff;white-space:nowrap;flex:1;justify-content:flex-end;align-items:center;padding:0 12px;font-size:12.5px;font-weight:600;display:flex;overflow:hidden}.wj-bar-legend{color:var(--color-text-secondary);flex-wrap:wrap;gap:6px 18px;margin-top:10px;font-size:12.5px;display:flex}.wj-bar-legend>span{align-items:center;gap:6px;display:inline-flex}.wj-bar-legend>span.muted{opacity:.5}.wj-sq{border-radius:2px;width:10px;height:10px;display:inline-block}.wj-hero-tip{background:var(--color-warning-bg);color:var(--color-warning-text);border-radius:8px;align-items:center;gap:6px;margin:14px 0 0;padding:8px 12px;font-size:13px;display:flex}.wj-hero-actual{color:var(--color-text-muted);margin:10px 0 0;font-size:12px}.wj-journey{padding:18px 22px}.wj-step{gap:14px;display:flex}.wj-rail{flex:0 0 30px;justify-content:center;display:flex;position:relative}.wj-rail:after{content:"";background:var(--color-border);width:2px;position:absolute;top:32px;bottom:0}.wj-step.last .wj-rail:after{display:none}.wj-dot{z-index:1;color:#fff;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;font-weight:700;display:flex;position:relative}.wj-body{flex:1;min-width:0;padding-bottom:22px}.wj-step.last .wj-body{padding-bottom:0}.wj-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.wj-title{margin:3px 0 0;font-size:15px;font-weight:600}.wj-what{color:var(--color-text-muted);margin:2px 0 0;font-size:12.5px}.wj-step.empty .wj-title{color:var(--color-text-muted)}.wj-lost{color:var(--color-danger-text);background:var(--color-danger-bg);white-space:nowrap;border-radius:8px;padding:4px 12px;font-size:15px;font-weight:700}.wj-lost small{font-size:12px;font-weight:500}.wj-lost:not(.over):not(.none){color:#9a3412;background:#fff7ed}.wj-lost.none{color:var(--color-success-text);background:var(--color-success-bg);align-items:center;gap:5px;font-size:13px;display:inline-flex}.wj-numbers{color:var(--color-text-secondary);flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;font-size:13px;display:flex}.wj-numbers strong{color:var(--color-text)}.wj-split{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.wj-chip{border-radius:6px;align-items:center;gap:6px;padding:5px 10px;font-size:12.5px;display:inline-flex}.wj-chip.wastage{background:var(--color-danger-bg);color:var(--color-danger-text)}.wj-chip.difference{background:var(--color-warning-bg);color:var(--color-warning-text)}.wj-reasons{flex-direction:column;gap:4px;margin:10px 0 0;padding:0;list-style:none;display:flex}.wj-reasons li{color:var(--color-text-secondary);align-items:center;gap:8px;font-size:12.5px;display:flex}.wj-reasons li strong{color:var(--color-text)}.wj-warn{color:var(--color-danger-text);align-items:center;gap:5px;margin:10px 0 0;font-size:12px;font-weight:500;display:inline-flex}.wd-report-picker{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}@media (width<=1200px){.wd-report-picker{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=640px){.wd-report-picker{grid-template-columns:1fr}}.wd-report-card{text-align:left;background:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;border-radius:10px;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;font-family:inherit;transition:border-color .15s,box-shadow .15s;display:flex}.wd-report-card:hover{border-color:var(--color-primary-ring)}.wd-report-card.active{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.wd-report-no{color:var(--color-primary);font-size:11px;font-weight:700}.wd-report-title{color:var(--color-text);font-size:13.5px;font-weight:600}.wd-report-hint{color:var(--color-text-muted);font-size:11.5px;line-height:1.35}.wd-summary{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.wd-summary-item{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:8px;flex-direction:column;padding:8px 14px;font-size:12px;display:flex}.wd-summary-item strong{color:var(--color-text);font-size:15px}.wd-report-table td,.wd-report-table th{white-space:nowrap}.wd-share{background:#f1f5f9;border-radius:4px;align-items:center;min-width:110px;height:20px;padding:0 6px;font-size:12px;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.wd-share span{background:var(--color-primary-light);z-index:0;position:absolute;top:0;bottom:0;left:0}.wd-share{isolation:isolate}.wd-share>span{z-index:-1}.wb-count{border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.wb-count.wastage{background:var(--color-danger-bg);color:var(--color-danger-text)}.wb-count.difference{background:var(--color-warning-bg);color:var(--color-warning-text)}.wb-count.neutral{color:#475569;background:#f1f5f9}.wg-head{cursor:pointer}.wg-head td{border-top:2px solid var(--color-border-strong);background:#f8fafc;padding:10px 14px!important}.wg-head:hover td{background:var(--color-primary-lighter)}.wg-head-inner{flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:13px;display:flex}.wg-batch{color:var(--color-text);font-size:14px;font-weight:700}.wg-stats{flex-wrap:wrap;align-items:center;gap:6px 8px;margin-left:auto;display:inline-flex}.wg-row td:first-child{padding-left:34px}.wd-mini{border-radius:6px;margin:2px 6px 2px 0;padding:2px 8px;font-size:12.5px;font-weight:600;display:inline-block}.wd-mini.wastage{background:var(--color-danger-bg);color:var(--color-danger-text)}.wd-mini.difference{background:var(--color-warning-bg);color:var(--color-warning-text)}.wj-view{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-primary);cursor:pointer;border-radius:6px;align-items:center;gap:5px;margin-top:10px;padding:5px 10px;font-family:inherit;font-size:12.5px;font-weight:600;display:inline-flex}.wj-view:hover{border-color:var(--color-primary)}.wd-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;margin-bottom:16px;display:grid}.wd-detail-item .detail-value{word-break:break-word}.wd-detail-boxes{grid-template-columns:1fr 1fr;gap:12px;display:grid}.wd-detail-box{border-left:4px solid;border-radius:10px;padding:12px 14px}.wd-detail-box.wastage{background:var(--color-danger-bg);border-left-color:var(--color-danger)}.wd-detail-box.difference{background:var(--color-warning-bg);border-left-color:var(--color-warning)}.wd-detail-box-head{align-items:center;gap:6px;margin:0 0 4px;font-size:13px;font-weight:600;display:flex}.wd-detail-box.wastage .wd-detail-box-head{color:var(--color-danger-text)}.wd-detail-box.difference .wd-detail-box-head{color:var(--color-warning-text)}.wd-detail-box-qty{color:var(--color-text);margin:0 0 6px;font-size:22px;font-weight:700}.wd-detail-box-qty span{color:var(--color-text-secondary);font-size:12.5px;font-weight:500}.wd-detail-box-reason{color:var(--color-text);margin:8px 0 0;font-size:13px}.wd-detail-box .wj-reasons{margin-top:8px}.wd-detail-approval{border-top:1px solid var(--color-border);flex-wrap:wrap;gap:12px 28px;margin-top:16px;padding-top:14px;display:flex}.wd-detail-list{flex-direction:column;display:flex}.wd-detail-row{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:16px;padding:9px 0;display:flex}.wd-detail-row:last-child{border-bottom:none}.wd-detail-row .detail-label{margin:0}.wd-detail-row-value{text-align:right;font-size:14px;font-weight:500}.wd-detail-row-value .cell-sub{text-align:right}@media (width<=1024px){.data-table tbody tr.wg-head{box-shadow:none;background:0 0;border:none;grid-column:1/-1;padding:0;display:block}.data-table tbody tr.wg-head td{background:#f8fafc;border-radius:10px;display:block;border:1px solid var(--color-border-strong)!important;padding:10px 12px!important}.data-table tbody tr.wg-head td:before{display:none}.wg-stats{width:100%;margin-left:0}.wd-report-table td,.wd-report-table th{white-space:normal}.wj-hero-line{font-size:16px}}@media (width<=640px){.wd-report-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.wd-report-card{padding:10px}.wd-report-hint{display:none}.wd-summary-item{flex:calc(50% - 10px)}.wj-hero{padding:14px}.wj-hero-line{font-size:15px}.wj-bar{height:28px}.wj-bar .wj-bar-good{padding:0 8px;font-size:11px}.wj-bar-legend{gap:4px 12px;font-size:11.5px}.wj-journey{padding:14px}.wj-step{gap:10px}.wj-rail{flex-basis:24px}.wj-rail:after{top:26px}.wj-dot{width:24px;height:24px;font-size:12px}.wj-title{margin-top:1px;font-size:14px}.wj-lost{padding:3px 10px;font-size:13px}.wj-chip{font-size:12px}.wd-detail-grid{grid-template-columns:1fr 1fr}.wd-detail-boxes{grid-template-columns:1fr}.wd-btn-text{display:none}}.wp-bar{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:16px;padding:12px 14px;display:flex}.wp-product{width:220px}.wp-range{color:var(--color-text-muted);white-space:nowrap;margin-left:auto;font-size:12.5px}.wp-seg{border:1px solid var(--color-border);background:#f1f5f9;border-radius:10px;gap:2px;max-width:100%;padding:3px;display:inline-flex}.wp-seg button{color:var(--color-text-secondary);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:7px;flex:auto;padding:7px 14px;font-family:inherit;font-size:13px;font-weight:500}.wp-seg button:hover{color:var(--color-text)}.wp-seg button.on{background:var(--color-surface);color:var(--color-primary);font-weight:600;box-shadow:0 1px 2px #1018281f}.wp-short{display:none}.wp-filters{gap:10px 12px}.wp-dates{gap:8px;display:flex}.wp-dates>*{width:160px}.wp-export{gap:8px;margin-left:auto;display:flex}.wp-caption{color:var(--color-text-muted);margin:-8px 0 12px;font-size:12.5px}@media (width<=1024px){.wp-range{width:100%;margin-left:0}.wp-export{margin-left:0}}@media (width<=640px){.wp-bar{padding:10px}.wp-product{width:100%}.wp-seg{width:100%;display:flex}.wp-seg button{padding:7px 4px;font-size:12.5px}.wp-long{display:none}.wp-short{display:inline}.wp-filters>.filter-item,.wp-dates{width:100%}.wp-dates>*{flex:1;width:auto;min-width:0}.wp-export{width:100%}.wp-export>button{flex:1;justify-content:center}}.ws-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.ws-card{border:1px solid var(--color-border);border-left:4px solid var(--color-border-strong);background:var(--color-surface);text-align:left;border-radius:10px;flex-direction:column;gap:2px;padding:14px 16px;font-family:inherit;display:flex}.ws-card strong{color:var(--color-text);font-size:24px}.ws-card-label{color:var(--color-text-secondary);align-items:center;gap:5px;font-size:13px;font-weight:600;display:inline-flex}.ws-card-sub{color:var(--color-text-muted);font-size:12px}.ws-card.lost{border-left-color:var(--color-danger)}.ws-card.lost strong{color:var(--color-danger-text)}.ws-card.damaged{border-left-color:#f97316}.ws-card.short{border-left-color:#eab308}.ws-card.approve{cursor:pointer;border-left-color:var(--color-border-strong)}.ws-card.approve.has{border-left-color:var(--color-warning);background:var(--color-warning-bg)}.ws-card.approve:hover{border-color:var(--color-primary)}.ws-line{color:var(--color-text-secondary);margin:0 0 16px;font-size:15px}.ws-steps,.ws-latest{margin-bottom:16px;padding:16px 18px}.ws-steps .card-title,.ws-latest .card-title{margin:0 0 10px}.ws-step{border:none;border-top:1px solid var(--color-border);text-align:left;cursor:pointer;background:0 0;grid-template-columns:28px minmax(140px,220px) minmax(0,1fr) 130px;align-items:center;gap:12px;width:100%;padding:10px 6px;font-family:inherit;display:grid}.ws-step:first-of-type{border-top:none}.ws-step:disabled{cursor:default}.ws-step:not(:disabled):hover{background:var(--color-surface-muted)}.ws-step-no{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:700;display:inline-flex}.ws-step-name{color:var(--color-text);flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.ws-over{font-size:11px}.ws-step-bar{background:var(--color-surface-muted);border-radius:999px;height:10px;overflow:hidden}.ws-step-bar span{border-radius:999px;height:100%;display:block}.ws-step-kg{text-align:right;color:var(--color-success-text);justify-content:flex-end;align-items:center;gap:4px;font-size:14px;font-weight:600;display:inline-flex}.ws-step-kg.bad{color:var(--color-danger-text)}.ws-step.empty .ws-step-kg{color:var(--color-text-muted);font-weight:500}.ws-hint{color:var(--color-text-muted);margin:8px 0 0;font-size:12px}.ws-list{margin:0;padding:0;list-style:none}.ws-list li{border-top:1px solid var(--color-border)}.ws-list li:first-child{border-top:none}.ws-item{text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:10px 6px;font-family:inherit;display:flex}.ws-item:hover{background:var(--color-surface-muted)}.ws-item-main{flex-direction:column;min-width:0;display:flex}.ws-item-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.ws-item-loss{color:var(--color-danger-text);font-size:14px;font-weight:600}@media (width<=900px){.ws-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.ws-step{grid-template-columns:28px minmax(0,1fr) 110px}.ws-step-bar{display:none}}.wr-picker{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.wr-pill{border:1px solid var(--color-border);background:var(--color-surface);text-align:left;cursor:pointer;border-radius:10px;flex-direction:column;gap:2px;padding:12px 14px;font-family:inherit;display:flex}.wr-pill:hover{border-color:var(--color-primary)}.wr-pill.on{border-color:var(--color-primary);background:var(--color-primary-light)}.wr-pill-title{color:var(--color-text);font-size:15px;font-weight:700}.wr-pill.on .wr-pill-title{color:var(--color-primary)}.wr-pill-hint{color:var(--color-text-muted);font-size:12px}.wr-click{cursor:pointer}.wr-click:hover td{background:var(--color-surface-muted)}@media (width<=700px){.wr-picker{grid-template-columns:minmax(0,1fr)}}.wr-bar{background:var(--color-surface-muted);border-radius:999px;width:140px;height:10px;display:block;overflow:hidden}.wr-bar span{background:var(--color-danger);border-radius:999px;height:100%;display:block}.entry-photo{border-top:1px solid var(--color-border);margin-top:16px;padding-top:12px}.entry-photo-img{border-radius:var(--radius-md);border:1px solid var(--color-border);max-width:100%;max-height:260px;display:block}
