.toast-container[data-v-fffac7fc]{position:fixed;top:80px;left:50%;transform:translate(-50%);padding:12px 20px;border-radius:8px;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;z-index:9999;box-shadow:0 4px 12px #00000026}.toast-success[data-v-fffac7fc]{background:#10b981;color:#fff}.toast-error[data-v-fffac7fc]{background:#ef4444;color:#fff}.toast-warning[data-v-fffac7fc]{background:#f59e0b;color:#fff}.toast-info[data-v-fffac7fc]{background:#3b82f6;color:#fff}.toast-fade-enter-active[data-v-fffac7fc],.toast-fade-leave-active[data-v-fffac7fc]{transition:all .3s ease}.toast-fade-enter-from[data-v-fffac7fc],.toast-fade-leave-to[data-v-fffac7fc]{opacity:0;transform:translate(-50%) translateY(-20px)}.confirm-overlay[data-v-3b49bfbd]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999}.confirm-modal[data-v-3b49bfbd]{width:90%;max-width:320px;background:var(--bg-primary);border-radius:16px;padding:24px;text-align:center}.confirm-icon[data-v-3b49bfbd]{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.confirm-icon i[data-v-3b49bfbd]{font-size:28px}.icon-warning[data-v-3b49bfbd]{background:#f59e0b1a;color:#f59e0b}.icon-danger[data-v-3b49bfbd]{background:#ef44441a;color:#ef4444}.icon-info[data-v-3b49bfbd]{background:#3b82f61a;color:#3b82f6}.icon-success[data-v-3b49bfbd]{background:#10b9811a;color:#10b981}.confirm-modal h3[data-v-3b49bfbd]{font-size:18px;font-weight:600;margin-bottom:8px;color:var(--text-primary)}.confirm-modal p[data-v-3b49bfbd]{font-size:14px;color:var(--text-secondary);margin-bottom:20px}.confirm-buttons[data-v-3b49bfbd]{display:flex;gap:12px}.confirm-buttons .btn[data-v-3b49bfbd]{flex:1;padding:12px 16px;font-size:15px;font-weight:500;border:none;border-radius:8px;cursor:pointer}.btn-secondary[data-v-3b49bfbd]{background:var(--bg-tertiary);color:var(--text-primary)}.btn-primary[data-v-3b49bfbd]{background:var(--primary);color:#fff}.btn-danger[data-v-3b49bfbd]{background:#ef4444;color:#fff}.btn-warning[data-v-3b49bfbd]{background:#f59e0b;color:#fff}.btn-success[data-v-3b49bfbd]{background:#10b981;color:#fff}.confirm-fade-enter-active[data-v-3b49bfbd],.confirm-fade-leave-active[data-v-3b49bfbd]{transition:all .3s ease}.confirm-fade-enter-from[data-v-3b49bfbd],.confirm-fade-leave-to[data-v-3b49bfbd]{opacity:0}.confirm-fade-enter-from .confirm-modal[data-v-3b49bfbd],.confirm-fade-leave-to .confirm-modal[data-v-3b49bfbd]{transform:scale(.9)}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #3b82f6;--primary-dark: #2563eb;--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--text-primary: #1f2937;--text-secondary: #6b7280;--text-muted: #9ca3af;--bg-primary: #ffffff;--bg-secondary: #f9fafb;--bg-tertiary: #f3f4f6;--border-color: #e5e7eb;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px)}[data-theme=dark]{--primary: #60a5fa;--primary-dark: #4f46d5;--success: #34d399;--warning: #fbbf24;--danger: #f87171;--text-primary: #f3f4f6;--text-secondary: #9ca3af;--text-muted: #6b7280;--bg-primary: #1f2937;--bg-secondary: #111827;--bg-tertiary: #1f2937;--border-color: #374151;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4)}html{font-size:16px;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--bg-secondary);color:var(--text-primary);line-height:1.5;min-height:100vh;transition:background-color .3s,color .3s}#app{min-height:100vh}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;font-size:16px;font-weight:500;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .2s;min-height:48px;text-decoration:none}.btn-primary{background:var(--primary);color:#fff}.btn-primary:active{background:var(--primary-dark);transform:scale(.98)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary)}.btn-danger{background:var(--danger);color:#fff}.btn-block{width:100%}.input-group{margin-bottom:16px}.input-group label{display:block;font-size:14px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.input-group input,.input-group select,.input-group textarea{width:100%;padding:14px 16px;font-size:16px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);transition:border-color .2s;-webkit-appearance:none}.input-group input:focus,.input-group select:focus,.input-group textarea:focus{outline:none;border-color:var(--primary)}.card{background:var(--bg-primary);border-radius:var(--radius-lg);padding:16px;margin-bottom:12px;box-shadow:var(--shadow-sm)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.card-title{font-size:16px;font-weight:600;color:var(--text-primary)}.badge{display:inline-flex;align-items:center;padding:4px 10px;font-size:12px;font-weight:500;border-radius:20px}.badge-success{background:#10b9811a;color:var(--success)}.badge-warning{background:#f59e0b1a;color:var(--warning)}.badge-danger{background:#ef44441a;color:var(--danger)}.badge-primary{background:#3b82f61a;color:var(--primary)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state i{font-size:48px;color:var(--text-muted);margin-bottom:16px}.empty-state h3{font-size:18px;color:var(--text-primary);margin-bottom:8px}.empty-state p{font-size:14px;color:var(--text-secondary)}.loading-spinner{display:flex;align-items:center;justify-content:center;padding:48px}.spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}.slide-up-enter-active,.slide-up-leave-active{transition:all .3s ease}.slide-up-enter-from,.slide-up-leave-to{opacity:0;transform:translateY(20px)}
