.portal-app{--portal-primary:#2563eb;--portal-primary-hover:#1d4ed8;--portal-primary-light:#dbeafe;--portal-text:#0f172a;--portal-text-secondary:#475569;--portal-text-muted:#94a3b8;--portal-surface:#fff;--portal-surface-alt:#f8fafc;--portal-surface-hover:#f1f5f9;--portal-border:#e2e8f0;--portal-border-light:#f1f5f9;--portal-shadow-sm:0 1px 3px #0000000f;--portal-shadow:0 4px 12px #00000014;--portal-shadow-lg:0 10px 40px #0000001f;--portal-radius:10px;--portal-radius-lg:14px;--portal-transition:0.2s ease;-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.portal-app,.portal-app *,.portal-app :after,.portal-app :before{box-sizing:border-box}body:has(.portal-app){background:#f8fafc!important}.portal-login-wrapper{align-items:center;background:#f1f5f9;display:flex;justify-content:center;min-height:100vh;padding:20px}.portal-login-card{animation:portalFadeIn .4s ease-out;background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:var(--portal-radius-lg);box-shadow:0 8px 30px #00000014;max-width:420px;padding:44px 40px;width:100%}@keyframes portalFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.portal-login-title{color:var(--portal-primary);font-size:26px;font-weight:700;letter-spacing:-.02em;margin:0;text-align:center}.portal-login-subtitle{color:var(--portal-text-muted);font-size:13px;letter-spacing:.5px;margin-bottom:32px;text-align:center;text-transform:uppercase}.portal-label{color:var(--portal-text);display:block;font-size:14px;font-weight:600;margin-bottom:6px}.portal-input{background:var(--portal-surface);border:1.5px solid var(--portal-border);border-radius:8px;box-sizing:border-box;color:var(--portal-text);font-size:15px;margin-bottom:20px;outline:none;padding:11px 14px;transition:border-color var(--portal-transition),box-shadow var(--portal-transition);width:100%}.portal-input:focus{border-color:var(--portal-primary);box-shadow:0 0 0 3px #2563eb1f}.portal-input::placeholder{color:var(--portal-text-muted)}.portal-btn-primary{background:var(--portal-primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px;transition:background var(--portal-transition),transform var(--portal-transition),box-shadow var(--portal-transition);width:100%}.portal-btn-primary:hover{background:var(--portal-primary-hover);box-shadow:0 4px 14px #2563eb4d}.portal-btn-primary:active{transform:scale(.98)}.portal-btn-primary:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.portal-alert{background:#fffbeb;border:1px solid #fbbf24;border-radius:8px;color:#92400e;font-size:14px;line-height:1.5;margin-bottom:20px;padding:12px 16px}.portal-success-box{color:var(--portal-text);text-align:center}.portal-success-title{font-size:18px;font-weight:600;margin-bottom:8px}.portal-success-hint{color:var(--portal-text-muted);font-size:14px}.portal-link-btn{background:none;border:none;color:var(--portal-primary);cursor:pointer;font-size:14px;margin-top:12px;text-decoration:underline;transition:color var(--portal-transition)}.portal-link-btn:hover{color:var(--portal-primary-hover)}.portal-login-footer{color:var(--portal-text-muted);font-size:12px;margin-top:32px;text-align:center}.portal-layout-wrapper{background:var(--portal-surface-alt);min-height:100vh}.portal-layout-container{margin:0 auto;max-width:1100px;padding:0 20px}.portal-header{align-items:center;border-bottom:1px solid var(--portal-border);display:flex;justify-content:space-between;padding:18px 0}.portal-header-actions{align-items:center;display:flex;gap:10px}.portal-logo{color:var(--portal-primary);font-size:20px;font-weight:700;letter-spacing:-.02em;margin:0}.portal-cust-label{color:var(--portal-text-secondary);font-size:14px}.portal-lang-toggle{background:var(--portal-surface);border:1.5px solid var(--portal-border);border-radius:6px;color:var(--portal-text-secondary);cursor:pointer;font-size:13px;font-weight:600;padding:5px 14px;transition:all var(--portal-transition)}.portal-lang-toggle:hover{border-color:var(--portal-primary);color:var(--portal-primary)}.portal-logout-btn{background:none;border:1.5px solid var(--portal-border);border-radius:6px;color:var(--portal-text-secondary);cursor:pointer;font-size:14px;padding:6px 18px;transition:all var(--portal-transition)}.portal-logout-btn:hover{background:var(--portal-surface-hover);border-color:var(--portal-text-muted);color:var(--portal-text)}.portal-tabs{border-bottom:2px solid var(--portal-border);display:flex;gap:0;margin-top:16px}.portal-tab{background:none;border:none;border-bottom:2px solid #0000;color:var(--portal-text-muted);cursor:pointer;font-size:15px;font-weight:600;margin-bottom:-2px;padding:10px 24px;position:relative;transition:color var(--portal-transition)}.portal-tab:hover{color:var(--portal-text-secondary)}.portal-tab-active{border-bottom-color:var(--portal-primary);color:var(--portal-primary)}.portal-search-bar{margin:16px 0 20px;position:relative}.portal-search-icon{color:var(--portal-text-muted);font-size:15px;left:14px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.portal-search-input{background:var(--portal-surface);border:1.5px solid var(--portal-border);border-radius:8px;color:var(--portal-text);font-size:14px;outline:none;padding:10px 40px;transition:border-color var(--portal-transition),box-shadow var(--portal-transition);width:100%}.portal-search-input:focus{border-color:var(--portal-primary);box-shadow:0 0 0 3px #2563eb14}.portal-search-clear,.portal-search-input::placeholder{color:var(--portal-text-muted)}.portal-search-clear{background:none;border:none;cursor:pointer;font-size:18px;line-height:1;padding:2px 6px;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.portal-search-clear:hover{color:var(--portal-text)}.portal-search-spinner{animation:portalSpin .6s linear infinite;border:2px solid var(--portal-border);border-radius:50%;border-top-color:var(--portal-primary);height:14px;position:absolute;right:36px;top:50%;transform:translateY(-50%);width:14px}@keyframes portalSpin{to{transform:translateY(-50%) rotate(1turn)}}.portal-main{min-height:60vh}.portal-footer{background:#0000!important;border:none!important;color:var(--portal-text-muted)!important;font-size:12px!important;margin:0!important;padding:30px 0;text-align:center}.portal-loading{color:var(--portal-text-muted);padding:60px 20px;text-align:center}.portal-page-title{color:var(--portal-text);font-size:20px;font-weight:700;margin-bottom:20px}.portal-action-error{background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;font-size:13px;margin-bottom:14px;padding:10px 14px}.portal-empty,.portal-text-muted{color:var(--portal-text-muted)}.portal-table-wrap{border:1px solid var(--portal-border);border-radius:var(--portal-radius);overflow-x:auto}.portal-table{background:var(--portal-surface);border-collapse:collapse;width:100%}.portal-table th{background:var(--portal-surface-alt);border-bottom:2px solid var(--portal-border);color:var(--portal-text-secondary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:10px 14px;text-align:left;text-transform:uppercase}.portal-table th.text-right{text-align:right}.portal-table th.text-center{text-align:center}.portal-table td{border-bottom:1px solid var(--portal-border-light);color:var(--portal-text);font-size:14px;padding:10px 14px}.portal-table td.text-right{text-align:right}.portal-table tbody tr{transition:background var(--portal-transition)}.portal-table tbody tr:hover{background:#2563eb08}.portal-table tbody tr:last-child td{border-bottom:none}.portal-sort-header{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.portal-sort-header:hover{color:var(--portal-primary)!important}.portal-sort-arrow{font-size:9px;opacity:.7}.portal-expand-btn{background:#0000;border:1.5px solid var(--portal-primary);border-radius:6px;color:var(--portal-primary);cursor:pointer;font-size:12px;font-weight:600;min-width:32px;padding:3px 12px;transition:all var(--portal-transition)}.portal-expand-btn:hover{background:var(--portal-primary);color:#fff}.portal-order-link{color:var(--portal-primary);font-weight:600;text-decoration:none;transition:color var(--portal-transition)}.portal-order-link:hover{color:var(--portal-primary-hover);text-decoration:underline}.portal-link-btn-inline{background:none;border:none;color:var(--portal-primary);cursor:pointer;font-size:14px;font-weight:600;padding:0;text-decoration:underline}.portal-link-btn-inline:hover{color:var(--portal-primary-hover)}.portal-si-badge{border-radius:999px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.02em;padding:3px 12px}.portal-si-badge-created{background:#dbeafe;color:#1e40af}.portal-si-badge-transit{background:#dcfce7;color:#166534}.portal-si-badge-default{background:#f1f5f9;color:#334155}.portal-si-badge-inline{background:var(--portal-surface-alt);color:var(--portal-text-secondary);font-size:12px;vertical-align:middle}.portal-state-badge{border-radius:999px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.02em;padding:3px 12px}.portal-state-5{background:#dcfce7;color:#166534}.portal-state-6{background:#dbeafe;color:#1e40af}.portal-state-7{background:#e0e7ff;color:#3730a3}.portal-state-8{background:#f1f5f9;color:#475569}.portal-state-15,.portal-state-18{background:#fef3c7;color:#92400e}.portal-state-99{background:#fee2e2;color:#991b1b}.portal-state-default{background:#f1f5f9;color:#334155}.portal-progress-bar{align-items:center;display:flex;gap:0;min-width:160px}.portal-progress-milestone{align-items:center;display:flex;flex-shrink:0;justify-content:center;position:relative}.portal-progress-dot{background:var(--portal-border);border-radius:50%;height:10px;transition:background .3s ease;width:10px}.portal-progress-dot-active{background:var(--portal-primary)}.portal-progress-line{background:var(--portal-border);flex:1 1;height:2px;min-width:12px;position:relative;transition:background .3s ease}.portal-progress-line-active{background:var(--portal-primary)}.portal-progress-subdots{align-items:center;display:flex;justify-content:space-around;left:4px;position:absolute;right:4px;top:50%;transform:translateY(-50%)}.portal-progress-subdot{background:var(--portal-border);border-radius:50%;height:5px;transition:background .3s ease;width:5px}.portal-progress-subdot-active{background:var(--portal-primary)}.portal-stage-badge{border-radius:3px;color:#fff;font-size:9px;font-weight:600;left:50%;line-height:1;padding:2px 5px;pointer-events:none;position:absolute;top:16px;transform:translateX(-50%);white-space:nowrap}.portal-stage-received{background:#94a3b8}.portal-stage-confirmed{background:#3b82f6}.portal-stage-processing{background:#f59e0b}.portal-stage-ready{background:#8b5cf6}.portal-stage-shipped{background:#10b981}.portal-stage-delivered{background:#059669}.portal-fulfillment-wrap{align-items:center;display:flex;gap:8px}.portal-fulfillment-bar{background:var(--portal-border);border-radius:3px;height:6px;overflow:hidden;width:60px}.portal-fulfillment-fill{background:#22c55e;border-radius:3px;height:100%;transition:width .3s ease}.portal-fulfillment-label{color:var(--portal-text-secondary);font-size:12px;white-space:nowrap}.portal-shipment-logistics{grid-gap:8px 24px;display:grid;gap:8px 24px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.portal-logistics-item{margin-bottom:8px}.portal-sub-row-cell{background:var(--portal-surface-alt);padding:14px 16px 18px}.portal-sub-row-content{grid-gap:10px;display:grid;gap:10px}.portal-items-section{margin-bottom:4px}.portal-items-table-wrap{overflow-x:auto}.portal-items-table{background:var(--portal-surface);border:1px solid var(--portal-border);border-collapse:collapse;border-radius:6px;width:100%}.portal-items-table th{background:var(--portal-surface-alt);border-bottom:1px solid var(--portal-border);color:var(--portal-text-muted);font-size:10px;font-weight:700;letter-spacing:.04em;padding:6px 10px;text-align:left;text-transform:uppercase;white-space:nowrap}.portal-items-table th.text-right{text-align:right}.portal-items-table td{border-bottom:1px solid var(--portal-border-light);color:var(--portal-text);font-size:13px;padding:5px 10px;white-space:nowrap}.portal-items-table td.text-right{text-align:right}.portal-items-table tbody tr:last-child td{border-bottom:none}.portal-items-prodname{max-width:220px;white-space:normal!important;word-break:break-word}.portal-docs-section{grid-gap:10px;display:grid;gap:10px}.portal-loading-hint{color:var(--portal-text-secondary);font-size:13px;padding:6px 2px}.portal-row-error{align-items:center;background:#fffbeb;border:1px solid #fbbf24;border-radius:8px;color:#92400e;display:flex;font-size:13px;gap:10px;justify-content:space-between;padding:8px 12px}.portal-retry-btn{background:#0000;border:1px solid #92400e;border-radius:6px;color:#92400e;cursor:pointer;font-size:12px;font-weight:600;padding:3px 12px;transition:all var(--portal-transition)}.portal-retry-btn:hover{background:#92400e;color:#fff}.portal-doc-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.portal-doc-card{background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:var(--portal-radius);padding:12px 14px}.portal-doc-title{color:var(--portal-text);font-size:13px;font-weight:700;margin-bottom:8px}.portal-empty-hint{color:var(--portal-text-muted);font-size:13px;margin:0}.portal-shipment-group{grid-gap:6px;display:grid;gap:6px;margin-bottom:8px}.portal-shipment-title{color:var(--portal-text-secondary);font-size:12px;font-weight:600}.portal-file-list{display:flex;flex-wrap:wrap;gap:8px}.portal-file-chip{align-items:center;background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:8px;color:var(--portal-text);cursor:pointer;display:inline-flex;font-family:inherit;font-size:13px;gap:5px;padding:5px 12px;transition:all var(--portal-transition)}.portal-file-chip:hover{border-color:var(--portal-primary);box-shadow:var(--portal-shadow-sm);color:var(--portal-primary)}.portal-file-chip:disabled{cursor:not-allowed;opacity:.5}.portal-file-chip:disabled:hover{border-color:var(--portal-border);box-shadow:none;color:var(--portal-text)}.portal-file-name{line-height:1.2}.portal-file-meta{color:var(--portal-text-muted)}.portal-file-icon{font-size:14px}.portal-back-link{color:var(--portal-primary);display:inline-block;font-size:14px;font-weight:500;margin-bottom:20px;text-decoration:none;transition:color var(--portal-transition)}.portal-back-link:hover{color:var(--portal-primary-hover)}.portal-section{background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:var(--portal-radius-lg);box-shadow:var(--portal-shadow-sm);margin-bottom:20px;padding:22px 26px}.portal-section-title{color:var(--portal-text);font-size:17px;font-weight:700;margin:0 0 16px}.portal-info-grid{grid-gap:8px 24px;display:grid;gap:8px 24px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.portal-info-label{color:var(--portal-text-muted);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.portal-info-value{color:var(--portal-text);font-size:15px;font-weight:500}.portal-remark{color:var(--portal-text-secondary);font-size:14px;margin-top:12px}.portal-prod-name{font-weight:600}.portal-prod-desc{color:var(--portal-text-muted);font-size:12px;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-detail-files{display:flex;flex-wrap:wrap;gap:8px}.portal-no-files{color:var(--portal-text-muted);font-size:13px;margin:0}.portal-error-center{color:#dc2626;padding:40px;text-align:center}@media (max-width:768px){.portal-login-card{padding:32px 24px}.portal-header{align-items:flex-start;flex-direction:column;gap:10px}.portal-doc-grid{grid-template-columns:1fr}.portal-info-grid,.portal-shipment-logistics{grid-template-columns:1fr 1fr}.portal-section{padding:16px 18px}.portal-tabs{gap:0}.portal-tab{font-size:14px;padding:10px 16px}.portal-progress-bar{min-width:120px}}@media (max-width:480px){.portal-login-card{margin:0 8px;padding:28px 20px}.portal-info-grid,.portal-shipment-logistics{grid-template-columns:1fr}.portal-table td,.portal-table th{font-size:13px;padding:8px 10px}.portal-survey-card{margin:16px 8px;max-width:100%;position:static}}.portal-survey-card{animation:portal-survey-slide-in .3s ease-out;background:#fff;background:var(--portal-surface,#fff);border-radius:12px;bottom:24px;box-shadow:0 4px 24px #0000001f;max-width:360px;padding:20px 24px;position:fixed;right:24px;width:calc(100% - 48px);z-index:1000}@keyframes portal-survey-slide-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.portal-survey-thanks{animation:portal-survey-fade-out 2s ease-out forwards;text-align:center}@keyframes portal-survey-fade-out{0%,60%{opacity:1}to{opacity:0}}.portal-survey-thanks p{color:#2563eb;color:var(--portal-primary,#2563eb);font-size:15px;font-weight:500;margin:0}.portal-survey-close{background:none;border:none;color:#94a3b8;color:var(--portal-text-tertiary,#94a3b8);cursor:pointer;font-size:20px;line-height:1;padding:4px;position:absolute;right:12px;top:8px}.portal-survey-close:hover{color:#64748b;color:var(--portal-text-secondary,#64748b)}.portal-survey-text{color:#1e293b;color:var(--portal-text-primary,#1e293b);font-size:15px;font-weight:500;line-height:1.4;margin:0 0 14px;padding-right:20px}.portal-survey-stars{display:flex;gap:4px;margin-bottom:14px}.portal-survey-star{background:none;border:none;color:#d1d5db;cursor:pointer;font-size:28px;padding:0;transition:color .15s}.portal-survey-star.active{color:#f59e0b}.portal-survey-yesno{display:flex;gap:8px;margin-bottom:14px}.portal-survey-option-btn{background:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;flex:1 1;font-size:14px;padding:8px 16px;transition:all .15s}.portal-survey-option-btn.selected{background:#2563eb0f;border-color:#2563eb;border-color:var(--portal-primary,#2563eb);color:#2563eb;color:var(--portal-primary,#2563eb);font-weight:500}.portal-survey-choices{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.portal-survey-choice{align-items:center;border-radius:6px;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:6px 10px;transition:background .15s}.portal-survey-choice:hover{background:#00000008}.portal-survey-choice input[type=radio]{accent-color:#2563eb;accent-color:var(--portal-primary,#2563eb)}.portal-survey-textarea{border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:14px;margin-bottom:14px;padding:8px 12px;resize:vertical;width:100%}.portal-survey-textarea:focus{border-color:#2563eb;border-color:var(--portal-primary,#2563eb);box-shadow:0 0 0 2px #2563eb1a;outline:none}.portal-survey-actions{display:flex;gap:8px;justify-content:flex-end}.portal-survey-skip{background:none;border:none;color:#94a3b8;color:var(--portal-text-tertiary,#94a3b8);cursor:pointer;font-size:13px;padding:6px 12px}.portal-survey-skip:hover{color:#64748b;color:var(--portal-text-secondary,#64748b)}.portal-survey-submit{background:#2563eb;background:var(--portal-primary,#2563eb);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:6px 16px;transition:opacity .15s}.portal-survey-submit:hover{opacity:.9}.portal-survey-submit:disabled{cursor:not-allowed;opacity:.4}
/*# sourceMappingURL=main.cefb1a30.css.map*/