:root{--color-bg:#fdfcf8;--color-primary:#4a5d4e;--color-secondary:#8c7355;--color-text:#2c2c2c;--color-text-muted:#666;--color-surface:#fff;--color-border:#e0dacd;--font-serif:"Noto Serif SC", "STSong", "Songti SC", "SimSun", serif;--font-sans:"Noto Sans SC", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--border-radius:8px;--shadow-soft:0 4px 12px #4a5d4e14}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;padding:0;line-height:1.6;overflow-x:hidden}h1,h2,h3,.serif{font-family:var(--font-serif);color:var(--color-primary);font-weight:600}.container{max-width:430px;min-height:100vh;padding:var(--spacing-lg);flex-direction:column;margin:0 auto;display:flex}button{background-color:var(--color-primary);color:#fff;border-radius:var(--border-radius);font-family:var(--font-serif);cursor:pointer;width:100%;box-shadow:var(--shadow-soft);border:none;padding:12px 24px;font-size:16px;transition:all .3s}button:active{opacity:.9;transform:scale(.98)}button:disabled{background-color:var(--color-border);cursor:not-allowed}input{border:none;border-bottom:1px solid var(--color-border);width:100%;color:var(--color-text);background:0 0;outline:none;padding:12px 0;font-size:16px;transition:border-color .3s}input:focus{border-bottom-color:var(--color-primary)}input::placeholder{color:var(--color-text-muted);opacity:.5}.card{background:var(--color-surface);border-radius:var(--border-radius);padding:var(--spacing-lg);box-shadow:var(--shadow-soft);border:1px solid var(--color-border);margin-bottom:var(--spacing-lg)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.6s forwards fadeIn}.login-view[data-v-52a1ee11]{flex-direction:column;flex:1;justify-content:center;padding-bottom:10vh;display:flex}.header[data-v-52a1ee11]{text-align:center;margin-bottom:var(--spacing-xl)}.logo-accent[data-v-52a1ee11]{width:48px;height:48px;margin:0 auto var(--spacing-md);background-color:var(--color-primary);clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%);opacity:.8;-webkit-mask:radial-gradient(circle,#0000 30%,#000 31%);mask:radial-gradient(circle,#0000 30%,#000 31%)}.title[data-v-52a1ee11]{letter-spacing:2px;margin:0;font-size:28px}.subtitle[data-v-52a1ee11]{font-family:var(--font-serif);color:var(--color-secondary);margin-top:var(--spacing-xs);letter-spacing:4px;font-size:14px}.form-container[data-v-52a1ee11]{margin-top:var(--spacing-xl)}.input-group[data-v-52a1ee11]{margin-bottom:var(--spacing-lg);transition:all .3s;position:relative}.label[data-v-52a1ee11]{color:var(--color-text-muted);font-size:12px;font-family:var(--font-serif);margin-bottom:var(--spacing-xs);display:block}.error-msg[data-v-52a1ee11]{color:#a64b2a;font-size:11px;font-family:var(--font-serif);margin:4px 0 0;position:absolute}.has-error input[data-v-52a1ee11]{border-bottom-color:#a64b2a}@keyframes shake-52a1ee11{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.shake[data-v-52a1ee11]{animation:.4s ease-in-out shake-52a1ee11}.error-enter-active[data-v-52a1ee11],.error-leave-active[data-v-52a1ee11]{transition:opacity .3s,transform .3s}.error-enter-from[data-v-52a1ee11],.error-leave-to[data-v-52a1ee11]{opacity:0;transform:translateY(-5px)}.btn-submit[data-v-52a1ee11]{margin-top:var(--spacing-xl);letter-spacing:2px;width:100%;font-size:18px}.btn-submit[data-v-52a1ee11]:disabled{opacity:.5;cursor:not-allowed}.footer[data-v-52a1ee11]{bottom:var(--spacing-lg);text-align:center;color:var(--color-text-muted);opacity:.6;font-size:12px;position:absolute;left:0;right:0}.timeline[data-v-2917f718]{padding:var(--spacing-sm) 0;flex-direction:column;display:flex}.pending-state[data-v-2917f718]{align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-sm) 0;display:flex}.pending-dot[data-v-2917f718]{background-color:var(--color-border);border:2px dashed var(--color-text-muted);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:4px}.pending-text[data-v-2917f718]{flex:1}.pending-status[data-v-2917f718]{color:var(--color-text-muted);margin-bottom:2px;font-size:14px;font-weight:500}.pending-desc[data-v-2917f718]{color:var(--color-text-muted);opacity:.7;font-size:12px;line-height:1.4}.timeline-item[data-v-2917f718]{gap:var(--spacing-md);display:flex}.timeline-left[data-v-2917f718]{flex-direction:column;align-items:center;width:20px;display:flex}.dot-wrapper[data-v-2917f718]{flex-direction:column;flex:1;align-items:center;display:flex;position:relative}.dot[data-v-2917f718]{background-color:var(--color-border);z-index:1;border-radius:50%;width:8px;height:8px;margin-top:6px}.line[data-v-2917f718]{background-color:var(--color-border);width:1px;position:absolute;top:14px;bottom:-6px}.latest .dot[data-v-2917f718]{background-color:var(--color-primary);box-shadow:0 0 0 4px #4a5d4e33}.latest .status[data-v-2917f718]{color:var(--color-primary);font-weight:600}.timeline-right[data-v-2917f718]{padding-bottom:var(--spacing-lg);flex:1}.status[data-v-2917f718]{color:var(--color-text);margin-bottom:2px;font-size:14px}.location[data-v-2917f718]{color:var(--color-text-muted);font-size:13px;line-height:1.4}.time[data-v-2917f718]{color:var(--color-text-muted);opacity:.7;margin-top:4px;font-size:12px}.tracking-view[data-v-d6fb38e7]{padding-bottom:var(--spacing-xl);flex-direction:column;min-height:80vh;display:flex}.header-section[data-v-d6fb38e7]{margin-bottom:var(--spacing-md)}.history-hint[data-v-d6fb38e7]{color:var(--color-secondary);font-size:11px;font-family:var(--font-serif);opacity:.8;margin:4px 0 0}.empty-state[data-v-d6fb38e7]{padding:var(--spacing-xl) 0;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.empty-icon[data-v-d6fb38e7]{width:80px;height:80px;margin-bottom:var(--spacing-lg);background-color:var(--color-primary);clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%);opacity:.1;-webkit-mask:radial-gradient(circle,#0000 30%,#000 31%);mask:radial-gradient(circle,#0000 30%,#000 31%)}.empty-text[data-v-d6fb38e7]{font-family:var(--font-serif);color:var(--color-text);margin-bottom:var(--spacing-xs);font-size:18px}.empty-subtext[data-v-d6fb38e7]{color:var(--color-text-muted);margin-bottom:var(--spacing-xl);font-size:13px}.list-header[data-v-d6fb38e7]{margin-top:var(--spacing-md);margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.list-header span[data-v-d6fb38e7]{color:var(--color-text);font-size:14px;font-weight:600}.count-badge[data-v-d6fb38e7]{color:var(--color-primary);background:#4a5d4e14;border-radius:12px;padding:2px 10px;font-size:11px;font-weight:600}.prescription-selector[data-v-d6fb38e7]{gap:var(--spacing-md);padding:4px 4px var(--spacing-lg) 4px;margin:0 -4px var(--spacing-sm) -4px;scrollbar-width:none;display:flex;overflow-x:auto}.prescription-selector[data-v-d6fb38e7]::-webkit-scrollbar{display:none}.mini-card[data-v-d6fb38e7]{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-md);cursor:pointer;flex-direction:column;flex:0 0 180px;gap:6px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.mini-card.active[data-v-d6fb38e7]{border-color:var(--color-primary);background:#fff;transform:translateY(-4px);box-shadow:0 8px 20px #4a5d4e1f}.mini-hospital[data-v-d6fb38e7]{font-family:var(--font-serif);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;overflow:hidden}.mini-id[data-v-d6fb38e7]{color:var(--color-text-muted);font-family:monospace;font-size:12px}.mini-info[data-v-d6fb38e7]{color:var(--color-text);margin:2px 0;font-size:13px}.mini-footer[data-v-d6fb38e7]{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.mini-date[data-v-d6fb38e7]{color:var(--color-text-muted);font-size:12px}.mini-status[data-v-d6fb38e7]{border:1px solid;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:500}.mini-status.moving[data-v-d6fb38e7]{color:var(--color-primary);border-color:var(--color-primary);background:0 0}.mini-status.done[data-v-d6fb38e7]{color:#999;background:0 0;border-color:#ccc}.mini-status.pending[data-v-d6fb38e7]{color:#b8860b;background:0 0;border-color:#d4a843}.status-tag[data-v-d6fb38e7]{font-size:12px;font-family:var(--font-serif);border-radius:20px;padding:3px 12px;font-weight:500}.status-tag.moving[data-v-d6fb38e7]{background:var(--color-primary);color:#fff}.status-tag.done[data-v-d6fb38e7]{color:#999;background:0 0;border:1px solid #ccc}.status-tag.pending[data-v-d6fb38e7]{color:#b8860b;background:0 0;border:1px solid #d4a843}.prescription-card[data-v-d6fb38e7]{position:relative;overflow:hidden}.prescription-card[data-v-d6fb38e7]:before{content:"";background:repeating-linear-gradient(45deg, var(--color-primary), var(--color-primary) 10px, var(--color-secondary) 10px, var(--color-secondary) 20px);opacity:.3;height:4px;position:absolute;top:0;left:0;right:0}.card-header[data-v-d6fb38e7]{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.hospital-name[data-v-d6fb38e7]{font-family:var(--font-serif);color:var(--color-primary);font-size:16px;font-weight:600}.divider[data-v-d6fb38e7]{background-color:var(--color-border);height:1px;margin:var(--spacing-md) 0;border:none}.info-grid[data-v-d6fb38e7]{gap:var(--spacing-md);grid-template-columns:1fr 1fr;display:grid}.info-item label[data-v-d6fb38e7]{color:var(--color-text-muted);font-size:11px;font-family:var(--font-serif);margin-bottom:2px;display:block}.info-item .value[data-v-d6fb38e7]{color:var(--color-text);font-size:14px;font-weight:500}.delivery-info[data-v-d6fb38e7]{gap:var(--spacing-sm);flex-direction:column;display:flex}.info-row[data-v-d6fb38e7]{justify-content:space-between;font-size:14px;display:flex}.info-row label[data-v-d6fb38e7]{color:var(--color-text-muted);font-family:var(--font-serif)}.tracking-num[data-v-d6fb38e7]{color:var(--color-primary);letter-spacing:.5px;font-family:monospace}.section-title[data-v-d6fb38e7]{margin-top:0;margin-bottom:var(--spacing-md);font-size:18px}.btn-back[data-v-d6fb38e7]{color:var(--color-text-muted);box-shadow:none;border:1px solid var(--color-border);margin-top:var(--spacing-md);background:0 0}
