.app[data-v-e212a7a0]{min-height:100vh}.bottom-nav[data-v-e212a7a0]{position:fixed;bottom:0;left:0;right:0;height:56px;background:var(--card);border-top:1px solid var(--border);display:flex;justify-content:space-around;align-items:center;padding-bottom:env(safe-area-inset-bottom);z-index:100}.nav-item[data-v-e212a7a0]{display:flex;flex-direction:column;align-items:center;color:var(--text-muted);font-size:.75rem;padding:6px 12px}.nav-item .icon[data-v-e212a7a0]{font-size:1.25rem;margin-bottom:2px}.nav-item.active[data-v-e212a7a0]{color:var(--primary)}.fade-enter-active[data-v-e212a7a0],.fade-leave-active[data-v-e212a7a0]{transition:opacity .15s ease}.fade-enter-from[data-v-e212a7a0],.fade-leave-to[data-v-e212a7a0]{opacity:0}:root{--bg: #0f1419;--card: #1a2332;--border: #2d3a4f;--primary: #3b82f6;--primary-hover: #2563eb;--text: #e7e9ea;--text-muted: #8b98a5;--success: #22c55e;--warning: #eab308;--danger: #ef4444;--radius: 12px;--font: "Noto Sans SC", -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--text);min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased}#app{min-height:100vh;padding-bottom:env(safe-area-inset-bottom,0)}a{color:var(--primary);text-decoration:none}input,select,textarea,button{font-family:inherit;font-size:1rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:var(--radius);border:none;font-weight:500;cursor:pointer;transition:background .2s}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-block{width:100%}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:12px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;color:var(--text-muted);font-size:.9rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary)}.page{padding:16px 16px 80px;max-width:480px;margin:0 auto}.page-title{font-size:1.5rem;font-weight:600;margin-bottom:20px}.empty-tip{text-align:center;color:var(--text-muted);padding:40px 20px}
