.activity-log-page{display:flex;flex-direction:column;gap:16px}.activity-log-panel{display:flex;flex-direction:column;gap:14px;padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.activity-log-filters{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr)) minmax(220px,1.4fr) auto;gap:10px;align-items:end}.activity-log-filters label{display:grid;gap:6px;color:var(--muted);font-size:.86rem;font-weight:900}.activity-log-filters select,.activity-log-filters input{width:100%;padding:9px 10px;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--text);font:inherit;font-weight:800}.activity-log-summary{color:var(--muted);font-size:.9rem;font-weight:900;text-align:right}.activity-log-table-wrap{max-height:68vh;overflow:auto;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.activity-log-table{width:100%;min-width:980px;border-collapse:collapse}.activity-log-table th,.activity-log-table td{padding:10px 12px;border-bottom:1px solid #edf2f7;text-align:left;vertical-align:top}.activity-log-table th{position:sticky;top:0;z-index:1;background:#f8fafc;color:#334155;font-size:.84rem}.activity-log-table td{font-weight:800}.activity-log-table td span{display:block;margin-top:3px;color:#64748b;font-size:.82rem;font-weight:800}.activity-log-empty{padding:26px;color:#64748b;text-align:center}@media(max-width:1100px){.activity-log-filters{grid-template-columns:1fr}.activity-log-summary{text-align:left}}.clients-page{padding:20px;max-width:1400px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e0e0e0}.header-actions{display:flex;gap:15px}.btn-import,.btn-export{padding:10px 20px;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:14px}.btn-import{background:#28a745;color:#fff;display:inline-block}.btn-import:hover{background:#218838}.btn-export{background:#007bff;color:#fff}.btn-export:hover{background:#0056b3}.btn-import:disabled,.btn-export:disabled{opacity:.6;cursor:not-allowed}.clients-container{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;align-items:start}.clients-list{background:#fff;border-radius:12px;padding:25px;box-shadow:0 2px 8px #0000001a;min-width:0;width:100%}.clients-list h2{margin:0 0 20px;font-size:20px;color:#2c3e50}.empty-message{text-align:center;color:#6c757d;padding:40px 20px}.client-cards{display:flex;flex-direction:column;gap:15px;max-height:calc(100vh - 250px);overflow-y:auto}.client-card{border:2px solid #e0e0e0;border-radius:8px;padding:15px;cursor:pointer;transition:all .3s ease;width:100%;min-width:0}.client-card:hover{border-color:#007bff;box-shadow:0 4px 12px #007bff26}.client-card.selected{border-color:#007bff;background:#e7f3ff}.client-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.client-card-header h3{margin:0;font-size:18px;color:#2c3e50;min-width:0;overflow-wrap:anywhere}.client-code{background:#007bff;color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;flex:0 0 auto}.client-card-body p{margin:5px 0;font-size:14px;color:#495057;overflow-wrap:anywhere}.client-stats{display:flex;flex-wrap:wrap;gap:15px;margin-top:10px;padding-top:10px;border-top:1px solid #e0e0e0}.client-stats span{font-size:13px;color:#6c757d;font-weight:600}.client-detail{background:#fff;border-radius:12px;padding:25px;box-shadow:0 2px 8px #0000001a;max-height:calc(100vh - 200px);overflow-y:auto;min-width:0;width:100%}.detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid #e0e0e0}.detail-header h2{margin:0;font-size:22px;color:#2c3e50}.btn-close{background:none;border:none;font-size:32px;color:#6c757d;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .3s ease}.btn-close:hover{background:#f8f9fa;color:#dc3545}.detail-section{margin-bottom:30px}.detail-section h3{margin:0 0 15px;font-size:18px;color:#007bff;padding-bottom:10px;border-bottom:2px solid #e7f3ff}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.detail-item{display:flex;flex-direction:column;gap:5px}.detail-item .label{font-weight:600;font-size:13px;color:#6c757d}.detail-item .value{font-size:15px;color:#2c3e50;padding:8px 12px;background:#f8f9fa;border-radius:4px}.destinations-list{display:flex;flex-direction:column;gap:15px}.destination-card{border:1px solid #e0e0e0;border-radius:8px;padding:15px;background:#f8f9fa}.destination-card h4{margin:0 0 15px;font-size:16px;color:#2c3e50;padding-bottom:10px;border-bottom:1px solid #dee2e6}.products-table th,.products-table td{padding:12px;text-align:left;border-bottom:1px solid #e0e0e0}.products-table td{font-size:14px;color:#2c3e50}.products-table tr:hover{background:#f8f9fa}@media(max-width:1024px){.clients-container{grid-template-columns:1fr}.client-detail{max-height:none}}@media(max-width:768px){.page-header{flex-direction:column;align-items:flex-start;gap:15px}.header-actions{width:100%;flex-direction:column}.btn-import,.btn-export{width:100%}.detail-grid{grid-template-columns:1fr}}.detail-header-actions{display:flex;gap:10px;align-items:center}.btn-edit,.btn-delete,.btn-save,.btn-cancel{padding:8px 16px;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:14px}.btn-edit{background:#ffc107;color:#000}.btn-edit:hover{background:#e0a800}.btn-delete{background:#dc3545;color:#fff}.btn-save{background:#28a745;color:#fff}.btn-save:hover{background:#218838}.btn-save:disabled{opacity:.6;cursor:not-allowed}.btn-cancel{background:#6c757d;color:#fff}.btn-cancel:hover{background:#5a6268}.btn-cancel:disabled{opacity:.6;cursor:not-allowed}.edit-form{margin-top:20px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:20px}.form-grid label{display:flex;flex-direction:column;gap:5px;font-weight:600;font-size:13px;color:#495057}.form-grid input{padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;transition:border-color .3s ease}.form-grid input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-actions{display:flex;gap:10px;margin-top:20px}.edit-note{margin-top:15px;padding:12px;background:#fff3cd;border:1px solid #ffc107;border-radius:6px;color:#856404;font-size:13px}@media(max-width:768px){.form-grid{grid-template-columns:1fr}.detail-header-actions{flex-wrap:wrap}}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.btn-edit-section{padding:6px 14px;background:#ffc107;color:#000;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:13px}.btn-edit-section:hover{background:#e0a800}.btn-add{padding:6px 14px;background:#28a745;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:13px}.edit-item-card{border:2px solid #e0e0e0;border-radius:8px;padding:15px;margin-bottom:15px;background:#f8f9fa}.edit-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #dee2e6}.edit-item-header h4{margin:0;font-size:16px;color:#2c3e50}.btn-remove{padding:4px 12px;background:#dc3545;color:#fff;border:none;border-radius:4px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:12px}.inventory-accordion-panel{margin:0 0 16px;min-width:0;max-width:100%;border:1px solid #e4e8ee;border-radius:10px;background:#fff}.inventory-accordion-toggle{width:100%;display:flex;align-items:center;gap:8px;padding:12px 14px;border:none;background:#f8fafc;border-radius:10px;cursor:pointer;font-size:15px;font-weight:700;color:#1f2937;text-align:left}.inventory-arrow{display:inline-block;transition:transform .2s ease;font-size:12px;color:#374151}.inventory-arrow.open{transform:rotate(90deg)}.inventory-accordion-content{padding:10px 12px 12px;min-width:0}.inventory-accordion-actions{display:flex;justify-content:flex-end;margin-bottom:8px}.inventory-accordion-message{margin:8px 0;color:#4b5563}.inventory-accordion-message.error{color:#b91c1c}.inventory-accordion-table-wrap{overflow:auto;max-width:100%}.inventory-accordion-section{margin-top:12px}.inventory-accordion-section:first-of-type{margin-top:0}.inventory-accordion-section h3{margin:0 0 8px;color:#334155;font-size:14px}.inventory-accordion-table{width:100%;table-layout:fixed;border-collapse:collapse}.inventory-accordion-table th,.inventory-accordion-table td{border-bottom:1px solid #edf1f5;padding:8px 10px;font-size:13px;white-space:normal;overflow-wrap:anywhere;text-align:left}.inventory-accordion-table th{color:#64748b;background:#f8fafc;font-weight:600}.inventory-accordion-table .negative-stock{color:#b91c1c;font-weight:700}.global-inventory-page{display:flex;flex-direction:column;gap:16px;min-width:0;max-width:100%}.global-inventory-page>*{min-width:0}.global-inventory-page button{border-radius:8px;cursor:pointer;font-weight:600;line-height:1.2;padding:8px 12px}.global-inventory-page button:disabled{cursor:not-allowed;opacity:.55}.btn-primary{background:#2563eb;border:1px solid #2563eb;color:#fff}.btn-secondary{background:#fff;border:1px solid #d1d5db;color:#374151}.btn-sm{padding:6px 10px;font-size:12px}.global-inventory-page .header-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.inventory-import-message{padding:10px 12px;color:#166534;background:#dcfce7;border:1px solid #bbf7d0;border-radius:8px;font-size:13px;font-weight:600}.inventory-table-wrap,.inventory-events-table-wrap{overflow:auto;max-width:100%;background:#fff;border:1px solid #e5e7eb;border-radius:10px}.inventory-table,.inventory-events-table{width:100%;border-collapse:collapse}.inventory-table th,.inventory-table td,.inventory-events-table th,.inventory-events-table td{border-bottom:1px solid #eef1f4;text-align:left;vertical-align:top}.inventory-table,.inventory-events-table{table-layout:fixed}.inventory-table th,.inventory-table td{padding:8px 7px;font-size:13px;line-height:1.35}.inventory-events-table th,.inventory-events-table td{padding:10px;line-height:1.35;white-space:normal;overflow-wrap:anywhere}.inventory-table th,.inventory-events-table th{background:#f8fafc;font-size:12px;color:#64748b}.inventory-col-type{width:92px}.inventory-col-code{width:96px}.inventory-col-name{width:auto}.inventory-col-quantity{width:86px}.inventory-col-actions{width:138px}.inventory-column-settings-section{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.inventory-column-settings-panel{width:100%;padding:14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px}.inventory-column-settings-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.inventory-column-settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px 12px}.inventory-column-settings-item{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:6px 8px;border:1px solid #e5e7eb;border-radius:6px;background:#f8fafc;font-size:14px;color:#374151}.inventory-column-settings-toggle{min-width:0;flex:1 1 auto;display:flex;align-items:center;gap:7px;margin:0}.inventory-column-settings-toggle input{flex:0 0 auto;margin:0}.inventory-column-settings-toggle span{overflow-wrap:anywhere}.inventory-column-order-actions{flex:0 0 auto;display:flex;align-items:center;gap:4px}.inventory-column-order-button{width:28px;height:28px;padding:0;border:1px solid #d1d5db;border-radius:4px;background:#fff;color:#374151;font-size:14px;line-height:1}.inventory-column-order-button:hover:not(:disabled){border-color:#2563eb;color:#2563eb}.inventory-filter-section{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px}.inventory-filter-group{display:flex;align-items:center;gap:8px}.inventory-filter-group label{font-weight:700;white-space:nowrap}.inventory-filter-group input,.inventory-filter-group select{min-width:150px;padding:8px;border:1px solid #d1d5db;border-radius:6px;font:inherit}.inventory-filter-actions{display:flex;align-items:center;margin-left:auto}.inventory-empty-cell{padding:20px 12px;color:#64748b;text-align:center}.inventory-events-table th:nth-child(1),.inventory-events-table td:nth-child(1),.inventory-events-table th:nth-child(2),.inventory-events-table td:nth-child(2){width:112px}.inventory-events-table th:nth-child(4),.inventory-events-table td:nth-child(4){width:58px}.inventory-events-table th:nth-child(5),.inventory-events-table td:nth-child(5),.inventory-events-table th:nth-child(6),.inventory-events-table td:nth-child(6){width:76px}.inventory-events-table th:nth-last-child(2),.inventory-events-table td:nth-last-child(2),.inventory-events-table th:last-child,.inventory-events-table td:last-child{width:16%}.inventory-name-cell{overflow-wrap:anywhere;word-break:break-word}.inventory-quantity-cell{text-align:right;white-space:nowrap}.inventory-action-cell{white-space:normal}.inventory-action-cell .btn-sm{margin:0 4px 4px 0;padding:5px 8px;font-size:11px}.inventory-row-actions{display:flex;flex-direction:column;gap:6px}.inline-action{display:flex;gap:6px}.inline-action input{width:110px}.btn-danger{background:#fee2e2;border:1px solid #fecaca;color:#b91c1c}.btn-danger:hover{background:#fecaca}.material-create-section,.inventory-events-section,.inventory-warnings{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:14px}.material-create-section h2,.inventory-events-section h2{margin:0 0 10px;font-size:16px}.material-create-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-bottom:12px}.material-create-grid label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#4b5563}.material-create-grid select{min-width:0}.inventory-warnings strong{display:block;margin-bottom:6px}.inventory-warnings ul{margin:0;padding-left:20px}.negative-stock{color:#b91c1c;font-weight:700}.inventory-history-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a73}.inventory-history-dialog{width:min(960px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;overflow:hidden;background:#fff;border-radius:10px;box-shadow:0 24px 64px #0f172a3d}.inventory-history-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px;border-bottom:1px solid #e5e7eb}.inventory-history-header h2{margin:0 0 6px;font-size:18px}.inventory-history-header p{margin:0;color:#64748b;font-size:13px}.inventory-history-table-wrap{overflow:auto}.inventory-history-empty{padding:24px 16px;color:#64748b}.inventory-edit-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a73}.inventory-edit-dialog{width:min(520px,100%);overflow:hidden;background:#fff;border-radius:10px;box-shadow:0 24px 64px #0f172a3d}.inventory-edit-header,.inventory-edit-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px;border-bottom:1px solid #e5e7eb}.inventory-edit-footer{justify-content:flex-end;border-top:1px solid #e5e7eb;border-bottom:0}.inventory-edit-header h2{margin:0 0 6px;font-size:18px}.inventory-edit-header p{margin:0;color:#64748b;font-size:13px}.inventory-edit-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px}.inventory-edit-body label{display:flex;flex-direction:column;gap:6px;color:#4b5563;font-size:13px;font-weight:600}.inventory-edit-body input,.inventory-edit-body select,.inventory-edit-body textarea{width:100%;border:1px solid #d1d5db;border-radius:8px;padding:8px 10px;color:#111827;font:inherit}.inventory-edit-quantity-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;overflow:hidden;border:1px solid #d1d5db;border-radius:8px;background:#fff}.inventory-edit-quantity-input input{border:0;border-radius:0}.inventory-edit-quantity-input input:focus{outline:none}.inventory-edit-quantity-input:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.inventory-edit-quantity-input span{padding:0 10px;color:#374151;font-size:13px;font-weight:700;white-space:nowrap}.inventory-edit-reason{grid-column:1 / -1}.inventory-edit-error{grid-column:1 / -1;padding:10px 12px;border:1px solid #fecaca;border-radius:8px;background:#fff5f5;color:#991b1b;font-size:13px;font-weight:700}@media(max-width:768px){.inventory-table{min-width:760px}.inventory-table th,.inventory-table td,.inventory-events-table th,.inventory-events-table td{padding:8px;font-size:12px}.inline-action{flex-direction:column}.inline-action input{width:100%}.inventory-history-overlay,.inventory-edit-overlay{padding:12px}.inventory-history-header,.inventory-edit-header,.inventory-edit-footer{flex-direction:column}.inventory-edit-body{grid-template-columns:1fr}}.monitor-page{display:flex;width:100%;max-width:100%;min-width:0;flex-direction:column;gap:18px;overflow:hidden;color:var(--text)}.monitor-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.monitor-hero h3{margin:0;font-size:1.5rem}.monitor-hero p{margin:4px 0 0;color:var(--muted)}.monitor-refresh{display:flex;align-items:center;flex-wrap:wrap;gap:12px;color:var(--muted);font-weight:800}.monitor-logout-button{border-color:#fecaca;background:#fff5f5;color:#991b1b}.monitor-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.monitor-tabs button{padding:14px 16px;border:1px solid var(--border);border-radius:8px;background:#fffcf8e0;color:var(--muted);font-size:1rem;font-weight:900;cursor:pointer}.monitor-tabs button.active{border-color:#b96f2f6b;background:linear-gradient(135deg,#b96f2f29,#b96f2f14);color:var(--accent-strong)}.monitor-loading,.monitor-empty{padding:24px;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;text-align:center}.monitor-shipping,.monitor-two-columns{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);gap:16px}.monitor-calendar-panel,.monitor-list-panel{min-width:0;padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.monitor-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.monitor-section-title h4{margin:0;font-size:1.15rem}.monitor-section-title span{color:#64748b;font-weight:800}.monitor-section-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px}.monitor-auto-scroll-control{display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fffcf8db}.monitor-auto-scroll-control label{display:grid;grid-template-columns:auto minmax(180px,280px);gap:12px;align-items:center;color:var(--text);font-size:.9rem;font-weight:900}.monitor-auto-scroll-control input{width:100%}.monitor-auto-scroll-control strong{min-width:64px;color:var(--accent-strong);font-weight:900;text-align:right}.monitor-scroll-settings-modal{display:flex;width:min(560px,100%);flex-direction:column;gap:14px;padding:18px;border:1px solid var(--border);border-radius:8px;background:var(--panel-strong);box-shadow:var(--shadow)}.monitor-scroll-settings-body{display:grid;gap:10px}.monitor-scroll-settings-body .monitor-auto-scroll-control{justify-content:space-between}.monitor-scroll-settings-body .monitor-auto-scroll-control label{flex:1}.monitor-calendar-weekdays,.monitor-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.monitor-calendar-weekdays span{color:#64748b;font-size:.85rem;font-weight:900;text-align:center}.monitor-calendar-day{min-height:74px;padding:8px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.monitor-calendar-day strong{display:block;font-size:1.05rem}.monitor-calendar-day span{display:inline-block;margin-top:8px;padding:3px 8px;border-radius:999px;background:#e8f7ef;color:#166534;font-size:.78rem;font-weight:900}.monitor-calendar-day.muted{opacity:.35}.monitor-calendar-day.has-items{background:#fffaf0}.monitor-calendar-day.saturday{background:#eff6ff}.monitor-calendar-day.sunday{background:#fff1f2}.monitor-calendar-day.today{border-color:#f59e0b;background:#fef3c7;box-shadow:0 0 0 2px #f59e0b2e}.monitor-overdue{display:flex;justify-content:space-between;margin-bottom:10px;padding:10px 12px;border:1px solid #fecaca;border-radius:8px;background:#fff5f5;color:#991b1b;font-weight:900}.monitor-shipping-sheet{width:100%;max-width:100%;min-width:0;overflow:hidden;padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.monitor-sheet-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.monitor-sheet-toolbar .monitor-section-title{margin-bottom:0}.monitor-month-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.monitor-date-control{display:grid;grid-template-columns:auto 178px auto;height:34px;align-items:center;flex:0 0 auto;gap:10px;min-width:310px;padding:0 8px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#334155;font-size:.84rem;font-weight:900;white-space:nowrap}.monitor-date-control-label,.monitor-date-control-value{min-width:max-content}.monitor-date-control-value{color:#111827}.monitor-date-control input{width:178px;min-width:0;padding:0 4px;border:0;background:transparent;color:#111827;font:inherit;outline:none}.monitor-stock-mode-toggle{display:inline-flex;align-items:center;overflow:hidden;border:1px solid #cbd5e1;border-radius:6px;background:#fff}.monitor-stock-mode-toggle button{min-width:64px;padding:7px 10px;border:0;border-right:1px solid #cbd5e1;background:transparent;color:#334155;font-size:.82rem;font-weight:900;line-height:1;cursor:pointer}.monitor-stock-mode-toggle button:last-child{border-right:0}.monitor-stock-mode-toggle button.active{background:#1268b3;color:#fff}.monitor-shipping-grid-wrap{width:100%;max-width:100%;max-height:68vh;overflow-x:auto;overflow-y:auto;overscroll-behavior:contain;border:1px solid #d9dee5;background:#fff;scrollbar-gutter:stable both-edges}.monitor-shipping-grid{--monitor-shipping-row-height: 26px;width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;background:#fff;color:#111827;font-size:.9rem}.monitor-shipping-grid th,.monitor-shipping-grid td{height:var(--monitor-shipping-row-height);padding:4px 6px;border-right:1px solid #d9dee5;border-bottom:1px solid #d9dee5;white-space:nowrap}.monitor-shipping-grid th{position:sticky;top:0;z-index:3;background:#fff;font-weight:800;text-align:left}.monitor-shipping-grid thead tr:nth-child(2) th{top:var(--monitor-shipping-row-height)}.monitor-shipping-grid tbody tr:first-child td{padding-top:8px}.monitor-shipping-grid tbody tr:hover td{background:#f8fafc}.monitor-sticky-col{position:sticky;z-index:2;background:#fff}.monitor-shipping-grid thead .monitor-sticky-col{z-index:5}.monitor-product-col{left:0;width:340px;min-width:340px;max-width:340px}.monitor-package-col{left:340px;width:90px;min-width:90px;max-width:90px}.monitor-stock-col{left:430px;width:225px;min-width:225px;max-width:225px}.monitor-production-count-grid .monitor-step-col{left:0;width:220px;min-width:220px;max-width:220px}.monitor-production-count-grid .monitor-origin-col{left:220px;width:82px;min-width:82px;max-width:82px}.monitor-production-count-grid.compact-sticky-columns .monitor-step-col{width:150px;min-width:150px;max-width:150px}.monitor-production-count-grid.compact-sticky-columns .monitor-origin-col{left:150px;width:58px;min-width:58px;max-width:58px}.monitor-production-count-grid.compact-sticky-columns .monitor-step-col{overflow:hidden;text-overflow:ellipsis}.monitor-production-count-grid.compact-sticky-columns .monitor-origin-badge{min-width:0;padding-right:5px;padding-left:5px}.monitor-origin-cell{text-align:center}.monitor-count-cell{text-align:right;font-variant-numeric:tabular-nums}.monitor-origin-badge{display:inline-flex;align-items:center;justify-content:center;min-width:52px;padding:3px 7px;border-radius:999px;background:#e8f7ef;color:#166534;font-size:.78rem;font-weight:900}.monitor-origin-badge.thai{background:#eff6ff;color:#1d4ed8}.monitor-shipping-grid.compact-sticky-columns .monitor-product-col{width:170px;min-width:170px;max-width:170px}.monitor-shipping-grid.compact-sticky-columns .monitor-package-col{left:170px;width:58px;min-width:58px;max-width:58px}.monitor-shipping-grid.compact-sticky-columns .monitor-stock-col{left:228px;width:132px;min-width:132px;max-width:132px}.monitor-shipping-grid.compact-sticky-columns .monitor-product-col,.monitor-shipping-grid.compact-sticky-columns .monitor-stock-col{overflow:hidden;text-overflow:ellipsis}.monitor-shipping-grid.compact-sticky-columns .monitor-package-col{overflow:hidden;text-overflow:clip}.monitor-date-col{width:98px;min-width:98px;max-width:98px;text-align:right}.monitor-sheet-year{text-align:left}.monitor-production-count-grid .monitor-sheet-year{text-align:center}.monitor-product-cell{overflow:hidden;font-weight:800;text-overflow:ellipsis}.monitor-product-reorder-cell{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:4px;min-width:0}.monitor-product-name-text{overflow:hidden;text-overflow:ellipsis}.monitor-row-drag-handle{color:#64748b;font-size:.9rem;line-height:1;text-align:center;cursor:grab}.monitor-row-order-buttons{display:inline-flex;gap:2px}.monitor-row-order-button{display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;padding:0;border:1px solid #cbd5e1;border-radius:4px;background:#fff;color:#334155;font-size:.78rem;font-weight:900;line-height:1;cursor:pointer}.monitor-row-order-button:hover:not(:disabled){border-color:#1268b3;color:#1268b3}.monitor-row-order-button:disabled{opacity:.35;cursor:not-allowed}.monitor-shipping-grid tbody tr.is-reordering{cursor:grab}.monitor-shipping-grid tbody tr.is-reordering:active{cursor:grabbing}.monitor-shipping-grid tbody tr.is-dragging td{opacity:.55}.monitor-stock-cell,.monitor-package-cell,.monitor-quantity-cell{text-align:right;font-variant-numeric:tabular-nums}.monitor-package-cell{color:#334155;font-weight:800}.monitor-stock-cell{font-weight:800}.monitor-stock-count{display:inline-flex;align-items:baseline;justify-content:flex-end;gap:6px;flex-wrap:wrap;width:100%}.monitor-stock-projected{color:#dc2626;font-weight:900;white-space:nowrap}.monitor-quantity-cell.has-quantity{font-weight:900}.monitor-quantity-cell.forecast{background:#f5f3ff;color:#5b21b6}.monitor-shipping-grid .weekend{background:#fafafa}.monitor-shipping-grid .saturday{background:#eff6ff}.monitor-shipping-grid .sunday{background:#fff1f2}.monitor-shipping-grid .today-col{background:#fef3c7}.monitor-shipping-grid .monitor-quantity-cell.today-col.has-quantity{color:#92400e}.monitor-production-count-grid tbody tr.thai-origin-row td:not(.today-col):not(.weekend):not(.saturday):not(.sunday){background:#ecfdf5}.monitor-production-count-grid tbody tr.thai-origin-row:hover td:not(.today-col):not(.weekend):not(.saturday):not(.sunday){background:#d1fae5}.monitor-quantity-cell.shipped{background:#fee2e2;color:#991b1b}.monitor-quantity-cell.status-warning,.monitor-quantity-cell.shortage{background:#fef3c7;color:#92400e}.monitor-quantity-link{display:inline-flex;justify-content:flex-end;width:100%;color:inherit;font-weight:900;text-decoration:none}.monitor-count-link{display:inline-flex;justify-content:flex-end;width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:900;cursor:pointer}.monitor-quantity-link:hover,.monitor-count-link:hover{text-decoration:underline}.monitor-sheet-empty{padding:28px;color:#64748b;font-weight:800;text-align:center}.monitor-table-wrap{max-height:62vh;overflow:auto;border:1px solid #e2e8f0;border-radius:8px;scrollbar-gutter:stable}.monitor-table{width:100%;border-collapse:collapse;background:#fff}.monitor-table th,.monitor-table td{padding:11px 12px;border-bottom:1px solid #edf2f7;text-align:left;vertical-align:top}.monitor-table th{position:sticky;top:0;z-index:1;background:#f1f5f9;color:#334155;font-size:.84rem}.monitor-table td{font-weight:700}.monitor-table.compact td{font-size:.9rem}.monitor-table .today-row{background:#fef3c7}.monitor-shipping-detail-page{min-height:0}.monitor-shipping-detail-panel{display:flex;min-height:0;flex-direction:column;gap:16px}.monitor-shipping-detail-table-wrap{max-height:calc(100vh - 245px)}.monitor-shipping-detail-table th,.monitor-shipping-detail-table td{white-space:nowrap}.monitor-status{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#e2e8f0;color:#334155;font-size:.8rem;font-weight:900;white-space:nowrap}.monitor-status.shortage{background:#fef3c7;color:#92400e}.monitor-status.shipped{background:#fee2e2;color:#991b1b}.monitor-status.status-warning{background:#fef3c7;color:#92400e}.monitor-status.forecast{background:#ede9fe;color:#5b21b6}.monitor-summary-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.monitor-metric{padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.monitor-metric span{display:block;color:var(--muted);font-weight:900}.monitor-metric strong{display:block;margin-top:4px;font-size:2rem}.monitor-metric.danger{border-color:#fecaca;background:#fff5f5;color:#991b1b}.monitor-metric.warning{border-color:#fde68a;background:#fffbeb;color:#92400e}.monitor-inventory{display:flex;flex-direction:column;gap:16px}.monitor-sales{display:flex;min-width:0;flex-direction:column;gap:14px;padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.monitor-sales-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px}.monitor-sales-toolbar .monitor-section-title{margin-bottom:0}.monitor-sales-replace{display:inline-flex;align-items:center;gap:7px;color:#334155;font-size:.86rem;font-weight:900;white-space:nowrap}.monitor-sales-replace input{width:16px;height:16px}.monitor-sales-filters{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:10px;align-items:end}.monitor-sales-filters label{display:grid;min-width:0;gap:5px;color:#64748b;font-size:.82rem;font-weight:900}.monitor-sales-filters input,.monitor-sales-filters select{width:100%;min-width:0;padding:8px 9px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#111827;font:inherit;font-weight:800}.monitor-sales-calendar-sheet{padding:12px}.monitor-sales-calendar-grid-wrap{max-height:58vh}.monitor-sales-calendar-grid .monitor-product-col{width:300px;min-width:300px;max-width:300px}.monitor-sales-calendar-grid .monitor-package-col{left:300px;width:78px;min-width:78px;max-width:78px}.monitor-sales-calendar-grid .monitor-stock-col{left:378px;width:178px;min-width:178px;max-width:178px}.monitor-sales-calendar-grid .monitor-date-col{width:92px;min-width:92px;max-width:92px}.monitor-sales-calendar-grid .monitor-product-cell{white-space:normal}.monitor-sales-calendar-product{display:grid;min-width:0;gap:2px;line-height:1.2}.monitor-sales-calendar-product-name,.monitor-sales-calendar-product-code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monitor-sales-calendar-product-code{color:#64748b;font-size:.76rem;font-weight:900}.monitor-sales-calendar-grid .monitor-stock-cell{color:#0f766e;font-weight:900}.monitor-sales-calendar-grid .monitor-quantity-cell.has-quantity{background:#ecfdf5;color:#0f766e}.monitor-sales-calendar-grid .monitor-quantity-cell.today-col.has-quantity{background:#fef3c7;color:#92400e}.monitor-sales-table-wrap{overflow-x:auto;overflow-y:visible;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.monitor-sales-table{min-width:1320px}.monitor-sales-table th,.monitor-sales-table td{white-space:nowrap}.monitor-sales-table .numeric{text-align:right;font-variant-numeric:tabular-nums}.monitor-sales-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;color:#334155;font-weight:900}.monitor-sales-page-count{min-width:74px;text-align:center}.monitor-warning-list{display:flex;flex-wrap:wrap;gap:8px}.monitor-warning-list span{padding:8px 10px;border:1px solid #fbbf24;border-radius:8px;background:#fffbeb;color:#92400e;font-weight:800}.monitor-warning-list.error{padding:10px 12px;border:1px solid #fecaca;border-radius:8px;background:#fff5f5;color:#991b1b;font-weight:900;white-space:pre-line}.monitor-threshold-cell,.monitor-lead-time-cell{white-space:nowrap}.monitor-threshold-cell input{width:92px;min-width:0;padding:7px 8px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;font:inherit;font-weight:800}.monitor-lead-time-cell input{width:74px;min-width:0;padding:7px 8px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;font:inherit;font-weight:800}.monitor-threshold-cell span,.monitor-lead-time-cell span{margin-left:4px;color:#64748b;font-size:.82rem;font-weight:800}.monitor-threshold-save{min-width:64px}.monitor-settings-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a6b}.monitor-settings-modal{display:flex;width:min(1180px,100%);max-height:min(860px,calc(100vh - 48px));min-height:0;flex-direction:column;gap:12px;padding:18px;border:1px solid #dbe5ef;border-radius:8px;background:#fff;box-shadow:0 20px 45px #0f172a38}.monitor-settings-header,.monitor-settings-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.monitor-settings-header h4{margin:0;font-size:1.2rem}.monitor-settings-header span{display:inline-block;margin-top:3px;color:#64748b;font-weight:800}.monitor-settings-toolbar{justify-content:flex-start;flex-wrap:wrap}.monitor-settings-message{padding:10px 12px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#0f4c81;font-weight:900}.monitor-settings-table-wrap{min-height:0;overflow:auto;border:1px solid #e2e8f0;border-radius:8px}.monitor-settings-table th,.monitor-settings-table td{white-space:nowrap}.monitor-production-detail-modal{width:min(1320px,100%)}.monitor-production-detail-table-wrap{min-height:0;max-height:calc(100vh - 190px)}.monitor-production-detail-table th,.monitor-production-detail-table td{white-space:nowrap}.monitor-production-detail-table td:last-child{min-width:520px;white-space:normal}.monitor-step-detail-values{display:grid;gap:6px}.monitor-step-detail-value{display:grid;grid-template-columns:170px minmax(0,1fr);gap:8px;align-items:start}.monitor-step-detail-value span{color:#64748b;font-size:.82rem;font-weight:900}.monitor-step-detail-value strong{color:#111827;font-size:.88rem;font-weight:800;white-space:pre-line;overflow-wrap:anywhere}.monitor-alert-list{display:flex;max-height:62vh;flex-direction:column;gap:8px;overflow:auto;scrollbar-gutter:stable}.monitor-fullscreen-shell .monitor-alert-list,.monitor-fullscreen-shell .monitor-table-wrap{max-height:calc(100vh - 390px)}.monitor-inventory-alert{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #e2e8f0;border-radius:8px}.monitor-inventory-alert strong,.monitor-inventory-alert span{display:block}.monitor-inventory-alert span{margin-top:2px;color:#64748b;font-size:.82rem;font-weight:800}.monitor-inventory-alert b{font-size:1.25rem;white-space:nowrap}.monitor-inventory-alert.critical{border-color:#fecaca;background:#fff5f5;color:#991b1b}.monitor-inventory-alert.low{border-color:#fde68a;background:#fffbeb;color:#92400e}.monitor-process{display:flex;flex-direction:column;gap:16px}.monitor-fullscreen-shell .monitor-process{max-height:calc(100vh - 178px);min-height:0;overflow:auto;padding-right:2px;scrollbar-gutter:stable}.monitor-process-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-height:66vh;overflow:auto;padding-right:2px;scrollbar-gutter:stable}.monitor-process-column{min-width:0;border:1px solid #dbe5ef;border-radius:8px;background:#fff}.monitor-process-column-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.monitor-process-column-header strong{font-size:1rem}.monitor-process-column-header span{min-width:28px;padding:2px 8px;border-radius:999px;background:#e8f7ef;color:#166534;font-weight:900;text-align:center}.monitor-process-cards{display:flex;min-height:170px;flex-direction:column;gap:8px;padding:10px}.monitor-process-card{padding:10px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.monitor-process-card-header{display:flex;justify-content:space-between;gap:8px}.monitor-process-card-header strong{color:#0f4c81}.monitor-process-card-header span{color:#64748b;font-size:.82rem;font-weight:900;white-space:nowrap}.monitor-process-card-details{display:grid;gap:6px;margin:8px 0 0}.monitor-process-card-details div{display:flex;justify-content:space-between;gap:10px}.monitor-process-card-details dt{color:#64748b;font-size:.78rem;font-weight:800}.monitor-process-card-details dd{margin:0;color:#334155;font-weight:900;text-align:right}.monitor-process-quantity-list{display:grid;gap:3px}.monitor-process-quantity-list span{color:#334155;font-size:.84rem;font-weight:900;white-space:normal}.monitor-process-empty{padding:18px;border:1px dashed #cbd5e1;border-radius:8px;color:#94a3b8;text-align:center}@media(max-width:1100px){.monitor-two-columns,.monitor-process-board,.monitor-summary-row,.monitor-tabs{grid-template-columns:1fr}.monitor-hero,.monitor-refresh,.monitor-sheet-toolbar,.monitor-sales-toolbar,.monitor-auto-scroll-control,.monitor-settings-header{align-items:stretch;flex-direction:column}.monitor-sales-filters,.monitor-auto-scroll-control label{grid-template-columns:1fr}.monitor-settings-backdrop{align-items:stretch;padding:10px}.monitor-date-control{align-self:flex-start;grid-template-columns:auto 178px auto}.monitor-step-detail-value{grid-template-columns:1fr}}.manufacturing-progress-list-page{width:100%;min-height:100vh;background:transparent}.manufacturing-progress-list-page .page-header{background:#fff;padding:20px 30px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:100}.manufacturing-progress-list-page .page-header h1{margin:0;font-size:28px;color:#2c3e50}.manufacturing-progress-list-page .page-header .header-actions{display:flex;gap:10px;align-items:center}.progress-list{padding:30px}.empty-state{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.empty-state p{font-size:18px;color:#6c757d;margin-bottom:20px}.progress-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.progress-card{background:#fff;border-radius:16px;box-shadow:0 4px 16px #7cb34226;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;border:2px solid rgba(139,195,74,.3)}.progress-card.completed{border:3px solid #4caf50;box-shadow:0 4px 16px #4caf504d}.progress-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #7cb34240}.card-header{background:linear-gradient(135deg,#7cb342,#8bc34a);color:#fff;padding:15px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid #689f38}.card-header h3{margin:0;font-size:18px;font-weight:600;display:flex;align-items:center;gap:10px;text-shadow:1px 1px 2px rgba(0,0,0,.2)}.completed-badge{display:inline-block;background:#fffffff2;color:#4caf50;font-size:12px;font-weight:700;padding:4px 12px;border-radius:12px;border:2px solid #4caf50;box-shadow:0 2px 4px #0000001a}.created-date{font-size:14px;opacity:.9}.card-body{padding:20px}.info-row{display:flex;margin-bottom:12px;font-size:14px}.info-row:last-child{margin-bottom:0}.info-row .label{font-weight:600;color:#495057;min-width:80px}.info-row .value{color:#2c3e50;flex:1}.card-footer{padding:15px 20px;border-top:1px solid #e9ecef;display:flex;gap:10px}.btn-view{flex:1;padding:8px 16px;border:none;background:linear-gradient(135deg,#7cb342,#8bc34a);color:#fff;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 6px #7cb3424d}.btn-view:hover{background:linear-gradient(135deg,#689f38,#7cb342);transform:translateY(-2px);box-shadow:0 4px 12px #7cb34266}.btn-delete{padding:8px 16px;border:none;background:#dc3545;color:#fff;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background .3s ease}.btn-delete:hover{background:#c82333}@media(max-width:768px){.page-header{flex-direction:column;gap:15px;align-items:flex-start}.page-header h1{font-size:22px}.progress-list{padding:15px}.progress-cards{grid-template-columns:1fr}.card-footer{flex-direction:column}.btn-view,.btn-delete{width:100%}}.btn-view-only{flex:1;padding:8px 16px;border:none;background:#17a2b8;color:#fff;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background .3s ease}.btn-view-only:hover{background:#138496}.btn-complete{padding:8px 16px;border:none;background:#28a745;color:#fff;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background .3s ease}.btn-complete:hover{background:#218838}.btn-incomplete{padding:8px 16px;border:none;background:#ffc107;color:#212529;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background .3s ease}.btn-incomplete:hover{background:#e0a800}.product-list{display:flex;flex-direction:column;gap:6px;flex:1}.product-item{color:#2c3e50;font-size:14px;padding:4px 0}.btn-full-width{width:100%}.info-row .product-list{margin-top:4px}.production-progress-page{width:100%;min-height:100vh;background:transparent}.page-header{background:#fff;padding:20px 30px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:100}.page-header h1{margin:0;font-size:28px;color:#2c3e50}.header-controls{display:flex;gap:20px;align-items:center}.origin-selector{display:flex;align-items:center;gap:10px}.origin-selector label{font-weight:600;color:#495057}.origin-btn{padding:8px 20px;border:2px solid #007bff;background:#fff;color:#007bff;border-radius:20px;font-weight:600;cursor:pointer;transition:all .3s ease}.origin-btn:hover{background:#e7f3ff}.origin-btn.active{background:#007bff;color:#fff}.btn-danger{padding:8px 20px;border:none;background:#dc3545;color:#fff;border-radius:4px;font-weight:600;cursor:pointer;transition:background .3s ease}.btn-danger:hover{background:#c82333}.btn-secondary{padding:8px 20px;border:1px solid #6c757d;background:#fff;color:#6c757d;border-radius:4px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#6c757d;color:#fff}.btn-primary{padding:8px 20px;border:none;background:#007bff;color:#fff;border-radius:4px;font-weight:600;cursor:pointer;transition:background .3s ease}.btn-primary:disabled{background:#6c757d;cursor:not-allowed}.loading{text-align:center;padding:60px 20px;font-size:18px;color:#6c757d}.flow-diagram{padding:30px;overflow-x:auto}.flow-section{background:#fff;border-radius:12px;padding:25px;margin-bottom:25px;box-shadow:0 2px 8px #00000014}.flow-steps{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.flow-steps>div{display:flex;align-items:center;gap:10px}.flow-step{min-width:140px;padding:15px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:10px;cursor:pointer;transition:all .3s ease;position:relative;box-shadow:0 4px 6px #0000001a}.flow-step:hover{transform:translateY(-3px);box-shadow:0 6px 12px #00000026}.flow-step.filled{background:linear-gradient(135deg,#28a745,#20c997)}.flow-step.empty{background:linear-gradient(135deg,#6c757d,#495057)}.step-number{font-size:14px;font-weight:700;opacity:.8}.step-name{font-size:15px;font-weight:600;margin-top:5px}.inventory-badge{display:block;font-size:12px;font-weight:500;margin-top:4px;opacity:.9}.check-mark{position:absolute;top:5px;right:5px;font-size:18px;font-weight:700}.flow-arrow{font-size:24px;color:#007bff;font-weight:700}.branch-arrow-container{display:flex;flex-direction:column;align-items:center;padding:20px 0}.branch-arrow{font-size:36px;color:#007bff;font-weight:700;animation:pulse 2s infinite}.branch-label{font-size:14px;color:#007bff;font-weight:600;margin-top:5px}.merge-arrow-container{display:flex;flex-direction:column;align-items:center;padding:20px 0}.merge-arrow{font-size:36px;color:#28a745;font-weight:700;animation:pulse 2s infinite}.merge-label{font-size:14px;color:#28a745;font-weight:600;margin-top:5px}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.flow-steps-grid{display:flex;flex-direction:column;gap:20px}.flow-line{display:flex;align-items:center;gap:10px;padding:15px;background:#f8f9fa;border-radius:8px;border-left:4px solid #007bff}.line-label{min-width:120px;font-weight:700;font-size:16px;color:#007bff;padding:10px;background:#fff;border-radius:6px;text-align:center}.flow-item{display:flex;align-items:center;gap:10px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0000004d;animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:20px 25px;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:22px;color:#2c3e50}.close-btn{background:none;border:none;font-size:32px;color:#6c757d;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .3s ease}.close-btn:hover{background:#f8f9fa;color:#dc3545}.modal-body{padding:25px;overflow-y:auto;flex:1}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:#f1f1f1}.modal-body::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover{background:#999}.modal-footer{padding:20px 25px;border-top:2px solid #e9ecef;display:flex;justify-content:flex-end}.form-fields{display:flex;flex-direction:column;gap:18px}.form-field label{font-weight:600;margin-bottom:8px;color:#495057;font-size:14px}.form-field .required{color:#dc3545;margin-left:4px}.form-field input,.form-field select,.form-field textarea{padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;transition:border-color .3s ease;font-family:inherit}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-field input:read-only,.form-field textarea:read-only{background:#e9ecef;cursor:not-allowed}.input-with-unit{display:flex;align-items:center;gap:8px}.input-with-unit input{flex:1}.unit{color:#6c757d;font-size:14px;font-weight:500;min-width:40px}.form-field textarea{resize:vertical;min-height:80px}.btn-primary{padding:10px 24px;border:none;background:#007bff;color:#fff;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background .3s ease}.btn-primary:hover{background:#0056b3}@media(max-width:768px){.page-header{flex-direction:column;gap:15px;align-items:flex-start;padding:15px 20px}.page-header h1{font-size:22px}.header-controls{width:100%;flex-direction:column;gap:10px}.origin-selector{width:100%}.origin-btn{flex:1}.flow-diagram,.flow-section{padding:15px}.section-title{font-size:18px}.flow-step{min-width:100px;padding:10px}.step-name{font-size:13px}.flow-line{flex-direction:column;align-items:flex-start}.line-label{width:100%}.flow-item{flex-wrap:wrap}.modal-content{max-width:100%;max-height:95vh}.modal-header{padding:15px 20px}.modal-header h2{font-size:18px}.modal-body{padding:20px}.modal-footer{padding:15px 20px}}.vertical-flow-diagram{padding:30px;max-width:100%;margin:0 auto;overflow-x:auto}.flow-section{background:#fff;border-radius:12px;padding:25px;margin-bottom:20px;box-shadow:0 2px 8px #00000014}.section-title{margin:0 0 20px;font-size:20px;color:#2c3e50;padding-bottom:10px;border-bottom:3px solid #007bff}.flow-step-vertical{display:flex;align-items:center;gap:15px;padding:15px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:10px;cursor:pointer;transition:all .3s ease;position:relative;box-shadow:0 4px 6px #0000001a;margin:0 auto;max-width:600px}.flow-step-vertical:hover{transform:translate(5px);box-shadow:0 6px 12px #00000026}.flow-step-vertical.filled{background:linear-gradient(135deg,#28a745,#20c997)}.flow-step-vertical.partial{background:linear-gradient(135deg,#ffc107,#ff9800)}.flow-step-vertical.empty{background:linear-gradient(135deg,#6c757d,#495057)}.flow-step-vertical.no-input{background:linear-gradient(135deg,#17a2b8,#138496);cursor:default}.flow-step-vertical.no-input:hover{transform:none;box-shadow:0 4px 6px #0000001a}.step-content{flex:1}.flow-arrow-vertical{text-align:center;font-size:32px;color:#007bff;font-weight:700;margin:10px 0;animation:pulse 2s infinite}.branch-section,.merge-section{text-align:center;padding:10px;margin:10px 0}.branch-arrow-down,.merge-arrow-down{font-size:32px;color:#007bff;font-weight:700;animation:pulse 2s infinite}.parallel-lines-container{display:flex;gap:20px;margin:20px 0;justify-content:center;align-items:flex-start}.origin-section{display:flex;flex-direction:column;gap:15px}.origin-title{text-align:center;font-size:20px;font-weight:700;color:#2c3e50;padding:12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;margin:0}.lines-horizontal{display:flex;gap:15px;justify-content:flex-start}.line-column{background:#f8f9fa;border-radius:12px;padding:20px;border-left:4px solid #007bff;min-width:180px;max-width:220px}.line-label-vertical{font-weight:700;font-size:16px;color:#007bff;padding:10px 15px;background:#fff;border-radius:6px;text-align:center;margin-bottom:15px;border:2px solid #007bff}@media(max-width:1200px){.parallel-lines-container{flex-direction:column;align-items:center}.origin-section{width:100%;max-width:800px}.lines-horizontal{flex-wrap:wrap;justify-content:center}.line-column{min-width:200px;max-width:300px}}@media(max-width:480px){.flow-step{min-width:80px;padding:8px}.step-number{font-size:12px}.step-name{font-size:11px}.flow-arrow{font-size:18px}.unified-flow-diagram{padding:15px;margin:10px}.parallel-lines{padding:10px}.process-line{flex-direction:column;align-items:flex-start;gap:10px}.line-label{width:100%;min-width:auto}.line-steps{width:100%;overflow-x:auto}.branch-container,.merge-container{gap:20px}.branch-arrow,.merge-arrow{font-size:24px}.vertical-flow-diagram{padding:15px}.parallel-lines-container,.lines-horizontal{flex-direction:column}.origin-section{max-width:100%}.line-column{max-width:100%;min-width:100%}.flow-step-vertical{max-width:100%}}.shared-column{background:linear-gradient(135deg,#fff5f5,#ffe5e5);border-left:4px solid #ff6b6b;box-shadow:0 4px 8px #ff6b6b33;position:relative}.shared-label-vertical{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff!important;border-color:#ff6b6b!important}.shared-lines-info{font-size:12px;font-weight:600;color:#007bff;text-align:center;padding:8px;background:#fff;border-radius:6px;margin-bottom:15px;border:2px solid #007bff}.flow-step-vertical.shared{background:linear-gradient(135deg,#ff6b6b,#ee5a6f)!important;border:2px solid #ff8787}.flow-step-vertical.shared.filled{background:linear-gradient(135deg,#28a745,#20c997)!important;border-color:#48d597}.flow-step-vertical.shared.partial{background:linear-gradient(135deg,#ffc107,#ff9800)!important;border-color:#ffd54f}.flow-step-vertical.shared.empty{background:linear-gradient(135deg,#6c757d,#495057)!important;border-color:#868e96}.diagonal-arrow-container{position:relative;display:flex;align-items:center;justify-content:center;height:60px;margin:10px 0}.diagonal-arrow{position:relative;width:100%;height:2px;background:linear-gradient(90deg,#007bff,#0056b3);transform-origin:left center}.diagonal-arrow:before{content:"";position:absolute;right:-8px;top:-4px;width:0;height:0;border-left:10px solid #0056b3;border-top:5px solid transparent;border-bottom:5px solid transparent}.diagonal-arrow.left-to-center{transform:rotate(-15deg)}.diagonal-arrow.center-to-right{transform:rotate(15deg)}.diagonal-arrow.right-to-center{transform:rotate(165deg)}.diagonal-arrow.center-to-left{transform:rotate(-165deg)}.shared-connection{position:relative;display:flex;align-items:center;justify-content:space-between;padding:20px 0}.connection-line{flex:1;height:3px;background:linear-gradient(90deg,transparent 0%,#007bff 50%,transparent 100%);position:relative}.connection-arrow-left,.connection-arrow-right{width:0;height:0;border-style:solid}.connection-arrow-left{border-width:8px 12px 8px 0;border-color:transparent #007bff transparent transparent;margin-right:-12px}.connection-arrow-right{border-width:8px 0 8px 12px;border-color:transparent transparent transparent #007bff;margin-left:-12px}.product-multi-select{display:flex;flex-direction:column;gap:15px}.product-item{display:flex;gap:10px;align-items:center;padding:15px;background:#f8f9fa;border-radius:8px;border:1px solid #dee2e6;flex-wrap:wrap}.product-details-display{width:100%;display:flex;gap:15px;padding:8px 10px;background:#fff;border-radius:4px;border:1px solid #e0e0e0;align-items:center}.product-code-info,.product-type-info{display:flex;align-items:center;gap:6px}.detail-label{font-size:12px;font-weight:600;color:#6c757d}.detail-value{font-size:13px;color:#2c3e50;font-weight:500}.type-badge{padding:3px 10px;border-radius:12px;font-size:12px;font-weight:700;color:#fff}.type-badge.domestic{background:linear-gradient(135deg,#28a745,#20c997);box-shadow:0 2px 4px #28a7454d}.type-badge.thai{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);box-shadow:0 2px 4px #ff6b6b4d}.product-code-display{width:100%;font-size:12px;color:#6c757d;font-weight:600;padding:5px 10px;background:#fff;border-radius:4px;border:1px solid #e0e0e0}.product-item select{flex:2;min-width:200px;padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;transition:border-color .3s ease}.product-item select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.product-item .input-with-unit{flex:1;min-width:120px;display:flex;align-items:center;gap:5px}.product-item .input-with-unit input{flex:1;min-width:80px;padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;transition:border-color .3s ease}.product-item .input-with-unit input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.product-item .unit{color:#6c757d;font-size:14px;font-weight:500;min-width:30px}.btn-remove{padding:8px 16px;border:none;background:#dc3545;color:#fff;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background .3s ease;white-space:nowrap;flex-shrink:0}.btn-add-product{padding:10px 20px;border:2px dashed #007bff;background:#fff;color:#007bff;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;width:100%}.btn-add-product:hover{background:#e7f3ff;border-color:#0056b3}@media(max-width:768px){.product-item{flex-direction:column;align-items:stretch}.product-item select,.product-item .input-with-unit{width:100%;min-width:100%}.btn-remove{width:100%}}.order-info-section{background:#fff9e6;border:2px solid #ffc107;margin-bottom:20px}.order-info-section .section-title{color:#f57c00;border-bottom-color:#ffc107}.order-info-display{display:flex;flex-direction:column;gap:15px}.order-info-item{display:flex;flex-direction:column;gap:5px}.order-info-label{font-weight:700;color:#f57c00;font-size:14px}.order-info-value{font-size:16px;color:#2c3e50;padding:8px 12px;background:#fff;border-radius:6px;border:1px solid #e0e0e0}.order-products-list{display:flex;flex-direction:column;gap:10px}.order-product-item{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background:#fff;border-radius:6px;border:1px solid #e0e0e0}.order-product-item .product-name{font-weight:600;color:#2c3e50;font-size:15px}.order-product-item .product-quantity{color:#007bff;font-weight:600;font-size:14px}@media(max-width:768px){.order-product-item{flex-direction:column;align-items:flex-start;gap:5px}}.bags-list{display:flex;flex-direction:column;gap:15px}.bag-item{display:flex;gap:10px;align-items:center;padding:15px;background:#f8f9fa;border-radius:8px;border:1px solid #dee2e6}.bag-item select{flex:2;min-width:200px;padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;transition:border-color .3s ease}.bag-item select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.bag-item input[type=text]{flex:2;min-width:150px;padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;transition:border-color .3s ease}.bag-item input[type=text]:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.bag-item .input-with-unit{flex:1;min-width:120px;display:flex;align-items:center;gap:5px}.bag-item .input-with-unit input{flex:1;min-width:80px;padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;transition:border-color .3s ease}.bag-item .input-with-unit input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.btn-add-bag{padding:10px 20px;border:2px dashed #28a745;background:#fff;color:#28a745;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;width:100%}.btn-add-bag:hover{background:#e7f8ed;border-color:#1e7e34}@media(max-width:768px){.bag-item{flex-direction:column;align-items:stretch}.bag-item select,.bag-item input[type=text],.bag-item .input-with-unit{width:100%;min-width:100%}.bag-item .btn-remove{width:100%}}.field-page-header{background:#fff;padding:15px 30px;box-shadow:0 2px 4px #00000014;display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;position:sticky;top:0;z-index:100}@media(max-width:768px){.field-page-header{flex-direction:column;gap:15px;align-items:flex-start}.field-page-header .header-controls{width:100%}}.client-info-display,.destination-info-display{margin-top:10px;padding:15px;background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border-radius:8px;border:2px solid #2196f3}.destination-info-display{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-color:#ff9800}.info-title{font-size:14px;font-weight:700;color:#1976d2;margin-bottom:10px;padding-bottom:8px;border-bottom:2px solid #2196f3}.destination-info-display .info-title{color:#f57c00;border-bottom-color:#ff9800}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.info-item{display:flex;flex-direction:column;gap:4px}.info-item.full-width{grid-column:1 / -1}.info-label{font-size:12px;font-weight:600;color:#555}.info-value{font-size:14px;color:#2c3e50;padding:6px 10px;background:#fff;border-radius:4px;border:1px solid #ddd}@media(max-width:768px){.info-grid{grid-template-columns:1fr}.info-item.full-width{grid-column:1}}.manufacturing-progress-view-page{width:100%;min-height:100vh;background:transparent}.step-wrapper{display:flex;flex-direction:column;align-items:center}.progress-info{padding:30px;display:flex;flex-direction:column;gap:20px}.info-section{background:#fff;border-radius:12px;padding:25px;box-shadow:0 2px 8px #00000014}.info-section h2{margin:0 0 20px;font-size:20px;color:#2c3e50;padding-bottom:10px;border-bottom:3px solid #007bff}.info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:15px}.info-item .label{font-weight:600;color:#6c757d;font-size:14px}.info-item .value{color:#2c3e50;font-size:16px}.products-table th,.products-table td{padding:12px;text-align:left;border-bottom:1px solid #e9ecef}.products-table th{background:#f8f9fa;font-weight:600;color:#495057;font-size:14px}.products-table td{color:#2c3e50;font-size:14px}.products-table tbody tr:hover{background:#f8f9fa}.error{text-align:center;padding:60px 20px;font-size:18px;color:#dc3545}@media(max-width:768px){.progress-info{padding:15px}.info-grid{grid-template-columns:1fr}.products-table{font-size:12px}.products-table th,.products-table td{padding:8px}}.field-page-header{background:#fff;padding:15px 30px;box-shadow:0 2px 4px #00000014;display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.field-page-header h2{margin:0;font-size:22px;color:#2c3e50;font-weight:600}.field-page-header .header-controls{display:flex;gap:10px}.order-record-list-page{padding:20px}.header-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.btn-ai-primary{padding:10px 16px;border:none;border-radius:4px;background:#235789;color:#fff;cursor:pointer;font-size:14px;font-weight:700}.btn-forecast-primary{padding:10px 16px;border:none;border-radius:4px;background:#b45309;color:#fff;cursor:pointer;font-size:14px;font-weight:700}.btn-forecast-primary:hover{background:#92400e}.btn-forecast-switch{border:none;border-radius:4px;background:#f59e0b;color:#422006;cursor:pointer;font-weight:700}.btn-forecast-switch:hover{background:#d97706;color:#fff}.filter-section{margin-bottom:20px;display:flex;align-items:center;gap:20px;padding:15px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;flex-wrap:wrap}.column-settings-section{margin-bottom:12px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.column-settings-panel{width:100%;padding:14px;background:#fff;border:1px solid #e5e5e5;border-radius:8px;box-shadow:0 2px 4px #00000014}.column-settings-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.column-settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px 12px}.column-settings-item{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:6px 8px;border:1px solid #ececec;border-radius:6px;background:#fafafa;font-size:14px;color:#333}.column-settings-toggle{min-width:0;flex:1 1 auto;display:flex;align-items:center;gap:7px;margin:0}.column-settings-toggle input{flex:0 0 auto;margin:0}.column-settings-toggle span{overflow-wrap:anywhere}.column-order-actions{flex:0 0 auto;display:flex;align-items:center;gap:4px}.column-order-button{width:28px;height:28px;padding:0;border:1px solid #d4d4d4;border-radius:4px;background:#fff;color:#333;font-size:14px;line-height:1;cursor:pointer}.column-order-button:hover:not(:disabled){border-color:#007bff;color:#007bff}.column-order-button:disabled{opacity:.35;cursor:not-allowed}.filter-group{display:flex;align-items:center;gap:10px}.filter-group label{font-weight:700;white-space:nowrap}.filter-group select,.filter-group input{padding:8px;border:1px solid #ddd;border-radius:4px;min-width:150px}.filter-text-group input,.filter-select-group select{min-width:190px}.filter-date-group input{min-width:150px}.product-filter-group select{min-width:260px}.shipment-filter-group{align-items:flex-start}.shipment-filter-group>label{padding-top:7px}.multi-status-filter{display:flex;max-width:640px;flex-wrap:wrap;gap:6px}.multi-status-option{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid #ddd;border-radius:4px;background:#fff;color:#333;font-size:13px;font-weight:700;white-space:nowrap}.multi-status-option.selected{border-color:#007bff;background:#eef6ff;color:#075ca8}.filter-group .multi-status-option input{width:14px;min-width:14px;height:14px;margin:0;padding:0}.filter-actions{display:flex;align-items:center;margin-left:auto}.order-list{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-x:auto;overflow-y:hidden}.order-table{width:100%;min-width:1120px;border-collapse:collapse}.product-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid #eee;background:#fff}.product-pagination-summary{font-size:14px;font-weight:600;color:#333}.product-pagination-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.product-page-current{min-width:72px;text-align:center;font-size:14px;font-weight:600;color:#555}.product-pagination button:disabled{opacity:.45;cursor:not-allowed}.order-table th,.order-table td{padding:12px;text-align:left;border-bottom:1px solid #eee;vertical-align:top}.order-table th{background:#f5f5f5;font-weight:700}.column-sort-button{width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;text-align:left;display:inline-flex;align-items:center;justify-content:space-between;gap:6px;cursor:pointer}.column-sort-button:hover{color:#007bff}.sort-indicator{flex:0 0 auto;color:#777;font-size:12px}.order-table tbody tr:hover{background:#f9f9f9}.order-table tbody tr.forecast-order-row{background:#fff7ed}.order-table tbody tr.forecast-order-row:hover{background:#ffedd5}.order-number-cell-content{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.order-type-badge,.order-type-pill{display:inline-block;border-radius:4px;font-weight:700;line-height:1.2}.order-type-badge{padding:4px 8px;font-size:12px}.order-type-pill{padding:2px 6px;font-size:11px}.order-type-confirmed{background:#e7f5ff;color:#0b5ed7}.order-type-forecast{background:#fed7aa;color:#9a3412}.product-quantity{display:block;color:#666;font-size:14px;margin-top:4px;margin-left:0}.order-notes-cell{min-width:180px;white-space:pre-wrap}.date-with-weekday{display:inline-flex;align-items:baseline;gap:4px;white-space:nowrap}.date-weekday{color:#666;font-size:.86em;font-weight:700}.shipment-status-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.shipment-detail-toggle,.shipment-detail-tablet-toggle{display:none}.shipment-detail-toggle{border:1px solid #d6dce5;border-radius:4px;background:#fff;color:#334155;padding:5px 8px;font-size:12px;font-weight:700;cursor:pointer}.shipment-meta{margin-top:6px;font-size:12px;color:#555;line-height:1.4;display:flex;flex-direction:column;gap:2px}.shipment-meta-row{display:flex;align-items:center;gap:8px;white-space:nowrap}.shipment-meta-label{min-width:44px;font-weight:600}.shipment-meta-date{min-width:84px}.shipment-meta-quantity{font-weight:600}.shipment-meta-row-shipped .shipment-meta-label{color:#6c5ce7}.shipment-meta-row-shortage .shipment-meta-label{color:#d9480f}.shipment-meta-row-cancelled .shipment-meta-label{color:#991b1b}.shipment-meta-row-sample .shipment-meta-label{color:#0369a1}.shipment-meta-row-pending .shipment-meta-label{color:#d63031}@media(max-width:1180px),(max-width:1366px)and (pointer:coarse){.shipment-detail-tablet-toggle{display:flex;justify-content:flex-end;margin:0 0 12px}.shipment-detail-toggle{display:inline-flex;margin-bottom:6px}.shipment-status-cell:not(.show-details) .shipment-meta{display:none}.shipment-status-cell.show-details .shipment-meta{display:flex}}.empty-state{padding:40px;text-align:center;color:#999}.empty-state p{margin-bottom:20px}.loading{padding:40px;text-align:center;color:#999}.btn-success{background:#28a745;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:700}.btn-success:hover{background:#218838}.btn-success.btn-sm{padding:6px 12px;font-size:14px}.product-trace-event-desc{color:#333;line-height:1.5;word-break:break-word}.order-record-form-page{padding:20px}.form-container{max-width:1200px;margin:0 auto}.forecast-order-notice{margin-bottom:20px;padding:12px 14px;border:1px solid #fed7aa;border-left:5px solid #f59e0b;border-radius:8px;background:#fff7ed;color:#9a3412;font-size:14px;font-weight:700}.ai-reader-panel{background:#fff;border:1px solid #cfe2ff;border-left:5px solid #235789;border-radius:8px;padding:18px;margin-bottom:20px;box-shadow:0 2px 4px #00000014}.ai-reader-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.ai-reader-header h2{margin:0;font-size:18px}.ai-reader-controls{display:flex;align-items:stretch;gap:12px;flex-wrap:wrap}.ai-drop-zone{flex:1 1 420px;min-height:96px;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:18px;border:2px dashed #8bb8e8;border-radius:8px;background:#fff;color:#235789;cursor:pointer;transition:border-color .15s ease,background .15s ease}.ai-drop-zone:hover,.ai-drop-zone.is-dragging{background:#f4f9ff;border-color:#235789}.ai-drop-zone.is-disabled{cursor:wait;opacity:.72}.ai-drop-zone input[type=file]{display:none}.ai-drop-title{font-size:15px;font-weight:700}.ai-drop-subtitle{font-size:12px;color:#5f7489}.btn-ai-primary,.btn-ai-secondary{padding:10px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:700}.btn-ai-primary{background:#235789;color:#fff}.btn-ai-primary:hover{background:#1b466e}.btn-ai-primary:disabled{background:#8aa8c3;cursor:not-allowed}.btn-ai-secondary{background:#e7f3ff;color:#235789}.btn-ai-secondary:hover{background:#d4eaff}.ai-reader-message{margin-top:12px;padding:10px 12px;border-radius:6px;font-size:13px;font-weight:600}.ai-reader-message.success{background:#eaf7ef;color:#146c2e;border:1px solid #b7e1c1}.ai-reader-message.warning{background:#fff8e1;color:#7a5a00;border:1px solid #ffd966}.ai-reader-message.error{background:#fff5f5;color:#b02a37;border:1px solid #f1b0b7}.order-pdf-controls{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:12px}.order-pdf-upload{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;flex:1 1 420px;min-height:96px;padding:16px;border:2px dashed #007bff;border-radius:6px;background:#f8fbff;color:#0056b3;font-size:14px;font-weight:700;cursor:pointer;transition:border-color .15s ease,background .15s ease}.order-pdf-upload:hover,.order-pdf-upload.is-dragging{background:#eef6ff;border-color:#0056b3}.order-pdf-upload input[type=file]{display:none}.order-pdf-upload-title{font-size:15px;font-weight:700}.order-pdf-upload-subtitle{font-size:12px;color:#5f7489}.order-pdf-message{margin-bottom:12px;padding:10px 12px;border-radius:6px;font-size:13px;font-weight:700}.order-pdf-message.error{background:#fff5f5;color:#b02a37;border:1px solid #f1b0b7}.order-pdf-message.warning{background:#fff8e1;color:#7a5a00;border:1px solid #ffd966}.order-pdf-preview{border:1px solid #e5e7eb;border-radius:6px;overflow:hidden;background:#f8f9fa}.order-pdf-preview-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid #e5e7eb;background:#fff;font-size:14px;font-weight:700}.order-pdf-preview-header a{color:#0056b3;font-weight:700;white-space:nowrap}.order-pdf-preview iframe{width:100%;height:520px;border:0;background:#fff}.order-pdf-empty{padding:16px;border:1px dashed #d1d5db;border-radius:6px;color:#6b7280;background:#f9fafb;font-size:14px}.products-list{display:flex;flex-direction:column;gap:10px}.product-item{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid #e5e7eb;border-radius:6px;background:#fafafa}.product-fields-grid{display:flex;flex-direction:column;gap:10px}.product-fields-row{display:grid;gap:10px;align-items:end}.product-schedule-row{grid-template-columns:minmax(140px,1fr) minmax(130px,1fr) minmax(140px,1fr)}.product-main-row{grid-template-columns:minmax(260px,2fr) minmax(130px,1fr) minmax(110px,.8fr) minmax(95px,.7fr) auto}.product-packaging-row{grid-template-columns:minmax(260px,2fr) minmax(110px,.8fr) minmax(110px,.8fr)}.product-field{display:flex;flex-direction:column;gap:4px;min-width:0}.product-field span{font-size:12px;font-weight:700;color:#555}.product-field select,.product-field input{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px}.product-field em{font-size:12px;color:#666;font-style:normal}.product-arrival-field{display:flex;flex-direction:column;gap:4px}.product-remove-button{align-self:end;min-height:36px}.ai-read-product{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 10px;background:#eef6ff;border:1px solid #cfe2ff;border-radius:6px;color:#235789;font-size:13px}.ai-read-label{padding:2px 6px;background:#235789;color:#fff;border-radius:4px;font-size:12px;font-weight:700}.ai-read-candidate{color:#5f7489}@media(max-width:1100px){.product-schedule-row,.product-main-row,.product-packaging-row{grid-template-columns:repeat(2,minmax(0,1fr))}.product-remove-button{justify-self:start}}.btn-add,.btn-remove{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-add{background:#28a745;color:#fff;align-self:flex-start}.btn-add:hover{background:#218838}.btn-add:disabled{background:#9aa3a8;cursor:not-allowed}.btn-remove{background:#dc3545;color:#fff}.btn-remove.product-remove-button{font-size:12px}.product-select-hint{padding:10px 12px;background:#f8fbff;border:1px solid #cfe2ff;border-radius:6px;color:#355f8a;font-size:13px;font-weight:600}.readonly-field{background-color:#f5f5f5!important;cursor:not-allowed!important;color:#666!important}.error-field{border-color:#dc3545!important}.error-field:focus{border-color:#dc3545!important;box-shadow:0 0 0 .2rem #dc354540}.field-error{color:#dc3545;font-size:12px;margin-top:4px;display:block}.field-hint{color:#666;font-size:12px;margin-top:4px;display:block}.field-hint.checking{color:#007bff}.btn-primary:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.65}.order-record-detail-page{padding:20px}.info-item .label{font-weight:700;color:#666;min-width:140px}.status-badge.status-in_production{background:#74b9ff;color:#0984e3}.status-badge.status-completed{background:#55efc4;color:#00b894}.status-badge.status-forecast{background:#fed7aa;color:#9a3412}.status-badge.status-confirmed{background:#e7f5ff;color:#0b5ed7}.shipment-status-badges{display:flex;flex-wrap:wrap;gap:6px}.products-table th,.products-table td{padding:12px;text-align:left;border-bottom:1px solid #eee}.shipment-detail-list{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#555;line-height:1.4}.shipment-detail-item{display:flex;align-items:center;gap:8px;white-space:nowrap}.shipment-detail-label{min-width:44px;font-weight:600}.shipment-detail-date{min-width:84px}.shipment-detail-quantity{font-weight:600}.shipment-detail-item-shipped .shipment-detail-label{color:#6c5ce7}.shipment-detail-item-shortage .shipment-detail-label{color:#d9480f}.shipment-detail-item-cancelled .shipment-detail-label{color:#991b1b}.shipment-detail-item-sample .shipment-detail-label{color:#0369a1}.shipment-detail-item-pending .shipment-detail-label{color:#d63031}.shipment-record-list-page{padding:20px}.shipment-record-list-page.embedded{padding:0}.tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid #ddd}.shipment-filter-section{margin-bottom:20px;display:flex;align-items:center;gap:20px;padding:15px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;flex-wrap:wrap}.shipment-column-settings-section{margin-bottom:12px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.shipment-column-settings-panel{width:100%;padding:14px;background:#fff;border:1px solid #e5e5e5;border-radius:8px;box-shadow:0 2px 4px #00000014}.shipment-column-settings-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.shipment-column-settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px 12px}.shipment-column-settings-item{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:6px 8px;border:1px solid #ececec;border-radius:6px;background:#fafafa;font-size:14px;color:#333}.shipment-column-settings-toggle{min-width:0;flex:1 1 auto;display:flex;align-items:center;gap:7px;margin:0}.shipment-column-settings-toggle input{flex:0 0 auto;margin:0}.shipment-column-settings-toggle span{overflow-wrap:anywhere}.shipment-column-order-actions{flex:0 0 auto;display:flex;align-items:center;gap:4px}.shipment-column-order-button{width:28px;height:28px;padding:0;border:1px solid #d4d4d4;border-radius:4px;background:#fff;color:#333;font-size:14px;line-height:1;cursor:pointer}.shipment-column-order-button:hover:not(:disabled){border-color:#007bff;color:#007bff}.shipment-column-order-button:disabled{opacity:.35;cursor:not-allowed}.shipment-filter-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.shipment-filter-group label{font-weight:700;white-space:nowrap}.shipment-filter-group select{padding:8px;border:1px solid #ddd;border-radius:4px;min-width:260px}.shipment-column-filter-section{margin-bottom:18px;padding:14px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;box-shadow:0 2px 4px #00000014}.shipment-column-filter-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.shipment-column-filter-header strong{color:#334155;font-size:14px}.shipment-column-filter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.shipment-column-filter-item{display:flex;flex-direction:column;gap:5px;margin:0;color:#334155;font-size:12px;font-weight:700}.shipment-column-filter-item input,.shipment-column-filter-item select{min-height:34px;padding:7px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:13px;background:#fff}.tab{padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:16px;font-weight:500;color:#666;transition:all .2s}.tab:hover{color:#007bff}.tab.active{color:#007bff;border-bottom-color:#007bff}.content{margin-top:20px;overflow-x:auto}.orders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.order-card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.order-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #f0f0f0}.order-header h3{margin:0;font-size:18px;color:#333}.order-info{margin-bottom:15px}.info-row{display:flex;justify-content:space-between;margin-bottom:8px}.info-row .label{font-weight:700;color:#666}.info-row .value{color:#333}.products-info{margin-top:15px;padding-top:15px;border-top:1px solid #eee}.products-info .label{font-weight:700;color:#666;display:block;margin-bottom:8px}.products-list{display:flex;flex-direction:column;gap:6px}.product-item{font-size:14px;color:#333;padding:6px 10px;background:#f9f9f9;border-radius:4px}.order-actions{display:flex;justify-content:flex-end;margin-top:15px}.shipments-table{width:100%;min-width:1120px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;border-collapse:collapse;overflow:hidden}.shipment-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid #eee;background:#fff;box-shadow:0 2px 4px #00000014;border-radius:8px 8px 0 0}.shipment-pagination-summary{font-size:14px;font-weight:600;color:#333}.shipment-pagination-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.shipment-page-current{min-width:72px;text-align:center;font-size:14px;font-weight:600;color:#555}.shipment-pagination button:disabled{opacity:.45;cursor:not-allowed}.shipments-table th,.shipments-table td{padding:12px;text-align:left;border-bottom:1px solid #eee}.shipments-table th{background:#f5f5f5;font-weight:700;color:#333}.shipment-column-sort-button{width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;text-align:left;display:inline-flex;align-items:center;justify-content:space-between;gap:6px;cursor:pointer}.shipment-column-sort-button:hover{color:#007bff}.shipment-sort-indicator{flex:0 0 auto;color:#777;font-size:12px}.shipments-table tbody tr:hover{background:#f9f9f9}.product-name-cell{font-weight:400}.product-name-cell strong{color:#007bff;font-size:15px}.shipment-subtext{margin-top:4px;font-size:12px;color:#666}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:700}.shipment-record-list-page .btn-warning{background:#f59f00;color:#fff}.shipment-record-list-page .btn-info{background:#0ea5e9;color:#fff}.shipment-record-list-page .btn-fax{background:#0f766e;color:#fff}.shipment-record-list-page .btn-fax:hover:not(:disabled){background:#115e59}.shipment-record-list-page .btn-fax:disabled{opacity:.65;cursor:not-allowed}.shipment-fax-preview-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:18px;background:#0f172a94}.shipment-fax-preview-modal{display:flex;width:min(980px,100%);height:min(92vh,900px);min-height:560px;flex-direction:column;overflow:hidden;border-radius:8px;background:#fff;box-shadow:0 24px 60px #0f172a47}.shipment-fax-preview-header,.shipment-fax-preview-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid #e5e7eb}.shipment-fax-preview-header h2{margin:0;color:#111827;font-size:18px}.shipment-fax-preview-header p{margin:4px 0 0;color:#475569;font-size:13px;font-weight:700}.shipment-fax-preview-close{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#334155;font-size:22px;line-height:1;cursor:pointer}.shipment-fax-preview-controls{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px 16px;border-bottom:1px solid #e5e7eb;background:#f8fafc}.shipment-fax-block-selector{display:inline-flex;gap:4px;padding:3px;border:1px solid #cbd5e1;border-radius:6px;background:#fff}.shipment-fax-block-selector button{border:0;border-radius:4px;background:transparent;color:#334155;cursor:pointer;font-size:12px;font-weight:700;padding:6px 9px;white-space:nowrap}.shipment-fax-block-selector button.active{background:#0f766e;color:#fff}.shipment-fax-position-pad{display:flex;width:86px;flex-direction:column;align-items:center;gap:3px}.shipment-fax-position-pad>div{display:flex;gap:24px}.shipment-fax-nudge-button{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#1f2937;font-size:14px;font-weight:700;cursor:pointer}.shipment-fax-nudge-button:hover:not(:disabled){background:#e0f2fe}.shipment-fax-control-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:center}.shipment-fax-control-field{display:grid;grid-template-columns:minmax(82px,auto) minmax(80px,1fr) 64px;gap:8px;align-items:center;color:#334155;font-size:12px;font-weight:700}.shipment-fax-control-field input[type=range]{width:100%}.shipment-fax-control-field input[type=number]{width:64px;height:30px;border:1px solid #cbd5e1;border-radius:6px;padding:4px 6px;color:#111827;font-size:13px}.shipment-fax-control-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end}.shipment-fax-layout-editor{flex:1 1 auto;min-height:0;overflow:auto;padding:14px 16px;border-bottom:1px solid #e5e7eb;background:#e2e8f0}.shipment-fax-pdf-editor-page{position:relative;display:block;width:fit-content;margin:0 auto;overflow:hidden;border:1px solid #cbd5e1;background:#fff;box-shadow:0 6px 18px #0f172a24}.shipment-fax-pdf-canvas{display:block;max-width:min(100%,820px);height:auto}.shipment-fax-pdf-rendering{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;justify-content:center;background:#ffffffb8;color:#334155;font-size:13px;font-weight:700}.shipment-fax-notice-draggable{position:absolute;z-index:2;display:inline-block;width:max-content;min-width:max-content;max-width:none;padding:7px 28px 7px 9px;border:1px dashed #0f766e;border-radius:6px;background:#ffffffd1;box-shadow:0 8px 24px #0f172a29;color:#111827;cursor:grab;font-weight:700;line-height:1.48;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;white-space:pre}.shipment-fax-notice-draggable.active{border-style:solid;border-width:2px}.shipment-fax-notice-company{display:flex;flex-direction:column;white-space:nowrap}.shipment-fax-company-name-line{display:flex;align-items:baseline;line-height:1.12;white-space:nowrap}.shipment-fax-company-prefix{font-size:1.5em;line-height:1.12}.shipment-fax-company-name{font-size:2em;line-height:1.12}.shipment-fax-company-detail{display:block;line-height:1.55}.shipment-fax-notice-draggable.dragging,.shipment-fax-notice-draggable.resizing{border-color:#0ea5e9;background:#ffffffeb;cursor:grabbing}.shipment-fax-notice-draggable.applied{border-color:#ef4444;background:#ffffffbd;box-shadow:0 0 0 2px #ef444433}.shipment-fax-notice-draggable.applied span{color:#991b1b;opacity:1;text-shadow:0 1px 0 #ffffff,1px 0 0 #ffffff,0 -1px 0 #ffffff,-1px 0 0 #ffffff}.shipment-fax-notice-resize-handle{position:absolute;right:5px;bottom:5px;width:16px;height:16px;border:1px solid #0f766e;border-radius:4px;background:linear-gradient(135deg,transparent 48%,#0f766e 50%,transparent 52%),linear-gradient(135deg,transparent 62%,#0f766e 64%,transparent 66%),#fff;cursor:nwse-resize;touch-action:none}.shipment-fax-preview-footer{justify-content:flex-end;border-top:1px solid #e5e7eb;border-bottom:0}.status-badge.status-pending{background:#ffeaa7;color:#d63031}.status-badge.status-shipped{background:#a29bfe;color:#6c5ce7}.status-badge.status-shortage{background:#ffe8cc;color:#d9480f}.status-badge.status-cancelled{background:#fee2e2;color:#991b1b}.status-badge.status-sample{background:#e0f2fe;color:#0369a1}@media(max-width:900px){.shipment-fax-preview-controls{grid-template-columns:1fr;align-items:stretch}.shipment-fax-block-selector{justify-content:center}.shipment-fax-position-pad{width:100%}.shipment-fax-control-fields{grid-template-columns:1fr}.shipment-fax-control-actions{justify-content:flex-start}.shipment-fax-layout-editor{padding:10px}}.shipment-quantity-cell{display:flex;flex-direction:column;gap:2px;min-width:90px}.shipment-quantity-cell small{color:#64748b;font-size:11px;line-height:1.25;white-space:normal}.product-quantity{color:#666;font-size:14px;margin-left:8px}.btn-sm{padding:6px 12px;font-size:14px;margin-right:5px}.empty-state{padding:60px 20px;text-align:center;color:#999;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.empty-state p{margin:0;font-size:16px}.production-batch-list-page{padding:20px}.field-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.field-page-header h2{margin:0;font-size:20px}.production-main-tabs{display:flex;align-items:center;gap:8px;margin-bottom:18px;border-bottom:2px solid #ddd}.production-main-tabs button{min-width:112px;padding:12px 22px;border:0;border-bottom:3px solid transparent;background:transparent;color:#555;cursor:pointer;font-size:16px;font-weight:700}.production-main-tabs button:hover{color:#1268b3}.production-main-tabs button.active{color:#1268b3;border-bottom-color:#1268b3}.manufacturing-tab{display:flex;flex-direction:column;gap:16px}.production-batch-excel-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 4px #0000000f}.production-batch-excel-actions>div:first-child{display:flex;flex-direction:column;gap:3px}.production-batch-excel-actions strong{color:#1f2937;font-size:14px}.production-batch-excel-actions span{color:#64748b;font-size:12px}.production-batch-excel-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.production-batch-excel-message{padding:10px 12px;color:#166534;background:#dcfce7;border:1px solid #bbf7d0;border-radius:8px;font-size:13px;font-weight:700}.production-batch-list-page .btn-primary,.production-batch-list-page .btn-secondary,.quick-add-modal .btn-primary,.quick-add-modal .btn-secondary{padding:9px 14px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:800;line-height:1.2}.production-batch-list-page .btn-sm,.quick-add-modal .btn-sm{padding:6px 10px;font-size:12px}.production-batch-list-page .btn-primary,.quick-add-modal .btn-primary{border:1px solid #1268b3;background:#1268b3;color:#fff}.production-batch-list-page .btn-primary:hover,.quick-add-modal .btn-primary:hover{background:#0f5795}.production-batch-list-page .btn-secondary,.quick-add-modal .btn-secondary{border:1px solid #cbd5e1;background:#fff;color:#334155}.production-batch-list-page .btn-secondary:hover,.quick-add-modal .btn-secondary:hover{background:#f8fafc}.production-batch-list-page .btn-primary:disabled,.production-batch-list-page .btn-secondary:disabled,.quick-add-modal .btn-primary:disabled,.quick-add-modal .btn-secondary:disabled{cursor:not-allowed;opacity:.55}.quick-add-modal .btn-add-bag,.quick-add-modal .btn-remove{width:auto;padding:8px 12px;border:0;border-radius:6px;cursor:pointer;font-size:13px;font-weight:800}.quick-add-modal .btn-add-bag{align-self:flex-start;background:#16a34a;color:#fff}.quick-add-modal .btn-add-bag:hover{background:#15803d}.quick-add-modal .btn-remove{background:#fee2e2;color:#991b1b}.quick-add-modal .btn-remove:hover{background:#fecaca}.kanban-filter-bar{display:flex;align-items:center;gap:16px;padding:14px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 4px #0000000f;flex-wrap:wrap}.kanban-filter-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.kanban-filter-label{color:#333;font-size:14px;font-weight:700;white-space:nowrap}.kanban-filter-group input[type=date]{min-width:170px;padding:8px 10px;border:1px solid #ccd4dd;border-radius:6px;background:#fff;color:#222}.kanban-segmented-control{display:inline-flex;padding:3px;background:#edf1f5;border-radius:8px}.kanban-segmented-control button{min-width:76px;padding:7px 12px;border:0;border-radius:6px;background:transparent;color:#475569;cursor:pointer;font-weight:700}.kanban-segmented-control button.active{background:#fff;color:#1268b3;box-shadow:0 1px 3px #0f172a2e}.kanban-filter-summary{margin-left:auto;padding:7px 12px;border-radius:999px;background:#f4f6f8;color:#333;font-size:14px;font-weight:700;white-space:nowrap}.kanban-hidden-toggle.active{border-color:#1268b3;background:#e0f2fe;color:#075985}.kanban-board{display:flex;flex-direction:column;gap:14px;padding:4px 4px 12px;overflow:visible}.kanban-column{display:flex;flex-direction:column;background:#f7f8fa;border:1px solid #e2e8f0;border-radius:8px}.kanban-column.with-lanes{min-width:0}.kanban-column-completed{border-color:#bbf7d0;background:#f0fdf4}.kanban-column-completed .kanban-column-header{border-bottom-color:#bbf7d0}.kanban-column-completed .kanban-column-header h2{color:#166534}.kanban-column-completed .kanban-column-header span{background:#dcfce7;color:#166534}.kanban-column-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 12px 10px;border-bottom:1px solid #dde5ef}.kanban-column-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}.kanban-column-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-shrink:0;flex-wrap:wrap}.kanban-column-header h2{margin:0;color:#1f2937;font-size:16px;line-height:1.3}.kanban-column-header span{display:inline-flex;min-width:32px;height:28px;align-items:center;justify-content:center;padding:0 8px;border-radius:999px;background:#e6eef7;color:#1268b3;font-size:13px;font-weight:800}.kanban-process-summary,.kanban-mochi-summary,.kanban-storage-summary,.kanban-inventory-total-summary{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.kanban-column-header .kanban-process-summary span,.kanban-column-header .kanban-mochi-summary span,.kanban-column-header .kanban-inventory-total-summary span{display:inline-flex;min-width:0;height:auto;min-height:26px;align-items:center;justify-content:flex-start;gap:5px;padding:4px 8px;border:1px solid #d8e6f5;border-radius:6px;background:#fff;color:#475569;font-size:12px;font-weight:700;line-height:1.25}.kanban-column-header .kanban-mochi-summary span{border-color:#d8f0df;background:#f7fffa;align-items:flex-start;flex-direction:column}.kanban-column-header .kanban-mochi-summary small{color:#64748b;font-size:11px;font-weight:700;line-height:1.2}.kanban-column-header .kanban-inventory-total-summary span{border-color:#fde68a;background:#fffbeb}.kanban-process-summary strong,.kanban-mochi-summary strong,.kanban-inventory-total-summary strong{color:#0f4c81;font-weight:900;white-space:nowrap}.kanban-column-header .kanban-process-summary span.negative{border-color:#fecaca;background:#fff5f5;color:#991b1b}.kanban-process-summary span.negative strong{color:#991b1b}.kanban-storage-summary{position:relative}.kanban-storage-summary button{display:inline-flex;min-height:28px;align-items:center;gap:6px;padding:5px 9px;border:1px solid #9cc7a6;border-radius:6px;background:#f0fff4;color:#166534;cursor:pointer;font-size:12px;font-weight:800;line-height:1.2}.kanban-storage-summary button:hover{background:#dcfce7}.kanban-storage-summary button strong{color:#0f6b47;font-weight:900}.kanban-storage-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:20;width:min(680px,88vw);padding:10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;box-shadow:0 12px 30px #0f172a2e}.kanban-column-actions .kanban-storage-popover{right:0;left:auto}.kanban-storage-popover-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;color:#334155;font-size:12px}.kanban-storage-list{display:flex;flex-direction:column;gap:7px;max-height:420px;overflow:auto}.kanban-storage-row{display:flex;flex-direction:column;gap:10px;padding:8px;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc}.kanban-storage-row-main{display:flex;flex-wrap:wrap;gap:6px;min-width:0;color:#475569;font-size:12px;line-height:1.35}.kanban-storage-row strong{color:#0f4c81;font-weight:900}.kanban-storage-row b{color:#166534;font-size:12px;white-space:nowrap}.kanban-storage-temperature-history{display:flex;flex-wrap:wrap;gap:6px;color:#475569;font-size:12px}.kanban-storage-temperature-history span,.kanban-storage-temperature-history small{padding:3px 6px;border-radius:999px;background:#fff;border:1px solid #e2e8f0}.kanban-storage-temperature-history span.warning{border-color:#fed7aa;background:#fff7ed;color:#c2410c;font-weight:900}.kanban-storage-temperature-history span.ok{border-color:#bbf7d0;background:#f0fdf4;color:#15803d;font-weight:900}.kanban-storage-temperature-form{display:grid;grid-template-columns:minmax(150px,1fr) minmax(100px,130px) auto;gap:8px;align-items:center}.kanban-storage-temperature-form input{width:100%;min-height:34px;border:1px solid #cbd5e1;border-radius:6px;padding:6px 8px;font-size:12px}.kanban-storage-temperature-form .input-with-unit{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.kanban-storage-temperature-form button{min-height:34px}.kanban-storage-temperature-error{color:#b91c1c;font-size:12px;font-weight:800}.kanban-storage-history-actions{display:flex;align-items:center;gap:8px;margin-top:8px}.kanban-storage-history-actions button{min-height:30px;padding:5px 10px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#334155;cursor:pointer;font-size:12px;font-weight:800}.kanban-storage-history-actions button:disabled{cursor:not-allowed;opacity:.6}.kanban-storage-history-actions span{color:#64748b;font-size:12px;font-weight:800}.kanban-storage-history-list{display:grid;gap:6px;max-height:220px;margin-top:8px;padding:8px;overflow:auto;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc}.kanban-storage-history-list>small{color:#64748b;font-size:12px;font-weight:800}.kanban-storage-history-item{display:grid;grid-template-columns:minmax(120px,1fr) auto auto;gap:8px;align-items:center;min-height:30px;padding:5px 7px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#475569;font-size:12px}.kanban-storage-history-item strong{color:#0f4c81;font-weight:900}.kanban-storage-history-item b{color:#166534;white-space:nowrap}.kanban-storage-history-item span{color:#64748b;white-space:nowrap}.kanban-storage-daily-checks{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.kanban-storage-daily-checks span,.kanban-storage-daily-checks small{display:inline-flex;align-items:center;gap:6px;padding:4px 7px;border:1px solid #bbf7d0;border-radius:999px;background:#f0fdf4;color:#166534;font-size:12px;font-weight:800}.kanban-storage-daily-checks b{color:#0f6b47}.kanban-step-add{flex-shrink:0;padding:7px 10px;border:1px solid #9cc7a6;border-radius:6px;background:#f0fff4;color:#166534;cursor:pointer;font-size:12px;font-weight:800;white-space:nowrap}.kanban-step-add:hover{border-color:#62a36f;background:#dcfce7}.kanban-step-add.small{padding:5px 8px;font-size:11px}.kanban-column-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,240px);gap:10px;padding:10px}.kanban-column-body{display:grid;flex:1;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;padding:0;overflow:visible}.kanban-column.with-lanes .kanban-column-body{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start}.kanban-column.kanban-column-season .kanban-column-body{grid-template-columns:1fr}.kanban-origin-group{display:flex;flex-direction:column;gap:10px;padding:10px;border:1px solid #d8e2ee;border-radius:8px;background:#fff}.kanban-origin-group-domestic{border-color:#bfdbfe;background:#f8fbff}.kanban-origin-group-thai{border-color:#bbf7d0;background:#f6fef9}.kanban-origin-group-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid rgba(148,163,184,.35)}.kanban-origin-group-header h3{margin:0;color:#1f2937;font-size:15px;line-height:1.3}.kanban-origin-group-header span,.kanban-origin-line-header span{min-width:26px;padding:2px 7px;border-radius:999px;background:#e6eef7;color:#1268b3;font-size:11px;font-weight:800;text-align:center}.kanban-origin-lines{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px}.kanban-origin-group-thai .kanban-origin-lines{grid-template-columns:repeat(4,minmax(0,1fr))}.kanban-origin-line-thai-shared-before{grid-column:1 / -1}.kanban-origin-line-thai-shared-after{grid-column:2 / 4}.kanban-origin-line-thai-ebi,.kanban-origin-line-thai-curry{grid-row:span 2}.kanban-origin-line-thai-shared-before .kanban-origin-line-body{grid-template-columns:repeat(2,minmax(0,1fr))}.kanban-origin-line-thai-shared-after .kanban-origin-line-body{grid-template-columns:minmax(220px,1fr)}.kanban-origin-line-thai-ebi .kanban-origin-line-body,.kanban-origin-line-thai-curry .kanban-origin-line-body,.kanban-origin-line-thai-ebi .kanban-lane,.kanban-origin-line-thai-curry .kanban-lane,.kanban-origin-line-thai-ebi .kanban-lane-body,.kanban-origin-line-thai-curry .kanban-lane-body{flex:1}.kanban-origin-line{display:flex;flex-direction:column;gap:8px;min-width:0}.kanban-origin-line-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;border:1px solid #e2e8f0;border-radius:6px;background:#fffc}.kanban-origin-line-header strong{color:#475569;font-size:12px;line-height:1.35}.kanban-origin-line-body{display:grid;grid-template-columns:1fr;gap:8px}.kanban-lane{display:flex;flex-direction:column;gap:8px;padding:8px;background:#fff;border:1px solid #dbe5ef;border-radius:8px}.kanban-lane-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:6px;border-bottom:1px solid #edf2f7}.kanban-lane-header>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.kanban-lane-header strong{color:#334155;font-size:12px;line-height:1.35}.kanban-lane-header span{min-width:24px;padding:2px 7px;border-radius:999px;background:#eef6ff;color:#1268b3;font-size:11px;font-weight:800;text-align:center}.kanban-process-badges{display:inline-flex;align-items:center;flex-wrap:wrap;gap:5px}.kanban-lane-header .kanban-process-badges .kanban-process-badge{display:inline-flex;width:auto;min-width:0;height:auto;align-items:center;justify-content:space-between;gap:8px;padding:3px 6px;border:1px solid #fde68a;border-radius:5px;background:#fffbeb;color:#475569;font-size:10px;line-height:1.25;text-align:left}.kanban-process-badge-name{min-width:0;color:#475569;font-weight:800;overflow-wrap:anywhere}.kanban-process-badge-total{display:inline-flex;flex-shrink:0;align-items:center;gap:4px;color:#92400e;font-size:10px;font-weight:800;white-space:nowrap}.kanban-process-badges strong{color:#92400e;font-weight:900;white-space:nowrap}.kanban-lane-inventory{display:flex;flex-wrap:wrap;gap:5px}.kanban-lane-inventory span{max-width:100%;padding:3px 6px;border:1px solid #dbe5ef;border-radius:4px;background:#f8fafc;color:#475569;font-size:11px;line-height:1.35;white-space:normal;overflow-wrap:anywhere}.kanban-lane-body{display:grid;grid-template-columns:1fr;gap:8px}.kanban-column-inventory{align-self:stretch;padding:10px;border:1px solid #dbe5ef;border-radius:8px;background:#fff}.kanban-inventory-toggle{display:flex;width:100%;align-items:center;gap:7px;padding:0;border:0;background:transparent;color:#334155;cursor:pointer;font-size:13px;font-weight:900;text-align:left}.kanban-inventory-toggle strong{margin-left:auto;color:#0f4c81;font-size:12px;white-space:nowrap}.kanban-inventory-arrow{display:inline-block;color:#64748b;font-size:10px;transition:transform .2s ease}.kanban-inventory-arrow.open{transform:rotate(90deg)}.kanban-inventory-list{display:flex;flex-direction:column;gap:6px;margin-top:10px}.kanban-inventory-section{display:flex;flex-direction:column;gap:6px}.kanban-inventory-section-toggle{display:flex;width:100%;align-items:center;gap:6px;margin:0;padding:2px 0;border:0;background:transparent;color:#64748b;cursor:pointer;font-size:12px;font-weight:900;line-height:1.4;text-align:left}.kanban-inventory-section-toggle strong{margin-left:auto;color:#0f4c81;font-size:11px;white-space:nowrap}.kanban-inventory-chip{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start;padding:6px 7px;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;color:#334155;font-size:11px;line-height:1.35}.kanban-inventory-chip span{display:flex;flex-direction:column;gap:3px;min-width:0;overflow:visible;overflow-wrap:anywhere;white-space:normal}.kanban-inventory-chip small{color:#64748b;font-size:10px;font-weight:800}.kanban-inventory-chip strong{color:#0f4c81;font-weight:800;white-space:nowrap}.kanban-inventory-empty,.kanban-inventory-more{color:#64748b;font-size:12px;line-height:1.5}.kanban-inventory-more{margin-top:7px;font-weight:700}.kanban-column-empty{padding:14px 10px;color:#7a8491;font-size:13px;line-height:1.5;text-align:center}.kanban-column-empty.compact{padding:12px 8px;border:1px dashed #d7dee8;border-radius:6px;background:#ffffffa6;font-size:12px}.kanban-batch-card{width:100%;padding:0;border:1px solid #e1e6ec;border-radius:8px;background:#fff;box-shadow:0 1px 3px #0f172a14;color:inherit;text-align:left;transition:border-color .15s,box-shadow .15s,transform .15s;overflow:hidden}.kanban-batch-card:hover,.kanban-batch-card:focus-within{border-color:#9bbde1;box-shadow:0 4px 10px #0f172a21;transform:translateY(-1px)}.kanban-card-main{width:100%;padding:12px;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.kanban-card-main.static{cursor:default}.kanban-card-delete{width:calc(100% - 24px);margin:0 12px 12px;padding:7px 10px;border:1px solid #f3b3b3;border-radius:6px;background:#fff5f5;color:#b42318;cursor:pointer;font-size:12px;font-weight:800}.kanban-card-delete:hover{border-color:#e06b6b;background:#ffe7e7}.kanban-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.kanban-card-header strong{color:#1f2937;font-size:14px;line-height:1.35;word-break:break-word}.kanban-card-date{margin-top:9px;color:#4b5563;font-size:13px}.kanban-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:10px}.kanban-origin-badge,.kanban-card-quantity,.kanban-status-badge{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;font-size:12px;font-weight:800;line-height:1.2;white-space:nowrap}.kanban-card-quantity{border:1px solid #dbeafe;background:#f8fbff;color:#1e3a8a;white-space:normal}.kanban-card-quantity-group{display:flex;flex-direction:column;gap:4px;width:100%}.kanban-card-product-quantity{width:100%;justify-content:space-between;gap:8px;border-radius:6px;line-height:1.35}.kanban-card-product-quantity span{min-width:0;overflow-wrap:anywhere}.kanban-card-product-quantity strong{flex-shrink:0;color:#1e40af;font-weight:900;white-space:nowrap}.kanban-card-remaining-quantity{display:inline-flex;width:fit-content;max-width:100%;min-height:24px;align-items:center;padding:3px 8px;border:1px solid #fed7aa;border-radius:6px;background:#fff7ed;color:#c2410c;font-size:12px;font-weight:900;line-height:1.2;overflow-wrap:anywhere}.kanban-card-quantity.usage-line{width:100%;justify-content:flex-start;border-radius:6px;line-height:1.35}.kanban-card-audit{display:flex;flex-wrap:wrap;gap:6px;width:100%;color:#64748b;font-size:11px;font-weight:800;line-height:1.35}.kanban-card-audit span{min-width:0;padding:2px 0;overflow-wrap:anywhere}.kanban-origin-badge.origin-domestic{background:#e7f0ff;color:#1454a6}.kanban-origin-badge.origin-thai{background:#e4f7ec;color:#137047}.kanban-origin-badge.origin-mixed{background:#f1e8ff;color:#6b21a8}.kanban-origin-badge.origin-unset{background:#edf0f3;color:#64748b}.kanban-status-badge.status-in_progress{background:#fff4d8;color:#8a5a00}.kanban-status-badge.status-completed{background:#e1f6ed;color:#0f6b47}.kanban-status-badge.status-unknown{background:#edf0f3;color:#64748b}.kanban-message{padding:24px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 4px #0000000f}.kanban-message p{margin:0 0 12px}.kanban-message.error{border-color:#f3c5c5;color:#9f1d1d}.quick-add-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a80}.quick-add-modal{width:min(1120px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;overflow:hidden;border-radius:8px;background:#fff;box-shadow:0 24px 64px #0f172a47}.quick-add-header,.quick-add-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid #e5e7eb}.quick-add-header h2{margin:0 0 5px;color:#1f2937;font-size:20px;line-height:1.3}.quick-add-header p{margin:0;color:#64748b;font-size:13px}.quick-add-close{width:34px;height:34px;border:0;border-radius:6px;background:#f1f5f9;color:#475569;cursor:pointer;font-size:24px;line-height:1}.quick-add-close:hover{background:#e2e8f0;color:#0f172a}.quick-add-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,280px);gap:16px;overflow:auto;padding:18px}.quick-add-form{min-width:0}.quick-add-basic-grid,.quick-add-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.quick-add-basic-grid{margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #edf2f7}.quick-add-field{display:flex;flex-direction:column;gap:6px;min-width:0}.quick-add-field.full{grid-column:1 / -1}.quick-add-field label,.quick-add-bag-grid label{color:#334155;font-size:13px;font-weight:800}.quick-add-field .required{margin-left:3px;color:#dc2626}.quick-add-field input,.quick-add-field select,.quick-add-field textarea,.quick-add-bag-grid input,.quick-add-bag-grid select{width:100%;min-width:0;padding:9px 10px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f172a;font:inherit}.quick-add-field input:focus,.quick-add-field select:focus,.quick-add-field textarea:focus,.quick-add-bag-grid input:focus,.quick-add-bag-grid select:focus{outline:none;border-color:#1268b3;box-shadow:0 0 0 3px #1268b31f}.quick-add-field .quick-add-fixed-origin{background:#f8fafc;color:#0f4c81;font-weight:800}.quick-add-material-input{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(120px,.8fr);gap:8px}.quick-add-field .input-with-unit{display:flex;align-items:center;gap:7px}.quick-add-field .input-with-unit input{flex:1}.quick-add-field .input-with-unit span{flex-shrink:0;color:#64748b;font-size:13px;font-weight:700}.quick-add-rice-items-list{display:flex;flex-direction:column;gap:10px}.quick-add-rice-item-row{display:grid;grid-template-columns:minmax(160px,1.4fr) minmax(120px,.9fr) minmax(130px,.8fr) auto;gap:10px;align-items:center}.quick-add-rice-item-row select,.quick-add-rice-item-row input{min-width:0}.quick-add-bags-list{display:flex;flex-direction:column;gap:12px}.quick-add-mochi-source-list{display:flex;flex-direction:column;gap:8px;max-height:260px;overflow:auto;padding:8px;border:1px solid #dbe5ef;border-radius:8px;background:#f8fafc}.quick-add-mochi-source-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:flex-start;padding:8px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#334155;font-size:12px;line-height:1.45;cursor:pointer}.quick-add-field .quick-add-mochi-source-row input{width:auto;margin-top:2px}.quick-add-mochi-source-row span{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.quick-add-mochi-source-row strong{color:#0f4c81;font-weight:900}.quick-add-selected-mochi-text{margin-top:8px;background:#f8fafc;color:#334155;font-size:12px}.quick-add-storage-usage-list{display:flex;flex-direction:column;gap:8px;max-height:320px;overflow:auto;padding:8px;border:1px solid #dbe5ef;border-radius:8px;background:#f8fafc}.quick-add-storage-usage-sections{display:flex;flex-direction:column;gap:12px}.quick-add-storage-usage-section{display:flex;flex-direction:column;gap:6px}.quick-add-storage-usage-section-title{color:#334155;font-size:12px;font-weight:900}.quick-add-storage-usage-row{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:start;padding:8px;border:1px solid #e2e8f0;border-radius:6px;background:#fff}.quick-add-storage-usage-row.selected{border-color:#b7dfc5;background:#fbfffc}.quick-add-storage-usage-row>div:first-child{display:flex;flex-wrap:wrap;gap:6px;min-width:0;color:#475569;font-size:12px;line-height:1.35}.quick-add-storage-usage-row>div:first-child span,.quick-add-storage-usage-row>div:first-child strong,.quick-add-storage-usage-row>div:first-child b{min-width:0;overflow-wrap:anywhere}.quick-add-storage-usage-row>div:first-child span{flex:1 1 100%}.quick-add-storage-usage-row strong{color:#0f4c81;font-weight:900}.quick-add-storage-usage-row b{color:#166534;font-weight:900}.quick-add-temperature-history{display:flex;flex-basis:100%;flex-wrap:wrap;gap:5px}.quick-add-temperature-history span,.quick-add-temperature-history small{padding:3px 6px;border:1px solid #e2e8f0;border-radius:999px;background:#fff;color:#475569;font-size:11px;font-weight:800}.quick-add-temperature-history span.warning{border-color:#fed7aa;background:#fff7ed;color:#c2410c}.quick-add-temperature-history span.ok{border-color:#bbf7d0;background:#f0fdf4;color:#15803d}.quick-add-storage-usage-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.quick-add-storage-usage-delete{width:auto;min-height:36px;padding:7px 10px;border:1px solid #fecaca;border-radius:6px;background:#fff5f5;color:#b91c1c;font-size:12px;font-weight:900;cursor:pointer}.quick-add-storage-usage-add{width:auto;min-height:36px;padding:7px 10px;border:1px solid #bfdbfe;border-radius:6px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:900;cursor:pointer}.quick-add-storage-usage-add:hover{background:#dbeafe}.quick-add-storage-usage-add:disabled{cursor:not-allowed;opacity:.55}.quick-add-storage-usage-delete:hover{background:#fee2e2}.quick-add-storage-usage-total{align-self:flex-start;margin-top:8px;padding:6px 9px;border:1px solid #d8f0df;border-radius:6px;background:#f7fffa;color:#334155;font-size:12px;font-weight:800}.quick-add-storage-usage-total strong{color:#166534}.quick-add-empty{padding:14px;border:1px dashed #cbd5e1;border-radius:6px;color:#64748b;text-align:center}.quick-add-bag-row{padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.quick-add-bag-row-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.quick-add-bag-row-header strong{color:#1f2937}.quick-add-bag-row-summary{display:flex;flex-wrap:wrap;gap:6px;color:#475569;font-size:12px;font-weight:800}.quick-add-bag-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quick-add-bag-grid label{display:flex;flex-direction:column;gap:6px}.quick-add-bag-grid .quick-add-process-source-field{grid-column:span 2}.quick-add-selected-process-sources{display:flex;flex-direction:column;gap:6px}.quick-add-selected-process-source{display:grid;grid-template-columns:max-content max-content minmax(0,1fr);grid-template-areas:"label label label" "quantity remaining remaining" "move-actions remove remove" "use-all use-all use-all";align-items:center;justify-items:start;gap:8px 10px;padding:8px;border:1px solid #dbe5ef;border-radius:6px;background:#fff}.quick-add-selected-process-source.use-all-active{border-color:#0f766e;background:#ecfdf5;box-shadow:inset 0 0 0 1px #0f766e29}.quick-add-selected-process-source span{grid-area:label;min-width:0;width:100%;overflow:hidden;color:#334155;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.quick-add-process-source-quantity{grid-area:quantity;width:100%;max-width:220px;min-width:180px}.quick-add-selected-process-source small{grid-area:remaining;color:#64748b;font-size:11px;font-weight:800;white-space:nowrap}.quick-add-process-source-move-actions{grid-area:move-actions;display:inline-flex;gap:0}.quick-add-process-source-move-actions .btn-sm{min-width:92px;justify-content:center;border-radius:0}.quick-add-process-source-move-actions .btn-sm:first-child{border-radius:6px 0 0 6px}.quick-add-process-source-move-actions .btn-sm:last-child{margin-left:-1px;border-radius:0 6px 6px 0}.quick-add-process-source-remove{grid-area:remove}.quick-add-process-source-use-all{grid-area:use-all;border-color:#99f6e4;background:#f0fdfa;color:#0f766e;font-weight:900}.quick-add-process-source-use-all.active{border-color:#0f766e;background:#0f766e;color:#fff}.quick-add-process-deduction-options{display:grid;gap:6px;color:#475569;font-size:.82rem;font-weight:800}.quick-add-process-deduction-options>span{color:#334155;font-weight:900}.quick-add-process-deduction-options>div{display:flex;flex-wrap:wrap;gap:8px 14px}.quick-add-process-deduction-options label{display:inline-flex;flex-direction:row;align-items:center;gap:6px}.quick-add-process-deduction-options input{width:16px;height:16px;margin:0}.quick-add-bag-grid .field-hint{color:#6b7280;font-size:.8rem}.quick-add-bag-grid .field-hint.warning{color:#b45309;font-weight:800}.quick-add-field .missing-field,.quick-add-bag-grid .missing-field{color:#991b1b;background:#fff5f5}.quick-add-inventory{position:sticky;top:0;align-self:start;padding:12px;border:1px solid #dbe5ef;border-radius:8px;background:#f8fafc}.quick-add-inventory-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:0;border:0;background:transparent;color:#334155;font-size:14px;font-weight:900;text-align:left;cursor:pointer}.quick-add-inventory-arrow{display:inline-block;color:#475569;font-size:11px;transition:transform .2s ease}.quick-add-inventory-arrow.open{transform:rotate(90deg)}.quick-add-inventory h3{margin:0 0 10px;color:#334155;font-size:14px}.quick-add-inventory-list{display:flex;flex-direction:column;gap:7px;max-height:56vh;overflow:auto}.quick-add-inventory-section{display:flex;flex-direction:column;gap:6px}.quick-add-inventory-section h4{margin:0;color:#64748b;font-size:12px;font-weight:900}.quick-add-inventory-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;padding:7px 8px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;font-size:12px}.quick-add-inventory-item span{overflow:visible;color:#334155;overflow-wrap:anywhere;white-space:normal}.quick-add-inventory-item strong{color:#0f4c81;white-space:nowrap}.quick-add-inventory-empty,.quick-add-message{padding:12px;border-radius:6px;background:#f8fafc;color:#64748b;font-size:13px}.quick-add-message.error{margin-top:14px;border:1px solid #fecaca;background:#fff5f5;color:#991b1b;font-weight:700}.quick-add-footer{justify-content:flex-end;border-top:1px solid #e5e7eb;border-bottom:0}@media(max-width:720px){.production-batch-list-page{padding:12px}.kanban-filter-summary{margin-left:0}.kanban-board{gap:12px}.kanban-column-content,.kanban-column-body,.kanban-column.with-lanes .kanban-column-body,.kanban-origin-group-thai .kanban-origin-lines,.kanban-origin-line-thai-shared-before .kanban-origin-line-body{grid-template-columns:1fr}.kanban-origin-line-thai-shared-after{grid-column:1 / -1}.kanban-origin-line-thai-ebi,.kanban-origin-line-thai-curry{grid-row:auto}.quick-add-overlay{padding:12px}.quick-add-content,.quick-add-basic-grid,.quick-add-fields-grid,.quick-add-bag-grid,.quick-add-material-input,.quick-add-rice-item-row,.quick-add-storage-usage-row,.quick-add-storage-usage-actions,.kanban-storage-temperature-form{grid-template-columns:1fr}.quick-add-header,.quick-add-footer{flex-direction:column}.quick-add-bag-grid .quick-add-process-source-field{grid-column:1}.quick-add-selected-process-source{grid-template-columns:1fr;grid-template-areas:"label" "quantity" "remaining" "move-actions" "remove" "use-all";align-items:stretch;justify-items:stretch}.quick-add-process-source-quantity{max-width:none;min-width:0}.quick-add-process-source-move-actions{display:flex;width:100%}.quick-add-process-source-move-actions .btn-sm{flex:1}.quick-add-footer{align-items:stretch}.quick-add-inventory{position:static}}.shipment-record-form-page{padding:20px}.form-container{max-width:1000px;margin:0 auto}.form-section{background:#fff;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.form-section h2{margin:0 0 20px;font-size:18px;border-bottom:2px solid #007bff;padding-bottom:10px}.form-section h3{margin:15px 0 10px;font-size:16px;color:#666}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px;margin-bottom:15px}.info-item{display:flex;flex-direction:column;gap:5px}.info-item .label{font-weight:700;font-size:14px;color:#666}.info-item .value{font-size:16px;color:#333}.products-section{margin-top:20px;padding-top:20px;border-top:1px solid #eee}.products-list{display:flex;flex-direction:column;gap:8px}.product-item{display:flex;justify-content:space-between;align-items:center;padding:10px;background:#f9f9f9;border-radius:4px}.product-name{font-size:14px;color:#333}.product-quantity{font-size:14px;font-weight:700;color:#007bff}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.form-field{display:flex;flex-direction:column}.form-field label{margin-bottom:5px;font-weight:700;font-size:14px}.form-field input,.form-field select,.form-field textarea{padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:#007bff}.field-hint{margin-top:5px;font-size:12px;color:#999;font-style:italic}.products-table{overflow-x:auto}.products-table table{width:100%;border-collapse:collapse}.products-table th{background:#f5f5f5;font-weight:700;font-size:14px}.products-table tbody tr:hover{background:#f9f9f9}.selected-badge{display:inline-block;padding:4px 8px;background:#28a745;color:#fff;border-radius:4px;font-size:12px;font-weight:700}.selected-badge.shortage{background:#fd7e14}.selected-badge.sample{background:#0ea5e9}.selected-badge.cancelled{background:#dc3545}.selected-products{display:flex;flex-direction:column;gap:15px}.selected-product-item{padding:15px;background:#f9f9f9;border-radius:8px;border:2px solid #007bff}.selected-product-item.shortage-item{border-color:#fd7e14}.selected-product-item.sample-item{border-color:#0ea5e9}.selected-product-item.cancelled-item{border-color:#dc3545}.product-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.product-info .product-name{font-size:16px;font-weight:700;color:#333}.btn-remove{background:#dc3545;color:#fff;border:none;border-radius:50%;width:30px;height:30px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.btn-remove:hover{background:#c82333}.quantity-input{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.bag-type-input{display:flex;align-items:center;gap:10px;margin-bottom:10px}.shipment-date-input{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.bag-type-input label,.shipment-date-input label{font-weight:700;font-size:14px}.shipment-date-input input{min-width:220px;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px}.production-link-input{display:grid;grid-template-columns:90px 1fr;gap:8px 10px;align-items:center;margin-bottom:10px}.production-link-input label{font-weight:700;font-size:14px}.production-link-input select{min-width:260px;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px}.shipment-source-list{display:flex;flex-direction:column;gap:8px}.shipment-source-row{display:grid;grid-template-columns:minmax(260px,1fr) 90px auto auto;gap:8px;align-items:center}.shipment-source-row input{width:90px;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px}.shipment-source-row .field-hint{grid-column:1 / -1}.shipment-source-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.shipment-source-total,.shipment-total-quantity{font-size:14px;font-weight:700;color:#0f4c81}.production-link-input .field-hint{grid-column:2;margin-top:0}.production-link-input .shipment-source-row .field-hint{grid-column:1 / -1}.warning-text{color:#b02a37}.bag-type-input input{min-width:220px;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px}.bag-type-input input[readonly]{background:#f3f6fa}.bag-type-input .bag-type-missing{color:#b02a37}.quantity-input label{font-weight:700;font-size:14px}.quantity-input input{width:100px;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px}.max-hint{font-size:14px;color:#666}.shipment-packaging-summary{padding:4px 8px;border-radius:4px;background:#eaf4ff;color:#0f4c81;font-size:13px;font-weight:700}.btn-warning{background:#fd7e14;color:#fff;border:none}.btn-warning:hover{background:#e56b00}.btn-info{background:#0ea5e9;color:#fff;border:none}.btn-info:hover{background:#0284c7}.empty-state{padding:40px;text-align:center;color:#999;background:#f9f9f9;border-radius:8px}.empty-state p{margin:0}.shipment-record-detail-page{padding:20px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h1{margin:0;font-size:24px}.header-actions{display:flex;gap:10px}.detail-section{background:#fff;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.detail-section h2{margin:0 0 15px;font-size:18px;border-bottom:2px solid #007bff;padding-bottom:10px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:15px}.info-item{display:flex;gap:10px}.info-item .label{font-weight:700;color:#666;min-width:120px}.info-item .value{color:#333}.notes-content{padding:15px;background:#f9f9f9;border-radius:4px;white-space:pre-wrap;line-height:1.6}.order-pdf-detail{border:1px solid #e5e7eb;border-radius:6px;overflow:hidden;background:#f8f9fa}.order-pdf-detail-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid #e5e7eb;background:#fff;font-size:14px;font-weight:700}.order-pdf-detail-header a{color:#0056b3;font-weight:700;white-space:nowrap}.order-pdf-detail iframe{width:100%;height:620px;border:0;background:#fff}.products-table{width:100%;border-collapse:collapse}.products-table th,.products-table td{padding:10px;text-align:left;border-bottom:1px solid #eee}.products-table th{background:#f5f5f5;font-weight:700}.batch-trace-button{border:0;padding:0;background:transparent;color:#06c;cursor:pointer;font:inherit;font-weight:700;text-align:left;text-decoration:underline;text-underline-offset:2px}.batch-trace-button:hover{color:#004999}.product-trace-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;background:#11182773}.product-trace-modal{width:min(980px,100%);max-height:min(86vh,900px);overflow:hidden;display:flex;flex-direction:column;background:#fff;border-radius:8px;box-shadow:0 20px 50px #00000038}.product-trace-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px;border-bottom:1px solid #e5e7eb}.product-trace-modal-header h2{margin:0;font-size:20px}.product-trace-modal-header p{margin:6px 0 0;color:#555;font-size:14px}.product-trace-content{overflow:auto;padding:18px 20px 22px}.product-trace-loading,.product-trace-error,.product-trace-empty{padding:24px;color:#555;text-align:center}.product-trace-error{color:#b42318;background:#fff1f0}.product-trace-empty.small{padding:12px;text-align:left;background:#f9fafb;border-radius:6px}.product-trace-summary,.product-trace-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.product-trace-summary{margin-bottom:16px;padding:14px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px}.trace-label{display:block;margin-bottom:4px;color:#667085;font-size:12px;font-weight:700}.product-trace-list{display:flex;flex-direction:column;gap:14px}.product-trace-card{padding:16px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.product-trace-card-header{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.product-trace-card-header>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.trace-quantity{font-weight:700;color:#333;white-space:nowrap}.status-shipped{background:#e0f2fe;color:#075985}.status-sample{background:#fef3c7;color:#92400e}.status-completed{background:#dcfce7;color:#166534}.product-trace-events{margin-top:16px}.product-trace-events h3{margin:0 0 10px;font-size:16px}.product-trace-event{padding:12px 0;border-top:1px solid #eef0f3}.product-trace-event-main{display:flex;justify-content:space-between;gap:12px;margin-bottom:6px}.product-trace-event-main span,.product-trace-event-user{color:#667085;font-size:12px}.product-trace-event-desc{color:#333;line-height:1.5;white-space:pre-wrap;word-break:break-word}.loading,.error{padding:40px;text-align:center;color:#999}@media(max-width:720px){.product-trace-modal-backdrop{align-items:stretch;padding:10px}.product-trace-card-header,.product-trace-event-main{align-items:flex-start;flex-direction:column}}.process-step-node{margin:10px 0}.step-node-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:#f5f5f5;border:2px solid #ddd;border-radius:8px;cursor:pointer;transition:all .2s ease}.step-node-header:hover{background-color:#e8e8e8;border-color:#007bff}.step-node-header.expanded{background-color:#007bff;color:#fff;border-color:#0056b3}.step-node-header.status-completed{background-color:#d4edda;border-color:#28a745}.step-node-header.status-completed:hover{background-color:#c3e6cb}.step-node-header.status-in_progress{background-color:#fff3cd;border-color:#ffc107}.step-node-header.status-in_progress:hover{background-color:#ffe69c}.step-node-header.status-not_started{background-color:#f8f9fa;border-color:#6c757d}.step-node-header.status-not_started:hover{background-color:#e9ecef}.step-name{font-weight:600;font-size:14px}.step-inventory{font-weight:500;font-size:14px;color:#666}.step-node-header.expanded .step-inventory{color:#fff}.step-node-content{margin-top:8px;padding:16px;background-color:#fff;border:1px solid #ddd;border-radius:4px}.step-input-form{padding:16px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:4px;font-weight:500;font-size:14px;color:#333}.form-group input,.form-group textarea{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.form-group input.error,.form-group textarea.error{border-color:#dc3545}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#007bff}.error-message{display:block;margin-top:4px;font-size:12px;color:#dc3545}.submit-error{margin-bottom:16px;padding:12px;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.btn-cancel,.btn-submit{padding:8px 16px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-cancel{background-color:#6c757d;color:#fff}.btn-cancel:hover:not(:disabled){background-color:#5a6268}.btn-submit{background-color:#007bff;color:#fff}.btn-submit:hover:not(:disabled){background-color:#0056b3}.btn-cancel:disabled,.btn-submit:disabled{opacity:.6;cursor:not-allowed}.process-flowchart{padding:16px}.branch-container{margin:20px 0}.branches{display:flex;gap:16px;margin-left:40px;margin-top:16px;padding-left:20px;border-left:2px solid #007bff}.branch{flex:1;padding:12px;background-color:#f8f9fa;border-radius:8px;border:1px solid #dee2e6}.branch .process-step-node{margin:8px 0}.production-progress-tab{padding:20px;max-width:1400px;margin:0 auto}.production-progress-tab .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.production-progress-tab h2{margin:0;font-size:24px;color:#333}.last-updated{font-size:14px;color:#666}.loading,.error{text-align:center;padding:40px;font-size:16px;color:#666}.error{color:#dc3545}.btn-retry{margin-top:16px;padding:8px 16px;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.btn-retry:hover{background-color:#0056b3}.controls{display:flex;gap:24px;margin-bottom:24px;padding:16px;background-color:#f8f9fa;border-radius:8px}.control-group{display:flex;align-items:center;gap:8px}.control-group label{font-weight:500;color:#333;white-space:nowrap}.plan-select,.origin-select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;min-width:200px;background-color:#fff}.plan-select:disabled,.origin-select:disabled{background-color:#e9ecef;cursor:not-allowed}.plan-info{margin-bottom:24px;padding:16px;background-color:#e7f3ff;border-left:4px solid #007bff;border-radius:4px}.plan-info h3{margin:0 0 12px;font-size:18px;color:#333}.plan-details{display:flex;flex-wrap:wrap;gap:16px;font-size:14px;color:#555}.plan-details span{padding:4px 8px;background-color:#fff;border-radius:4px}.flowchart-container{background-color:#fff;border:1px solid #ddd;border-radius:8px;padding:20px;margin-bottom:24px}.flowcharts{display:grid;grid-template-columns:1fr 1fr;gap:32px}.flowchart-section{background-color:#fff;border:1px solid #ddd;border-radius:8px;padding:20px}.flowchart-section h3{margin:0 0 16px;font-size:18px;color:#333;border-bottom:2px solid #007bff;padding-bottom:8px}.completed-work-section{background-color:#fff;border:1px solid #ddd;border-radius:8px;padding:20px}.completed-work-section h3{margin:0 0 20px;font-size:20px;color:#333;border-bottom:2px solid #28a745;padding-bottom:8px}.step-completed-work{margin-bottom:32px}.step-completed-work h4{margin:0 0 12px;font-size:16px;color:#555;background-color:#f8f9fa;padding:8px 12px;border-radius:4px}.step-summary{display:flex;gap:16px;margin-bottom:12px;font-size:14px;color:#666}.step-summary span{padding:4px 8px;background-color:#e7f3ff;border-radius:4px}.completed-records-table{width:100%;border-collapse:collapse;font-size:14px}.completed-records-table th{background-color:#f8f9fa;padding:10px;text-align:left;border-bottom:2px solid #dee2e6;font-weight:600;color:#333}.completed-records-table td{padding:10px;border-bottom:1px solid #dee2e6;color:#555}.completed-records-table tbody tr:hover{background-color:#f8f9fa}@media(max-width:768px){.controls{flex-direction:column;gap:12px}.control-group{flex-direction:column;align-items:flex-start;width:100%}.plan-select,.origin-select{width:100%}.plan-details{flex-direction:column;gap:8px}.flowcharts{grid-template-columns:1fr}.completed-records-table{font-size:12px}.completed-records-table th,.completed-records-table td{padding:6px}}:root{--bg: #f6f2eb;--panel: rgba(255, 252, 248, .85);--panel-strong: #fffaf5;--border: rgba(127, 87, 44, .14);--text: #2d241d;--muted: #75695e;--accent: #b96f2f;--accent-strong: #8c4a1c;--accent-soft: #efe0d0;--success: #216d46;--error: #9d2d2d;--shadow: 0 20px 50px rgba(76, 51, 23, .08);--radius-lg: 24px;--radius-md: 16px;--radius-sm: 12px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Hiragino Sans,Noto Sans JP,sans-serif;color:var(--text);background:radial-gradient(circle at top left,rgba(232,200,164,.25),transparent 32%),linear-gradient(180deg,#f8f4ef,#f3ede6)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}input,select,textarea{width:100%;padding:.85rem .95rem;border:1px solid var(--border);border-radius:12px;background:#ffffffe6;color:var(--text);transition:border-color .2s ease,box-shadow .2s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:#b96f2f80;box-shadow:0 0 0 4px #b96f2f14}textarea{resize:vertical}label{display:flex;flex-direction:column;gap:.45rem;font-size:.93rem;color:var(--muted)}h1,h2,h3,h4,p{margin:0}.center-loader{min-height:100vh;display:grid;place-items:center;color:var(--muted)}.button{border:none;border-radius:999px;padding:.82rem 1.25rem;font-weight:600;transition:transform .16s ease,opacity .16s ease,background .16s ease}.button:hover{transform:translateY(-1px)}.button.primary{background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff}.button.secondary{background:#b96f2f1f;color:var(--accent-strong)}.button.ghost{background:transparent;color:var(--accent-strong);border:1px solid rgba(185,111,47,.2)}.button.danger{color:var(--error)}.button.subtle{background:#9d2d2d12}.button.small{padding:.55rem .9rem;font-size:.83rem}.alert{padding:.85rem 1rem;border-radius:12px;font-size:.92rem;margin-top:.8rem}.alert.success{background:#216d4614;color:var(--success);border:1px solid rgba(33,109,70,.12)}.alert.error{background:#9d2d2d14;color:var(--error);border:1px solid rgba(157,45,45,.12)}.soft-note{color:var(--muted);font-size:.92rem}.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:.35rem .7rem;border-radius:999px;background:#b96f2f1f;color:var(--accent-strong);font-size:.82rem;font-weight:700}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.app-sidebar{position:sticky;top:0;height:100vh;padding:1.4rem;background:#fffaf5b3;border-right:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;flex-direction:column;gap:1.4rem}.brand-block{display:flex;gap:.85rem;align-items:center}.brand-mark{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#d9ae6d,#a85d26);color:#fff;font-size:1.5rem;font-weight:800;box-shadow:var(--shadow)}.brand-block h1{font-size:1.15rem}.brand-block p{color:var(--muted);font-size:.88rem;margin-top:.15rem}.app-nav{display:flex;flex-direction:column;gap:.35rem}.app-nav a{padding:.85rem 1rem;border-radius:14px;color:var(--muted);font-weight:600}.app-nav a.active{background:linear-gradient(135deg,#b96f2f24,#b96f2f12);color:var(--accent-strong)}.sidebar-footer{margin-top:auto;display:grid;gap:.9rem}.user-card{display:flex;flex-direction:column;gap:.25rem;padding:1rem;background:#b96f2f14;border-radius:var(--radius-md);color:var(--accent-strong)}.user-card span{color:var(--muted);font-size:.86rem}.app-main{min-width:0;padding:1.3rem 1.4rem 1.6rem}.app-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}.app-topbar h2{font-size:1.18rem}.app-topbar p{color:var(--muted);margin-top:.2rem}.app-content{display:grid;min-width:0;gap:1.2rem}.monitor-fullscreen-shell{width:100vw;min-width:0;min-height:100vh;padding:12px;overflow:hidden;background:radial-gradient(circle at top left,rgba(232,200,164,.25),transparent 32%),linear-gradient(180deg,#f8f4ef,#f3ede6)}.monitor-fullscreen-shell .monitor-page{height:calc(100vh - 24px)}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.panel-header{display:flex;align-items:start;justify-content:space-between;gap:1rem;padding:1.2rem 1.3rem .2rem}.panel-header h3{font-size:1.06rem}.panel-header p{color:var(--muted);font-size:.92rem;margin-top:.2rem}.panel-body{padding:1.2rem 1.3rem 1.3rem}.page-stack{display:grid;gap:1.2rem}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:1.2rem}.hero-copy .panel-body{display:grid;gap:1rem}.hero-scene-panel .panel-body{padding:0;min-height:320px}.three-scene{height:100%;min-height:320px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem}.stat-card{padding:1rem;border-radius:18px;background:#ffffffad;border:1px solid rgba(185,111,47,.1);display:flex;flex-direction:column;gap:.35rem}.stat-card span{color:var(--muted);font-size:.9rem}.stat-card strong{font-size:1.6rem;color:var(--accent-strong)}.two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.two-column.wide-left{grid-template-columns:1.25fr .95fr}.masters-layout{display:grid;grid-template-columns:1fr;gap:1.2rem}.three-column{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.form-panel{display:grid;gap:1rem;max-height:calc(100vh - 200px);overflow-y:auto;padding:1.2rem;background:var(--panel-strong);border-radius:var(--radius-lg);border:1px solid var(--border)}.form-panel.compact{gap:.8rem}.form-grid{display:grid;gap:.9rem}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid .full-width{grid-column:1 / -1}.subsection-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.subsection-header h4{font-size:.96rem}.button-row,.table-actions,.inline-row{display:flex;flex-wrap:wrap;gap:.6rem}.stack-list{display:grid;gap:1rem}.nested-card{border:1px solid rgba(185,111,47,.12);border-radius:18px;padding:1rem;background:#ffffffa6;display:grid;gap:.85rem}.nested-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.86rem}.summary-bar,.result-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.8rem;padding:1rem;border-radius:18px;background:#b96f2f14}.summary-bar strong,.result-summary strong{color:var(--accent-strong);font-size:1.12rem}.result-summary div{display:flex;flex-direction:column;gap:.25rem}.result-summary span{color:var(--muted);font-size:.82rem}.table-wrap,.table-scroll{overflow-x:auto}.data-table,.form-table{width:100%;border-collapse:collapse;min-width:620px}.data-table th,.data-table td,.form-table th,.form-table td{padding:.82rem .7rem;border-bottom:1px solid rgba(127,87,44,.08);text-align:left;vertical-align:middle;font-size:.92rem}.data-table th,.form-table th{color:var(--muted);font-weight:700;background:#b96f2f0d}.data-table td,.form-table td{color:var(--text)}.master-product-list-panel .table-wrap{overflow-x:visible}.master-product-list-panel .data-table{min-width:0;table-layout:fixed}.master-product-list-panel .data-table th,.master-product-list-panel .data-table td{padding:.52rem .34rem;font-size:.72rem;line-height:1.25;white-space:normal;word-break:break-word;overflow-wrap:anywhere}.master-product-list-panel .data-table th{vertical-align:bottom}.master-product-list-panel .data-table td{vertical-align:top}.master-product-list-panel .data-table th:nth-child(1),.master-product-list-panel .data-table td:nth-child(1){width:6.5%}.master-product-list-panel .data-table th:nth-child(2),.master-product-list-panel .data-table td:nth-child(2){width:13%}.master-product-list-panel .data-table th:nth-child(3),.master-product-list-panel .data-table td:nth-child(3){width:5.5%}.master-product-list-panel .data-table th:nth-child(4),.master-product-list-panel .data-table td:nth-child(4){width:9%}.master-product-list-panel .data-table th:nth-child(5),.master-product-list-panel .data-table td:nth-child(5){width:6.5%}.master-product-list-panel .data-table th:nth-child(n+6):nth-child(-n+14),.master-product-list-panel .data-table td:nth-child(n+6):nth-child(-n+14){width:4.7%}.master-product-list-panel .data-table th:nth-child(15),.master-product-list-panel .data-table td:nth-child(15),.master-product-list-panel .data-table th:nth-child(16),.master-product-list-panel .data-table td:nth-child(16){width:4%}.master-product-list-panel .data-table th:nth-child(17),.master-product-list-panel .data-table td:nth-child(17){width:9%}.master-product-list-panel .table-actions{gap:.3rem}.master-product-list-panel .button.small{padding:.42rem .55rem;font-size:.72rem}.form-table input,.form-table select{min-width:100px;width:100%}.empty-cell{text-align:center;color:var(--muted);padding:1.4rem 1rem}.flow-view,.flow-section,.plan-timeline{display:grid;gap:1rem}.flow-header,.plan-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border-radius:18px;background:#ffffffb8}.flow-header span,.plan-header span{color:var(--muted);display:block;margin-top:.2rem;font-size:.9rem}.process-pill-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:.75rem}.process-pill{padding:.9rem 1rem;border-radius:16px;background:#ffffffa6;border:1px solid rgba(127,87,44,.08);display:flex;align-items:center;justify-content:space-between;gap:.6rem;color:var(--muted)}.process-pill.done{background:linear-gradient(135deg,#b96f2f26,#ffffffbf);color:var(--accent-strong);border-color:#b96f2f2e}.process-pill strong{font-size:1.2rem}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(360px,520px) 1fr;background:linear-gradient(135deg,#fff8f1e6,#f8f0e6d1)}.login-card{padding:2rem;display:grid;align-content:center;gap:1.5rem}.login-copy{display:grid;gap:1rem}.login-copy h1{font-size:clamp(2rem,3vw,2.8rem);line-height:1.15}.login-copy p{color:var(--muted);font-size:1rem;line-height:1.75}.eyebrow{display:inline-flex;width:fit-content;padding:.4rem .85rem;border-radius:999px;background:#b96f2f1f;color:var(--accent-strong);font-weight:700;font-size:.82rem}.login-points{display:grid;gap:.65rem;margin:0;padding-left:1.2rem;color:var(--muted)}.login-card .form-panel{max-width:440px;padding:1.5rem;border-radius:24px;background:#fffcf8e6;border:1px solid var(--border);box-shadow:var(--shadow)}.login-card .form-panel h2{font-size:1.4rem;margin-bottom:.2rem}.demo-accounts{display:grid;gap:.25rem;padding-top:.2rem;color:var(--muted);font-size:.9rem}.login-visual{min-height:100vh}.checkbox-row{display:flex;flex-direction:row;align-items:center;gap:.7rem;color:var(--text)}.checkbox-row input{width:auto}.result-box{display:grid;gap:1rem;margin-top:1rem}.inline-row select,.inline-row input{flex:1;min-width:0}.tab-row{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1rem}.tab-button{border:none;border-radius:999px;padding:.7rem 1rem;background:#b96f2f14;color:var(--muted);font-weight:700}.tab-button.active{background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff}.chat-widget-shell{position:fixed;right:1.1rem;bottom:1rem;z-index:1200;display:grid;gap:.7rem;justify-items:end}body.production-quick-add-open .chat-widget-shell{display:none}.chat-widget-panel{width:min(390px,calc(100vw - 2rem));max-height:min(72vh,640px);display:grid;grid-template-rows:auto 1fr auto;gap:.7rem;padding:.9rem;border-radius:18px;border:1px solid var(--border);background:#fffbf5f7;box-shadow:0 26px 52px #442b1438;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.chat-widget-header{display:flex;align-items:start;justify-content:space-between;gap:.7rem}.chat-widget-header h4{font-size:.98rem}.chat-widget-header p{margin-top:.2rem;color:var(--muted);font-size:.82rem}.chat-widget-log{min-height:220px;overflow-y:auto;display:grid;gap:.55rem;padding:.15rem .2rem .3rem}.chat-bubble{max-width:88%;padding:.62rem .72rem;border-radius:13px;display:grid;gap:.28rem;border:1px solid rgba(127,87,44,.14)}.chat-bubble p{line-height:1.5;white-space:pre-wrap;font-size:.9rem}.chat-attachments{display:grid;gap:.35rem}.chat-attachment-button{width:100%;border:1px solid rgba(127,87,44,.2);border-radius:8px;background:#b96f2f14;color:var(--accent-strong);font-size:.82rem;font-weight:700;line-height:1.35;padding:.42rem .52rem;text-align:left;word-break:break-word}.chat-attachment-button:hover{background:#b96f2f24}.chat-message-actions{display:flex;justify-content:flex-end}.chat-copy-button{border:1px solid rgba(127,87,44,.18);border-radius:8px;background:#ffffffb8;color:var(--accent-strong);cursor:pointer;font-size:.76rem;font-weight:700;line-height:1.2;padding:.34rem .5rem}.chat-copy-button:hover{background:#b96f2f1a}.chat-bubble time{justify-self:end;color:var(--muted);font-size:.74rem}.chat-bubble.user{margin-left:auto;background:linear-gradient(135deg,#b96f2f29,#b96f2f14)}.chat-bubble.assistant{margin-right:auto;background:#ffffffe6}.chat-widget-input{display:grid;gap:.55rem}.chat-widget-input textarea{min-height:68px;max-height:180px}.chat-widget-note{color:var(--muted);font-size:.84rem;padding:.3rem .2rem}@media(max-width:1200px){.three-column,.hero-grid,.two-column,.two-column.wide-left{grid-template-columns:1fr}.form-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.login-page{grid-template-columns:1fr}.login-visual{min-height:360px}}@media(max-width:960px){.app-shell{grid-template-columns:1fr}.app-sidebar{position:static;height:auto;padding:1rem;border-right:none;border-bottom:1px solid var(--border)}.app-nav{flex-direction:row;overflow-x:auto;padding-bottom:.2rem}.app-topbar{flex-direction:column;align-items:flex-start}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three,.form-grid.four{grid-template-columns:1fr}}@media(max-width:640px){.app-main{padding:1rem}.panel-header,.panel-body{padding-left:1rem;padding-right:1rem}.stats-grid,.form-grid.two{grid-template-columns:1fr}.data-table,.form-table{min-width:560px}.chat-widget-shell{left:.8rem;right:.8rem;bottom:.8rem;justify-items:stretch}.chat-widget-toggle{justify-self:end}.chat-widget-panel{width:100%;max-height:68vh}}@media print{body{background:#fff}.app-sidebar,.app-topbar,.button,.tab-row,.chat-widget-shell{display:none!important}.app-main{padding:0}.panel{box-shadow:none;border:1px solid #ccc;break-inside:avoid}.panel-body{padding:.8rem}.data-table,.form-table{min-width:0}}.user-card.compact{gap:.18rem;padding:.75rem .95rem}.stats-grid.expanded{grid-template-columns:repeat(3,minmax(0,1fr))}.field-shell{min-height:100vh;padding:1rem}.field-header-shell{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;margin-bottom:1rem;background:#fffaf5c7;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.field-header-shell h1{font-size:1.35rem;margin-top:.15rem}.field-header-shell p{color:var(--muted);margin-top:.2rem}.field-header-actions{display:flex;align-items:center;gap:.8rem}.field-main{display:grid;gap:1rem}.field-page{gap:1rem}.field-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem}.field-summary-bar{margin-bottom:1rem}.compact-grid{align-items:end}.field-step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}.field-step-card{border:1px solid rgba(185,111,47,.14);border-radius:20px;padding:1rem;background:#ffffffb8;text-align:left;display:grid;gap:.4rem;color:var(--text);box-shadow:0 8px 24px #4c33170f}.field-step-card span{font-weight:700}.field-step-card strong{font-size:1.75rem;color:var(--accent-strong)}.field-step-card small{color:var(--muted)}.field-step-card.active{background:linear-gradient(135deg,#b96f2f2b,#ffffffd1);border-color:#b96f2f47;transform:translateY(-1px)}.field-instruction-list{display:grid;gap:.8rem}.field-instruction-card{border:1px solid rgba(185,111,47,.12);border-radius:20px;padding:1rem;background:#ffffffb8;display:grid;gap:.9rem;text-align:left;color:var(--text)}.field-instruction-card.active{background:linear-gradient(135deg,#b96f2f26,#ffffffdb);border-color:#b96f2f47}.field-instruction-card-top,.field-guidance-header{display:flex;align-items:start;justify-content:space-between;gap:.8rem}.field-instruction-card-main{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.field-instruction-card-main div,.guidance-metrics div{display:grid;gap:.25rem}.field-instruction-card-main span,.guidance-metrics span,.field-instruction-card-footer,.field-guidance-header p{color:var(--muted);font-size:.88rem}.field-instruction-card-main strong,.guidance-metrics strong{color:var(--accent-strong)}.field-instruction-card-footer{display:flex;justify-content:space-between;gap:.8rem}.field-form-stack{display:grid;gap:1rem}.field-guidance-card,.empty-state-card{border:1px solid rgba(185,111,47,.12);border-radius:20px;padding:1rem;background:#ffffffb3}.guidance-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:1rem;padding:.95rem;border-radius:16px;background:#b96f2f14}.field-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.compact-card{gap:.6rem}.empty-state-card{color:var(--muted)}@media(max-width:1200px){.field-hero-grid{grid-template-columns:1fr}.field-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:960px){.stats-grid.expanded{grid-template-columns:repeat(2,minmax(0,1fr))}.field-header-shell,.field-header-actions,.field-instruction-card-main,.field-instruction-card-footer,.field-guidance-header{flex-direction:column;align-items:flex-start}.field-instruction-card-main,.field-record-grid{grid-template-columns:1fr}}@media(max-width:640px){.field-shell{padding:.75rem}.field-step-grid,.guidance-metrics,.stats-grid.expanded{grid-template-columns:1fr}}.three-scene--arare{min-height:360px;height:100%}.login-page--cute{background:radial-gradient(circle at top left,rgba(255,203,212,.25),transparent 26%),radial-gradient(circle at right 20%,rgba(214,240,180,.18),transparent 24%),linear-gradient(180deg,#f9f4ed,#f5ede4)}.login-form-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.login-submit{border-radius:16px;padding-block:.95rem;font-size:1rem;box-shadow:0 14px 30px #a56b352e}.login-points--cute li::marker{color:#c88959}.demo-accounts--cute{margin-top:.1rem;padding:.9rem 1rem;border-radius:16px;background:#f5e8d973;border:1px solid rgba(185,111,47,.08)}.login-visual--cute{position:relative;overflow:hidden}.login-visual--cute:after{content:"";position:absolute;inset:auto 0 0 0;height:120px;background:linear-gradient(180deg,#f7f2ea00,#f7f2eacc 58%,#f7f2ea);pointer-events:none}@media(max-width:1200px){.three-scene--arare{min-height:320px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--panel-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow);max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border)}.modal-header h3{margin:0;font-size:1.25rem;color:var(--text)}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--muted);cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.modal-close:hover{background-color:var(--accent-soft)}.modal-body{padding:1.5rem}.modal-footer{display:flex;gap:.75rem;justify-content:flex-end;padding:1.5rem;border-top:1px solid var(--border)}.form-group{margin-bottom:1rem}.form-group label{display:flex;flex-direction:column;gap:.5rem;font-size:.93rem;color:var(--muted)}.tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid var(--border)}.tab{padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;font-size:16px;font-weight:500;color:var(--muted);cursor:pointer;transition:all .2s ease;margin-bottom:-2px}.tab:hover{color:var(--text);background-color:var(--accent-soft)}.tab.active{color:var(--accent-strong);border-bottom-color:var(--accent)}.users-page{max-width:1400px}.users-toolbar{display:flex;gap:.9rem;align-items:end;justify-content:space-between}.users-toolbar label{min-width:260px}.users-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.device-approval-panel{grid-column:1 / -1}.device-group-list{display:grid;gap:.95rem}.device-group-block{border:1px solid rgba(185,111,47,.14);border-radius:8px;background:#ffffff9e;overflow:hidden}.device-group-header{display:flex;align-items:start;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border-bottom:1px solid rgba(127,87,44,.08)}.device-group-header h5{margin:0 0 .25rem;font-size:.98rem}.device-group-meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;color:var(--muted);font-size:.84rem}.device-group-meta span{padding:.25rem .55rem;border-radius:999px;background:#b96f2f14}.users-list-table tbody tr{cursor:pointer}.users-list-table tbody tr:hover{background:#b96f2f0f}.users-list-table tbody tr.is-selected{background:#b96f2f1f}.admin-chat-log{max-height:420px;overflow-y:auto;display:grid;gap:.55rem;padding-right:.25rem}@media(max-width:1100px){.users-layout{grid-template-columns:1fr}}@media(max-width:640px){.users-toolbar{flex-direction:column;align-items:stretch}.users-toolbar label{min-width:0}}
