@charset "UTF-8";.tab-bar[data-v-11d1f519]{position:fixed;bottom:0;left:0;right:0;height:calc(60px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#fff;display:flex;align-items:flex-start;box-shadow:0 -2px 12px #3a5a401a;z-index:100}.tab-item[data-v-11d1f519]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 0;text-decoration:none;color:#9a9a8a;font-size:11px;position:relative;transition:color .2s ease}.tab-item.active[data-v-11d1f519]{color:#3a5a40}.tab-item.active .tab-icon[data-v-11d1f519]{transform:scale(1.1)}.tab-icon[data-v-11d1f519]{font-size:22px;line-height:1;margin-bottom:3px;transition:transform .2s ease}.tab-label[data-v-11d1f519]{font-weight:500;line-height:1}.badge-dot[data-v-11d1f519]{position:absolute;top:6px;right:calc(50% - 16px);width:8px;height:8px;background:#f56c6c;border-radius:50%}.h5-app{width:100%;height:100%;display:flex;flex-direction:column;background:#faf8f5;overflow:hidden}.h5-page{flex:1;overflow:hidden;display:flex;flex-direction:column}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body{font-family:PingFang SC,Source Han Sans CN,Microsoft YaHei,sans-serif;background:#faf8f5;color:#333;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}#app{width:100%;height:100%;display:flex;flex-direction:column;max-width:100vw;overflow:hidden}.scroll-area{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:calc(70px + env(safe-area-inset-bottom))}.btn-primary,.btn-secondary{display:flex;align-items:center;justify-content:center;width:100%;height:48px;background:linear-gradient(135deg,#3a5a40,#7a7f5a);color:#fff;border:none;border-radius:16px;font-size:17px;font-weight:600;font-family:PingFang SC,Source Han Sans CN,Microsoft YaHei,sans-serif;cursor:pointer;transition:opacity .15s ease,transform .15s ease;gap:8px}.btn-primary:active,.btn-secondary:active{opacity:.85;transform:scale(.98)}.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:transparent;border:2px solid #A4AA78;color:#3a5a40}.h5-card{background:#fff;border-radius:16px;padding:16px;box-shadow:0 2px 8px #3a5a4014;margin-bottom:16px}.h5-input{width:100%;height:48px;padding:0 16px;border:1.5px solid rgba(164,170,120,.3);border-radius:12px;font-size:16px;font-family:PingFang SC,Source Han Sans CN,Microsoft YaHei,sans-serif;background:#fff;color:#333;transition:border-color .15s ease}.h5-input:focus{outline:none;border-color:#a4aa78}.h5-input::placeholder{color:#9a9a8a}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#f56c6c;color:#fff;border-radius:10px;font-size:12px;font-weight:700}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;color:#9a9a8a;gap:12px}.empty-state .empty-icon{font-size:48px;opacity:.5}.empty-state .empty-text{font-size:15px}.loading-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.loading-mask .spinner{width:36px;height:36px;border:3px solid rgba(255,255,255,.3);border-top-color:#a4aa78;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.h5-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#304156eb;color:#fff;padding:12px 24px;border-radius:12px;font-size:15px;z-index:10000;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:toastIn .2s ease}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
