.upload-queue-panel[data-v-9a763453]{position:fixed;bottom:20px;right:20px;z-index:9999;width:340px;background:var(--bg-surface1);border:1px solid var(--border-default);border-radius:12px;box-shadow:var(--shadow-lg);overflow:hidden}.panel-header[data-v-9a763453]{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#00d4ff14;border-bottom:1px solid var(--border-default)}.panel-title[data-v-9a763453]{flex:1;font-size:13px;color:var(--text-primary);font-weight:500}.hdr-btn[data-v-9a763453]{background:none;border:none;cursor:pointer;padding:2px 6px;font-size:14px;display:flex;align-items:center;color:var(--text-secondary)}.panel-items[data-v-9a763453]{max-height:300px;overflow-y:auto}.panel-item[data-v-9a763453]{padding:10px 14px;border-bottom:1px solid var(--border-default)}.item-row[data-v-9a763453]{display:flex;align-items:center;gap:8px;margin-bottom:4px}.status-icon[data-v-9a763453]{font-size:14px;flex-shrink:0;color:var(--text-tertiary)}.status-icon.uploading[data-v-9a763453]{animation:uqp-spin-9a763453 1s linear infinite}.status-icon.completed[data-v-9a763453]{color:var(--success)}.status-icon.failed[data-v-9a763453]{color:var(--error)}.item-name[data-v-9a763453]{flex:1;font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-size[data-v-9a763453]{font-size:11px;color:var(--text-tertiary);flex-shrink:0}.item-btn[data-v-9a763453]{background:none;border:none;cursor:pointer;padding:0 4px;font-size:13px;color:var(--text-tertiary);flex-shrink:0}.item-btn.cancel[data-v-9a763453]{color:var(--error)}.progress-bar-track[data-v-9a763453]{height:3px;background:var(--bg-surface2);border-radius:2px;overflow:hidden}.progress-bar-fill[data-v-9a763453]{height:100%;background:var(--accent);transition:width .3s;border-radius:2px}.item-progress-text[data-v-9a763453]{font-size:11px;color:var(--text-tertiary);margin-top:2px}.item-error[data-v-9a763453]{font-size:12px;color:var(--error);margin-top:2px}@keyframes uqp-spin-9a763453{to{transform:rotate(360deg)}}*,*:before,*:after{box-sizing:border-box}:root{--bg-base: #080D14;--bg-surface1: #0D1520;--bg-surface2: #141F2E;--bg-surface3: #1A2840;--accent: #00D4FF;--accent-muted: rgba(0, 212, 255, .1);--accent-border: rgba(0, 212, 255, .22);--accent-hover: rgba(0, 212, 255, .18);--accent-secondary: #FFD166;--yellow-muted: rgba(255, 209, 102, .1);--accent-tertiary: #E8006F;--pink-muted: rgba(232, 0, 111, .1);--pink-border: rgba(232, 0, 111, .22);--success: #63DCB4;--success-muted: rgba(99, 220, 180, .1);--warning: #FFD166;--warning-muted: rgba(255, 209, 102, .1);--error: #FF6B61;--error-muted: rgba(255, 107, 97, .1);--text-primary: rgba(255, 255, 255, .88);--text-secondary: rgba(255, 255, 255, .5);--text-tertiary: rgba(255, 255, 255, .25);--text-disabled: rgba(255, 255, 255, .15);--border-default: rgba(255, 255, 255, .07);--border-hover: rgba(255, 255, 255, .12);--border-focus: rgba(0, 212, 255, .45);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--radius-xl: 12px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 4px 12px rgba(0, 0, 0, .5);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .6);--duration-fast: .13s;--duration-normal: .2s;--ease-default: cubic-bezier(.2, .8, .2, 1)}body{margin:0;background:var(--bg-base);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,system-ui,sans-serif;-webkit-font-smoothing:antialiased}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-base);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,system-ui,sans-serif;-webkit-font-smoothing:antialiased}#root,#app{min-height:100vh}input,textarea,select{font-size:16px!important}html{touch-action:manipulation}html,body{overscroll-behavior:none}input::placeholder,textarea::placeholder{color:var(--text-tertiary)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none}.portal-input:focus{border:2px solid var(--accent)!important;outline:none}.portal-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.portal-row:hover{background:var(--bg-surface2);transition:background var(--duration-fast) var(--ease-default)}.portal-file-row:hover{background:var(--bg-surface2)}.portal-btn-primary:hover{background:var(--accent-hover)!important}.portal-btn-primary:active,.mobile-fab:active{transform:scale(.97)!important;transition-duration:.1s!important}.portal-link:hover{opacity:.8}.portal-input,.portal-card,.portal-row,.portal-file-row,.portal-btn-primary{transition:all var(--duration-fast) var(--ease-default)}.route-container>*{animation:routeFadeIn var(--duration-fast) var(--ease-default) both}.route-container{transition:transform .35s cubic-bezier(.32,.72,0,1),border-radius .35s cubic-bezier(.32,.72,0,1);transform-origin:top center}@keyframes routeFadeIn{0%{opacity:0}to{opacity:1}}body.modal-open{overflow:hidden}.modal-open .route-container{transform:scale(.94) translateY(8px);border-radius:12px;overflow:hidden}.modal-open .mobile-fab,.modal-open .upload-queue-panel{display:none!important}.ticket-modal-card{max-width:100vw}#root,#app{overflow-x:hidden}@media (max-width: 480px){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.responsive-grid-2{grid-template-columns:1fr!important}}@media (max-width: 480px){.ticket-modal-overlay{padding:0!important;align-items:stretch!important}.ticket-modal-card{max-width:none!important;width:100%!important;height:100dvh!important;border-radius:0!important}.ticket-modal-handle{display:flex!important}}@media (max-width: 767px){.ticket-modal-body{overflow:hidden!important}.ticket-detail-left{max-height:35dvh;overflow-y:auto;flex-shrink:1}.ticket-detail-right{flex:1;min-height:0}}@media (min-width: 768px){.ticket-modal-card{max-width:1024px!important;height:calc(100vh - 48px)!important}.ticket-modal-body{display:grid!important;grid-template-columns:2fr 3fr;gap:0;padding:0!important;overflow:hidden!important}.ticket-detail-left{padding:16px;overflow-y:auto;border-right:.5px solid var(--border-default)}.ticket-detail-right{display:flex!important;flex-direction:column!important;min-height:0;overflow:hidden}}@keyframes msg-appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-line{background:linear-gradient(90deg,#ffffff0a 25%,#ffffff14,#ffffff0a 75%);background-size:200% 100%;animation:shimmer 1.8s ease-in-out infinite;border-radius:4px}
