.theme-toggle[data-v-72def2c9]{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-2);cursor:pointer;transition:all .15s ease;flex:none}.theme-toggle[data-v-72def2c9]:hover{color:var(--accent);border-color:var(--accent)}.colored-name[data-v-1276fee3]{display:inline-block;font-weight:inherit}.cn-flow[data-v-1276fee3]{animation:cn-flow-shift-1276fee3 3s linear infinite}.cn-rainbow[data-v-1276fee3]{animation:cn-flow-shift-1276fee3 3s linear infinite,cn-rainbow-hue-1276fee3 6s linear infinite}@keyframes cn-flow-shift-1276fee3{0%{background-position:0% 50%}to{background-position:200% 50%}}@keyframes cn-rainbow-hue-1276fee3{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}.user-badge[data-v-4e319606]{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:2px;padding:1px 7px;margin-left:4px;border-radius:4px;font-size:11px;line-height:1.5;font-weight:600;vertical-align:1px;overflow:hidden;white-space:nowrap;flex:none}.ub-text[data-v-4e319606]{position:relative;z-index:1}.ub-icon[data-v-4e319606]{border-radius:3px;object-fit:cover;position:relative;z-index:1}.ub-particles[data-v-4e319606]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.ub-float[data-v-4e319606]{position:fixed;width:160px;min-height:44px;z-index:9999;border-radius:10px;overflow:hidden;background:var(--surface);border:1px solid var(--border);box-shadow:0 12px 40px #00000047;display:flex;align-items:center;justify-content:center;padding:8px;animation:ub-fade-in-4e319606 .15s ease;pointer-events:none}.ub-float-icon[data-v-4e319606]{width:144px;height:144px;object-fit:cover;border-radius:6px;display:block}.ub-float-text[data-v-4e319606]{font-size:18px;font-weight:700;padding:10px 18px;border-radius:6px;white-space:nowrap}@keyframes ub-fade-in-4e319606{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ub-effect-flow[data-v-4e319606]{animation:ub-shift-4e319606 2.5s linear infinite}.ub-effect-rainbow[data-v-4e319606]{animation:ub-shift-4e319606 2.5s linear infinite,ub-hue-4e319606 5s linear infinite}.ub-effect-particles[data-v-4e319606]{animation:ub-shift-4e319606 6s linear infinite}@keyframes ub-shift-4e319606{0%{background-position:0% 50%}to{background-position:200% 50%}}@keyframes ub-hue-4e319606{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}.navbar[data-v-02ff12fa]{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.nav-inner[data-v-02ff12fa]{padding-top:10px;padding-bottom:0}.nav-main-row[data-v-02ff12fa]{display:flex;align-items:center;gap:16px;height:44px}.site-title[data-v-02ff12fa]{display:inline-flex;align-items:center;gap:8px;font-size:18px;font-weight:700;color:var(--text);flex:none}.site-title[data-v-02ff12fa]:hover{color:var(--accent)}.site-logo[data-v-02ff12fa]{height:40px;min-height:24px;max-height:64px;width:auto;display:block;object-fit:contain}.search-form[data-v-02ff12fa]{display:flex;align-items:center;flex:1;max-width:380px;margin-left:auto}.search-input[data-v-02ff12fa]{width:100%;height:36px;padding:0 12px;font-size:14px;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;transition:all .15s ease}.search-input[data-v-02ff12fa]:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft)}.search-input[data-v-02ff12fa]::-webkit-search-cancel-button{-webkit-appearance:none}.search-btn[data-v-02ff12fa]{display:none}.nav-actions[data-v-02ff12fa]{display:flex;align-items:center;gap:10px;flex:none}.nav-user-link[data-v-02ff12fa]{font-size:14px;color:var(--text-2);white-space:nowrap}.nav-user-link[data-v-02ff12fa]:hover{color:var(--accent)}.nav-register-link[data-v-02ff12fa]{padding:4px 12px;border:1px solid var(--accent);color:var(--accent);border-radius:var(--radius-sm)}.nav-register-link[data-v-02ff12fa]:hover{color:var(--accent-hover);border-color:var(--accent-hover)}.nav-user[data-v-02ff12fa]{display:inline-flex;align-items:center;gap:7px;color:var(--text);cursor:pointer}.nav-user:hover .nav-nickname[data-v-02ff12fa]{color:var(--accent)}.nav-user-group[data-v-02ff12fa]{display:inline-flex;align-items:center;gap:4px}.nav-user-dropdown[data-v-02ff12fa]{position:relative}.dropdown-menu[data-v-02ff12fa]{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 8px 24px #0000001f;z-index:200}.dropdown-menu[data-v-02ff12fa]:before{content:"";position:absolute;top:-8px;left:0;right:0;height:8px}.dropdown-item[data-v-02ff12fa]{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 16px;font-size:14px;color:var(--text);background:transparent;border:none;text-align:left;cursor:pointer;transition:background .12s ease,color .12s ease}.dropdown-item[data-v-02ff12fa]:hover:not(:disabled){background:var(--surface-2);color:var(--accent)}.dropdown-item[data-v-02ff12fa]:first-child{border-radius:var(--radius-sm) var(--radius-sm) 0 0}.dropdown-item[data-v-02ff12fa]:last-child{border-radius:0 0 var(--radius-sm) var(--radius-sm)}.dropdown-item[data-v-02ff12fa]:disabled{opacity:.6;cursor:not-allowed}.dropdown-static[data-v-02ff12fa]{flex-direction:column;align-items:flex-start;gap:2px;cursor:default}.dropdown-static[data-v-02ff12fa]:hover{background:transparent;color:var(--text)}.checkin-ok[data-v-02ff12fa]{color:var(--success, #27ae60);font-weight:600}.points-balance[data-v-02ff12fa]{font-size:12px;color:var(--text-2)}.nav-avatar[data-v-02ff12fa]{width:28px;height:28px;border-radius:50%;object-fit:cover;border:1px solid var(--border);flex:none}.nav-avatar-fallback[data-v-02ff12fa]{display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:#fff;background:var(--accent);border-color:transparent}.nav-nickname[data-v-02ff12fa]{display:inline-flex;align-items:center;font-size:14px;max-width:180px;overflow:hidden;white-space:nowrap}.nav-badge[data-v-02ff12fa]{vertical-align:middle}.nav-logout-btn[data-v-02ff12fa]{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-2);cursor:pointer;transition:all .15s ease}.nav-logout-btn[data-v-02ff12fa]:hover{color:var(--danger);border-color:var(--danger)}.nav-user-skeleton[data-v-02ff12fa]{display:inline-block;width:120px;height:28px;border-radius:14px;background:var(--surface-2)}.nav-msg[data-v-02ff12fa]{position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-2);transition:all .15s ease}.nav-msg[data-v-02ff12fa]:hover{color:var(--accent);border-color:var(--accent)}.nav-msg-badge[data-v-02ff12fa]{position:absolute;top:-6px;right:-8px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--danger, #d63031);color:#fff;font-size:10px;line-height:16px;text-align:center;font-weight:700}.icon-btn[data-v-02ff12fa]{display:none;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-2);cursor:pointer}.mobile-search[data-v-02ff12fa]{max-width:none;margin:0 0 10px}.category-nav[data-v-02ff12fa]{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.category-nav[data-v-02ff12fa]::-webkit-scrollbar{display:none}.category-link[data-v-02ff12fa]{padding:9px 13px;font-size:14px;color:var(--text-2);border-bottom:2px solid transparent;white-space:nowrap;transition:color .15s ease,border-color .15s ease}.category-link[data-v-02ff12fa]:hover{color:var(--accent)}.category-link.active[data-v-02ff12fa]{color:var(--accent);font-weight:600;border-bottom-color:var(--accent)}@media(max-width:720px){.desktop-search[data-v-02ff12fa]{display:none}.mobile-search-toggle[data-v-02ff12fa]{display:inline-flex}.site-title[data-v-02ff12fa]{font-size:16px;gap:4px}.site-title-text[data-v-02ff12fa]{display:none}.site-logo[data-v-02ff12fa]{height:calc(var(--logo-h, 40px) - 8px)!important}.category-link[data-v-02ff12fa]{padding:8px 11px;font-size:13.5px}.nav-nickname[data-v-02ff12fa]{display:none}.nav-user-link[data-v-02ff12fa]{font-size:13px}}.site-footer[data-v-2f7ffc14]{border-top:1px solid var(--border);padding:20px 0;text-align:center}.site-footer p[data-v-2f7ffc14]{margin:0}.auth-page-main[data-v-2f7ffc14]{min-height:100vh}:root{--bg: #f5f4f0;--surface: #ffffff;--surface-2: #efeee9;--border: #e3e1d9;--text: #20242a;--text-2: #59616c;--text-3: #8a929d;--accent: #0b6e5c;--accent-hover: #095a4c;--accent-soft: rgba(11, 110, 92, .09);--danger: #c03f38;--danger-soft: rgba(192, 63, 56, .1);--shadow: 0 1px 2px rgba(20, 30, 30, .05), 0 8px 24px -12px rgba(20, 30, 30, .14);--radius: 10px;--radius-sm: 7px;--nav-height: 100px}:root[data-theme=dark]{--bg: #0f1215;--surface: #171b1f;--surface-2: #1f242a;--border: #292f36;--text: #e6e9ec;--text-2: #a1aab4;--text-3: #6b757f;--accent: #35c49b;--accent-hover: #55d5b0;--accent-soft: rgba(53, 196, 155, .13);--danger: #ef6a60;--danger-soft: rgba(239, 106, 96, .15);--shadow: 0 1px 2px rgba(0, 0, 0, .35), 0 10px 30px -14px rgba(0, 0, 0, .6)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.65;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;transition:background-color .25s ease,color .25s ease}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}img{max-width:100%;display:block}h1,h2,h3,h4{margin:0;line-height:1.4;font-weight:650}button{font-family:inherit}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 20px}.page{padding:28px 0 48px;min-height:calc(100vh - var(--nav-height) - 64px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:550;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease;white-space:nowrap}.btn:hover{background:var(--surface-2)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}:root[data-theme=dark] .btn-primary{color:#083027}.btn-danger{color:var(--danger)}.btn-danger:hover{background:var(--danger-soft);border-color:var(--danger)}.btn-sm{padding:5px 11px;font-size:13px}.btn-block{width:100%}.chip{display:inline-flex;align-items:center;padding:2px 10px;font-size:12.5px;line-height:1.7;border-radius:999px;background:var(--surface-2);color:var(--text-2);border:1px solid transparent;cursor:pointer;transition:all .15s ease}.chip:hover{color:var(--accent);border-color:var(--accent)}.chip-active{background:var(--accent-soft);color:var(--accent);font-weight:550}.form-group{margin-bottom:18px}.form-label{display:block;margin-bottom:6px;font-size:14px;font-weight:550;color:var(--text)}.form-label .required{color:var(--danger);margin-left:2px}.form-hint{margin-top:5px;font-size:12.5px;color:var(--text-3)}.form-error{margin-top:5px;font-size:12.5px;color:var(--danger)}.form-control{width:100%;padding:9px 12px;font-size:14px;font-family:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.form-control:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}textarea.form-control{min-height:120px;resize:vertical;line-height:1.6}.form-control.is-invalid{border-color:var(--danger)}.form-control.is-invalid:focus{box-shadow:0 0 0 3px var(--danger-soft)}select.form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-2) 50%),linear-gradient(135deg,var(--text-2) 50%,transparent 50%);background-position:calc(100% - 18px) 55%,calc(100% - 13px) 55%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:34px}.switch{display:inline-flex;align-items:center;gap:9px;cursor:pointer;-webkit-user-select:none;user-select:none}.switch input{position:absolute;opacity:0;width:0;height:0}.switch-track{width:40px;height:22px;background:var(--border);border-radius:999px;position:relative;transition:background-color .2s ease;flex:none}.switch-track:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 1px 3px #00000040}.switch input:checked+.switch-track{background:var(--accent)}.switch input:checked+.switch-track:after{transform:translate(18px)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.alert{padding:10px 14px;border-radius:var(--radius-sm);font-size:14px;margin-bottom:16px}.alert-error{background:var(--danger-soft);color:var(--danger)}.alert-info{background:var(--accent-soft);color:var(--accent)}.text-muted{color:var(--text-2)}.text-small{font-size:13px}.text-center{text-align:center}.flex{display:flex}.flex-between{display:flex;align-items:center;justify-content:space-between;gap:12px}.gap-8{gap:8px}.gap-12{gap:12px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-16{margin-bottom:16px}.empty-state{text-align:center;padding:70px 20px;color:var(--text-3)}.empty-state .empty-icon{font-size:42px;margin-bottom:12px;opacity:.7}.loading-box{padding:60px 0;text-align:center;color:var(--text-3)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
