import { createHotContext as __vite__createHotContext } from "/@vite/client";import.meta.hot = __vite__createHotContext("/used-purchase-register/assets/css/frontend.css");import { updateStyle as __vite__updateStyle, removeStyle as __vite__removeStyle } from "/@vite/client"
const __vite__id = "/app/applet/used-purchase-register/assets/css/frontend.css"
const __vite__css = "/**\n * Used Purchase Register - Frontend Staff Portal Stylesheet\n * Scoped under .upr-portal-root for complete theme isolation\n */\n\n:root {\n  --upr-primary: #0284c7;\n  --upr-primary-hover: #0369a1;\n  --upr-dark: #0f172a;\n  --upr-dark-card: #1e293b;\n  --upr-gray-50: #f8fafc;\n  --upr-gray-100: #f1f5f9;\n  --upr-gray-200: #e2e8f0;\n  --upr-gray-300: #cbd5e1;\n  --upr-gray-600: #475569;\n  --upr-gray-700: #334155;\n  --upr-gray-800: #1e293b;\n  --upr-success: #10b981;\n  --upr-warning: #f59e0b;\n  --upr-danger: #ef4444;\n  --upr-radius: 8px;\n  --upr-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n  --upr-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n}\n\n.upr-portal-root {\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif;\n  color: var(--upr-gray-800);\n  background-color: var(--upr-gray-50);\n  border: 1px solid var(--upr-gray-200);\n  border-radius: var(--upr-radius);\n  overflow: hidden;\n  box-shadow: var(--upr-shadow-lg);\n  margin: 1.5rem 0;\n  box-sizing: border-box;\n}\n\n.upr-portal-root * {\n  box-sizing: border-box;\n}\n\n/* 1. Header & Navigation */\n.upr-portal-header {\n  background-color: var(--upr-dark);\n  color: #ffffff;\n  padding: 0.75rem 1.25rem;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  gap: 1rem;\n  flex-wrap: wrap;\n  border-bottom: 2px solid #38bdf8;\n}\n\n.upr-portal-brand {\n  display: flex;\n  align-items: center;\n  gap: 0.65rem;\n}\n\n.upr-brand-icon {\n  background-color: #0284c7;\n  color: #ffffff;\n  padding: 0.4rem;\n  border-radius: 6px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.upr-brand-title {\n  font-size: 1.05rem;\n  font-weight: 800;\n  letter-spacing: -0.01em;\n  color: #ffffff;\n}\n\n.upr-badge-portal {\n  background-color: rgba(56, 189, 248, 0.2);\n  color: #38bdf8;\n  font-size: 0.7rem;\n  font-weight: 700;\n  padding: 0.2rem 0.5rem;\n  border-radius: 4px;\n  text-transform: uppercase;\n  margin-left: 0.4rem;\n}\n\n.upr-portal-nav {\n  display: flex;\n  align-items: center;\n  gap: 0.4rem;\n}\n\n.upr-nav-btn {\n  background: transparent;\n  color: #94a3b8;\n  border: 1px solid transparent;\n  padding: 0.5rem 0.85rem;\n  border-radius: 6px;\n  font-size: 0.85rem;\n  font-weight: 600;\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n  gap: 0.4rem;\n  transition: all 0.15s ease;\n  min-height: 40px;\n}\n\n.upr-nav-btn:hover {\n  color: #ffffff;\n  background-color: rgba(255, 255, 255, 0.08);\n}\n\n.upr-nav-btn.is-active {\n  color: #ffffff;\n  background-color: #334155;\n  border-color: #475569;\n}\n\n.upr-nav-btn.upr-btn-highlight {\n  background-color: #0284c7;\n  color: #ffffff;\n}\n\n.upr-nav-btn.upr-btn-highlight:hover {\n  background-color: #0369a1;\n}\n\n.upr-portal-user {\n  display: flex;\n  align-items: center;\n  gap: 1rem;\n}\n\n.upr-user-meta {\n  display: flex;\n  flex-direction: column;\n  text-align: right;\n  font-size: 0.75rem;\n}\n\n.upr-user-greeting {\n  color: #64748b;\n}\n\n.upr-user-name {\n  color: #f8fafc;\n  font-weight: 600;\n}\n\n.upr-user-role {\n  color: #38bdf8;\n  font-size: 0.7rem;\n}\n\n.upr-btn-logout {\n  color: #ef4444;\n  background: rgba(239, 68, 68, 0.1);\n  padding: 0.4rem 0.75rem;\n  border-radius: 6px;\n  font-size: 0.8rem;\n  font-weight: 600;\n  text-decoration: none;\n  display: flex;\n  align-items: center;\n  gap: 0.35rem;\n  min-height: 36px;\n}\n\n.upr-btn-logout:hover {\n  background: rgba(239, 68, 68, 0.2);\n  color: #f87171;\n}\n\n/* 2. Main Body & View Switching */\n.upr-portal-body {\n  padding: 1.5rem;\n}\n\n.upr-view-panel {\n  display: none;\n}\n\n.upr-view-panel.is-active {\n  display: block;\n  animation: uprFadeIn 0.2s ease;\n}\n\n@keyframes uprFadeIn {\n  from { opacity: 0; transform: translateY(4px); }\n  to { opacity: 1; transform: translateY(0); }\n}\n\n/* 3. Cards & Structure */\n.upr-card {\n  background: #ffffff;\n  border: 1px solid var(--upr-gray-200);\n  border-radius: var(--upr-radius);\n  box-shadow: var(--upr-shadow);\n  margin-bottom: 1.25rem;\n  overflow: hidden;\n}\n\n.upr-card-header {\n  padding: 0.85rem 1.25rem;\n  background-color: #ffffff;\n  border-bottom: 1px solid var(--upr-gray-200);\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n}\n\n.upr-card-title {\n  display: flex;\n  align-items: center;\n  gap: 0.5rem;\n}\n\n.upr-card-title h3 {\n  margin: 0;\n  font-size: 0.95rem;\n  font-weight: 700;\n  color: var(--upr-dark);\n  text-transform: uppercase;\n  letter-spacing: 0.02em;\n}\n\n.upr-section-step {\n  background-color: var(--upr-primary);\n  color: #ffffff;\n  width: 24px;\n  height: 24px;\n  border-radius: 50%;\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  font-size: 0.75rem;\n  font-weight: 800;\n}\n\n.upr-card-body {\n  padding: 1.25rem;\n}\n\n/* 4. Action Banner & Stats */\n.upr-action-banner {\n  background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);\n  color: #ffffff;\n  padding: 1.5rem;\n  border-radius: var(--upr-radius);\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  flex-wrap: wrap;\n  gap: 1rem;\n  margin-bottom: 1.5rem;\n}\n\n.upr-action-banner-text h2 {\n  margin: 0 0 0.25rem 0;\n  color: #ffffff;\n  font-size: 1.35rem;\n  font-weight: 800;\n}\n\n.upr-action-banner-text p {\n  margin: 0;\n  color: #94a3b8;\n  font-size: 0.9rem;\n}\n\n.upr-action-banner-buttons {\n  display: flex;\n  gap: 0.75rem;\n  flex-wrap: wrap;\n}\n\n.upr-stats-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));\n  gap: 1.25rem;\n  margin-bottom: 1.5rem;\n}\n\n.upr-stat-card {\n  background: #ffffff;\n  border: 1px solid var(--upr-gray-200);\n  border-radius: var(--upr-radius);\n  padding: 1.25rem;\n  display: flex;\n  align-items: center;\n  gap: 1rem;\n  box-shadow: var(--upr-shadow);\n}\n\n.upr-stat-icon {\n  width: 48px;\n  height: 48px;\n  border-radius: 8px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.upr-stat-icon-blue {\n  background-color: #e0f2fe;\n  color: #0284c7;\n}\n\n.upr-stat-icon-emerald {\n  background-color: #d1fae5;\n  color: #10b981;\n}\n\n.upr-stat-label {\n  font-size: 0.8rem;\n  color: var(--upr-gray-600);\n  font-weight: 600;\n  text-transform: uppercase;\n}\n\n.upr-stat-value {\n  font-size: 1.6rem;\n  font-weight: 800;\n  color: var(--upr-dark);\n  line-height: 1.1;\n}\n\n.upr-stat-sub {\n  font-size: 0.85rem;\n  color: #0284c7;\n  font-weight: 700;\n  font-family: ui-monospace, SFMono-Regular, monospace;\n}\n\n/* 5. Forms & Inputs */\n.upr-form-grid {\n  display: grid;\n  gap: 1rem;\n}\n\n.upr-grid-3 {\n  grid-template-columns: repeat(3, 1fr);\n}\n\n.upr-grid-4 {\n  grid-template-columns: repeat(4, 1fr);\n}\n\n.upr-col-span-2 {\n  grid-column: span 2;\n}\n\n.upr-col-span-3 {\n  grid-column: span 3;\n}\n\n.upr-col-span-full {\n  grid-column: 1 / -1;\n}\n\n.upr-form-group {\n  display: flex;\n  flex-direction: column;\n  gap: 0.35rem;\n}\n\n.upr-form-group label {\n  font-size: 0.8rem;\n  font-weight: 700;\n  color: var(--upr-gray-700);\n  text-transform: uppercase;\n  letter-spacing: 0.02em;\n}\n\n.upr-req {\n  color: var(--upr-danger);\n}\n\n.upr-input, .upr-select, .upr-textarea {\n  width: 100%;\n  padding: 0.65rem 0.85rem;\n  font-size: 0.95rem;\n  border: 1px solid var(--upr-gray-300);\n  border-radius: 6px;\n  background-color: #ffffff;\n  color: var(--upr-gray-800);\n  transition: border-color 0.15s ease, box-shadow 0.15s ease;\n  min-height: 44px;\n}\n\n.upr-input:focus, .upr-select:focus, .upr-textarea:focus {\n  border-color: var(--upr-primary);\n  outline: none;\n  box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.15);\n}\n\n.upr-input-readonly {\n  background-color: var(--upr-gray-100);\n  color: var(--upr-gray-700);\n  cursor: not-allowed;\n}\n\n.upr-field-error {\n  font-size: 0.75rem;\n  color: var(--upr-danger);\n  font-weight: 600;\n  display: none;\n}\n\n/* 6. Buttons */\n.upr-btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  gap: 0.4rem;\n  font-size: 0.85rem;\n  font-weight: 700;\n  padding: 0.55rem 1.1rem;\n  border-radius: 6px;\n  border: 1px solid transparent;\n  cursor: pointer;\n  transition: all 0.15s ease;\n  white-space: nowrap;\n  min-height: 44px;\n}\n\n.upr-btn-primary {\n  background-color: var(--upr-primary);\n  color: #ffffff;\n}\n\n.upr-btn-primary:hover {\n  background-color: var(--upr-primary-hover);\n}\n\n.upr-btn-secondary {\n  background-color: var(--upr-dark);\n  color: #ffffff;\n}\n\n.upr-btn-secondary:hover {\n  background-color: #334155;\n}\n\n.upr-btn-outline {\n  background-color: transparent;\n  border-color: var(--upr-gray-300);\n  color: var(--upr-gray-700);\n}\n\n.upr-btn-outline:hover {\n  background-color: var(--upr-gray-100);\n  border-color: var(--upr-gray-400);\n}\n\n.upr-btn-warning {\n  background-color: var(--upr-warning);\n  color: #ffffff;\n}\n\n.upr-btn-success {\n  background-color: var(--upr-success);\n  color: #ffffff;\n}\n\n.upr-btn-lg {\n  padding: 0.75rem 1.4rem;\n  font-size: 0.95rem;\n}\n\n.upr-btn-xl {\n  padding: 1rem 2rem;\n  font-size: 1.1rem;\n  width: 100%;\n}\n\n.upr-btn-sm {\n  padding: 0.35rem 0.75rem;\n  font-size: 0.75rem;\n  min-height: 34px;\n}\n\n.upr-btn-link {\n  background: none;\n  border: none;\n  color: var(--upr-primary);\n  font-weight: 700;\n  font-size: 0.85rem;\n  cursor: pointer;\n}\n\n/* 7. Alerts & Duplicate Warnings */\n.upr-alert {\n  padding: 0.85rem 1rem;\n  border-radius: 6px;\n  display: flex;\n  align-items: center;\n  gap: 0.85rem;\n  margin-bottom: 1rem;\n}\n\n.upr-alert-info {\n  background-color: #e0f2fe;\n  border: 1px solid #bae6fd;\n  color: #0369a1;\n}\n\n.upr-alert-warning {\n  background-color: #fef3c7;\n  border: 1px solid #fde68a;\n  color: #92400e;\n}\n\n.upr-alert-actions {\n  margin-left: auto;\n  display: flex;\n  gap: 0.5rem;\n}\n\n/* 8. Items Repeater & Summary */\n.upr-items-stack {\n  display: flex;\n  flex-direction: column;\n  gap: 1rem;\n}\n\n.upr-item-card {\n  border: 1px solid var(--upr-gray-200);\n  border-radius: 6px;\n  background-color: var(--upr-gray-50);\n  overflow: hidden;\n}\n\n.upr-item-header {\n  background-color: var(--upr-gray-100);\n  padding: 0.5rem 0.85rem;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  border-bottom: 1px solid var(--upr-gray-200);\n}\n\n.upr-item-badge {\n  font-size: 0.75rem;\n  font-weight: 800;\n  color: var(--upr-gray-700);\n}\n\n.upr-btn-remove-item {\n  background: none;\n  border: none;\n  color: var(--upr-danger);\n  font-size: 0.75rem;\n  font-weight: 700;\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n  gap: 0.25rem;\n}\n\n.upr-item-body {\n  padding: 1rem;\n}\n\n.upr-summary-dual-grid {\n  display: grid;\n  grid-template-columns: 1.5fr 1fr;\n  gap: 1.5rem;\n}\n\n.upr-summary-box {\n  background-color: var(--upr-gray-100);\n  border: 1px solid var(--upr-gray-200);\n  border-radius: 6px;\n  padding: 1.25rem;\n  display: flex;\n  flex-direction: column;\n  gap: 0.6rem;\n}\n\n.upr-summary-row {\n  display: flex;\n  justify-content: space-between;\n  font-size: 0.9rem;\n  color: var(--upr-gray-700);\n}\n\n.upr-summary-divider {\n  border-top: 1px dashed var(--upr-gray-300);\n  margin: 0.4rem 0;\n}\n\n.upr-summary-grand-total {\n  display: flex;\n  justify-content: space-between;\n  align-items: baseline;\n}\n\n.upr-grand-label {\n  font-size: 1rem;\n  font-weight: 800;\n  color: var(--upr-dark);\n}\n\n.upr-grand-val {\n  font-size: 1.4rem;\n  font-weight: 900;\n  color: var(--upr-primary);\n  font-family: ui-monospace, monospace;\n}\n\n/* 9. Documents Upload Tiles */\n.upr-docs-dual-grid {\n  display: grid;\n  grid-template-columns: 240px 1fr;\n  gap: 1.25rem;\n}\n\n.upr-doc-upload-box {\n  border: 1px solid var(--upr-gray-200);\n  border-radius: 6px;\n  padding: 1rem;\n  background-color: var(--upr-gray-50);\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  text-align: center;\n  gap: 0.75rem;\n}\n\n.upr-preview-holder {\n  width: 100%;\n  height: 150px;\n  background-color: #ffffff;\n  border: 1px dashed var(--upr-gray-300);\n  border-radius: 6px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  overflow: hidden;\n}\n\n.upr-preview-holder img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n.upr-docs-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));\n  gap: 1rem;\n}\n\n.upr-doc-tile {\n  border: 1px solid var(--upr-gray-200);\n  border-radius: 6px;\n  padding: 0.75rem;\n  background-color: var(--upr-gray-50);\n  display: flex;\n  flex-direction: column;\n  gap: 0.5rem;\n}\n\n.upr-tile-title {\n  font-size: 0.75rem;\n  font-weight: 800;\n  color: var(--upr-gray-700);\n}\n\n.upr-tile-preview {\n  height: 90px;\n  background-color: #ffffff;\n  border: 1px dashed var(--upr-gray-300);\n  border-radius: 4px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  overflow: hidden;\n}\n\n.upr-tile-preview img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n/* 10. Tables & Results */\n.upr-table-responsive {\n  width: 100%;\n  overflow-x: auto;\n}\n\n.upr-table {\n  width: 100%;\n  border-collapse: collapse;\n  font-size: 0.85rem;\n}\n\n.upr-table th {\n  background-color: var(--upr-gray-100);\n  color: var(--upr-gray-700);\n  font-weight: 700;\n  text-transform: uppercase;\n  font-size: 0.75rem;\n  padding: 0.65rem 0.85rem;\n  text-align: left;\n  border-bottom: 2px solid var(--upr-gray-200);\n}\n\n.upr-table td {\n  padding: 0.75rem 0.85rem;\n  border-bottom: 1px solid var(--upr-gray-200);\n}\n\n.upr-table tr:hover td {\n  background-color: var(--upr-gray-50);\n}\n\n.text-right { text-align: right; }\n.text-center { text-align: center; }\n\n/* 11. Modals */\n.upr-modal {\n  position: fixed;\n  inset: 0;\n  z-index: 99999;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.upr-modal-backdrop {\n  position: absolute;\n  inset: 0;\n  background-color: rgba(15, 23, 42, 0.7);\n}\n\n.upr-modal-dialog {\n  position: relative;\n  background: #ffffff;\n  border-radius: 8px;\n  width: 90%;\n  max-width: 680px;\n  max-height: 90vh;\n  overflow-y: auto;\n  box-shadow: var(--upr-shadow-lg);\n  z-index: 10;\n}\n\n.upr-modal-header {\n  padding: 1rem 1.25rem;\n  border-bottom: 1px solid var(--upr-gray-200);\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n}\n\n.upr-modal-title {\n  display: flex;\n  align-items: center;\n  gap: 0.5rem;\n  font-size: 1rem;\n  font-weight: 700;\n  color: var(--upr-dark);\n}\n\n.upr-modal-close {\n  background: none;\n  border: none;\n  font-size: 1.5rem;\n  line-height: 1;\n  color: var(--upr-gray-600);\n  cursor: pointer;\n}\n\n.upr-modal-body {\n  padding: 1.25rem;\n}\n\n.upr-modal-footer {\n  padding: 0.75rem 1.25rem;\n  border-top: 1px solid var(--upr-gray-200);\n  display: flex;\n  justify-content: flex-end;\n  gap: 0.5rem;\n}\n\n/* Camera modal specifics */\n.upr-camera-viewport {\n  position: relative;\n  width: 100%;\n  height: 340px;\n  background-color: #000000;\n  border-radius: 6px;\n  overflow: hidden;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n\n.upr-camera-viewport video, .upr-camera-viewport img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n/* 12. Success Banner */\n.upr-success-banner {\n  background: linear-gradient(135deg, #065f46 0%, #047857 100%);\n  color: #ffffff;\n  padding: 2rem;\n  border-radius: var(--upr-radius);\n  text-align: center;\n  margin-bottom: 1.5rem;\n  animation: uprFadeIn 0.3s ease;\n}\n\n.upr-success-icon {\n  background: rgba(255, 255, 255, 0.2);\n  width: 72px;\n  height: 72px;\n  border-radius: 50%;\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  margin-bottom: 1rem;\n}\n\n.upr-success-record-number {\n  font-size: 1.8rem;\n  font-weight: 900;\n  font-family: ui-monospace, SFMono-Regular, monospace;\n  background-color: rgba(0, 0, 0, 0.25);\n  padding: 0.4rem 1rem;\n  border-radius: 6px;\n  display: inline-block;\n  margin: 0.75rem 0 1.25rem 0;\n  border: 1px dashed rgba(255, 255, 255, 0.4);\n}\n\n.upr-success-actions {\n  display: flex;\n  justify-content: center;\n  gap: 0.75rem;\n  flex-wrap: wrap;\n}\n\n/* 13. Mobile Responsive Rules */\n@media (max-width: 768px) {\n  .upr-portal-header {\n    flex-direction: column;\n    align-items: stretch;\n  }\n\n  .upr-portal-nav {\n    justify-content: space-around;\n  }\n\n  .upr-grid-3, .upr-grid-4, .upr-docs-dual-grid, .upr-summary-dual-grid {\n    grid-template-columns: 1fr;\n  }\n\n  .upr-col-span-2, .upr-col-span-3 {\n    grid-column: span 1;\n  }\n\n  .upr-desktop-ledger {\n    display: none;\n  }\n\n  .upr-mobile-ledger-stack {\n    display: flex;\n    flex-direction: column;\n    gap: 0.75rem;\n  }\n\n  .upr-mobile-card {\n    background: #ffffff;\n    border: 1px solid var(--upr-gray-200);\n    border-radius: 6px;\n    padding: 1rem;\n    display: flex;\n    flex-direction: column;\n    gap: 0.4rem;\n  }\n\n  .upr-mobile-card-header {\n    display: flex;\n    justify-content: space-between;\n    align-items: center;\n    border-bottom: 1px solid var(--upr-gray-100);\n    padding-bottom: 0.35rem;\n  }\n}\n"
__vite__updateStyle(__vite__id, __vite__css)
import.meta.hot.accept()
import.meta.hot.prune(() => __vite__removeStyle(__vite__id))