body{margin:0;padding:0;font-family:"Arial",sans-serif;background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);min-height:100vh}.header{padding:20px;background-color:#ffffffe6;box-shadow:0 2px 10px #0000001a;position:sticky;top:0;z-index:100}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px}.site-title{flex:1;min-width:200px;display:flex;align-items:center;gap:10px}.site-logo{width:36px;height:36px;object-fit:contain;flex-shrink:0}.site-text h1{margin:0;color:#2c3e50;font-size:1.8rem}.site-subtitle{display:block;font-size:.75rem;color:#999;margin-top:2px;letter-spacing:2px}.nav-menu{display:flex;gap:15px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.nav-btn{padding:8px 16px;background-color:#42b983;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem}.nav-btn:hover{background-color:#359c6d}.logout-btn{background-color:#e74c3c!important}.logout-btn:hover{background-color:#c0392b!important}.user-info{color:#2c3e50;font-weight:500;margin:0 10px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .15s}.user-info:hover{background:rgba(66,185,131,.1)}.profile-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4);display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.profile-card{background:white;border-radius:12px;padding:28px;max-width:380px;width:100%;box-shadow:0 8px 30px #00000026}.profile-card h3{color:#2c3e50;margin:0 0 20px;text-align:center;font-weight:600}.profile-field{margin-bottom:16px}.profile-field label{display:block;color:#888;font-size:13px;margin-bottom:4px}.profile-input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;box-sizing:border-box;transition:border-color .2s}.profile-input:focus{border-color:#42b983;outline:none}.profile-readonly{display:block;padding:10px 12px;background:#f5f5f5;border-radius:6px;color:#666;font-size:14px}.profile-error{background:#ffebee;color:#c62828;padding:8px 12px;border-radius:6px;font-size:13px;margin-bottom:12px}.profile-success{background:#e8f5e9;color:#2e7d32;padding:8px 12px;border-radius:6px;font-size:13px;margin-bottom:12px}.profile-buttons{display:flex;gap:10px;margin-top:20px}.profile-save-btn{flex:1;padding:10px;background:#42b983;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.profile-save-btn:disabled{background:#ccc;cursor:not-allowed}.profile-save-btn:hover:not(:disabled){background:#359c6d}.profile-close-btn{flex:1;padding:10px;background:#f0ede5;color:#5a4e3e;border:none;border-radius:6px;cursor:pointer;font-size:14px}.profile-close-btn:hover{background:#e8e4da}.main-content{min-height:calc(100vh - 150px)}.main-content.no-padding{min-height:0;padding:0}.footer{text-align:center;padding:15px 20px;background-color:#ffffffe6;color:#666;font-size:.9rem}@media (max-width: 768px){.header-content{flex-direction:column;align-items:stretch}.site-title{text-align:center}.site-title h1{font-size:1.5rem}.nav-menu{justify-content:center}.nav-btn{margin:5px}}.modal-overlay[data-v-002b9c15]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1001;padding:20px}.modal-content[data-v-002b9c15]{background:white;border-radius:10px;padding:30px;max-width:500px;width:100%;max-height:85vh;overflow-y:auto}.modal-content h3[data-v-002b9c15]{color:#2c3e50;text-align:center;margin-bottom:20px}.form-field[data-v-002b9c15]{margin-bottom:14px}.form-field label[data-v-002b9c15]{display:block;color:#555;font-size:14px;margin-bottom:4px}.text-input[data-v-002b9c15]{width:100%;padding:9px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.text-input[data-v-002b9c15]:focus{border-color:#42b983;outline:none}.date-selects[data-v-002b9c15]{display:flex;gap:8px}.date-select[data-v-002b9c15]{flex:1;padding:9px 8px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:white;color:#333}.date-select[data-v-002b9c15]:focus{border-color:#42b983;outline:none}.coord-display[data-v-002b9c15]{padding:9px 12px;background:#e8f5e9;border-radius:4px;font-family:monospace;font-size:13px;color:#2e7d32}.coord-hint[data-v-002b9c15]{padding:9px 12px;background:#fff3e0;border-radius:4px;font-size:13px;color:#e65100}.geo-address[data-v-002b9c15]{font-size:11px;color:#999;margin-top:2px;word-break:break-all}.file-input[data-v-002b9c15]{width:100%}.preview-list[data-v-002b9c15]{margin-top:6px}.preview-item[data-v-002b9c15]{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;background:#f9f9f9;border-radius:4px;margin-bottom:4px;font-size:13px}.preview-item span[data-v-002b9c15]{color:#555;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.remove-btn[data-v-002b9c15]{background:#e74c3c;color:#fff;border:none;border-radius:3px;padding:2px 8px;font-size:11px;cursor:pointer}.total-size[data-v-002b9c15]{font-size:12px;color:#888;margin-top:4px}.total-size.over[data-v-002b9c15]{color:#e74c3c;font-weight:bold}.error-message[data-v-002b9c15]{background:#ffebee;color:#c62828;padding:10px;border-radius:6px;margin-bottom:15px;text-align:center}.modal-buttons[data-v-002b9c15]{display:flex;gap:12px;margin-top:20px}.cancel-btn[data-v-002b9c15]{flex:1;padding:12px;background:#f0f0f0;border:none;border-radius:6px;cursor:pointer;font-size:15px}.confirm-btn[data-v-002b9c15]{flex:2;padding:12px;background:#42b983;color:#fff;border:none;border-radius:6px;font-size:15px;font-weight:bold;cursor:pointer}.confirm-btn[data-v-002b9c15]:disabled{background:#ccc;cursor:not-allowed}.home-wrapper[data-v-1eaf3b42]{min-height:100vh;background:linear-gradient(180deg,#fdf8f0 0%,#f5f0e6 10%,#faf7f2 100%);font-family:"PingFang SC","Microsoft YaHei","Hiragino Sans GB",sans-serif}.home-map-container[data-v-1eaf3b42]{position:relative;width:90%;height:70vh;min-height:500px;margin:16px auto 0;border-radius:10px;overflow:hidden;box-shadow:0 2px 20px #00000014}.search-bar[data-v-1eaf3b42]{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:300;width:360px;max-width:calc(100% - 24px)}.search-input-wrap[data-v-1eaf3b42]{position:relative;display:flex;align-items:center}.search-input[data-v-1eaf3b42]{width:100%;padding:10px 36px 10px 14px;border:2px solid rgba(255,255,255,.9);border-radius:8px;font-size:14px;background:rgba(255,255,255,.95);box-shadow:0 2px 12px #0000001f;outline:none;box-sizing:border-box;transition:border-color .2s}.search-input[data-v-1eaf3b42]:focus{border-color:#7db892}.search-clear[data-v-1eaf3b42]{position:absolute;right:10px;top:50%;transform:translateY(-50%);cursor:pointer;color:#999;font-size:18px;line-height:1;user-select:none}.search-clear[data-v-1eaf3b42]:hover{color:#666}.search-dropdown[data-v-1eaf3b42]{position:absolute;top:100%;left:0;right:0;margin:4px 0 0;padding:0;list-style:none;background:rgba(255,255,255,.98);border-radius:8px;box-shadow:0 4px 16px #0000001f;max-height:240px;overflow-y:auto;z-index:301}.search-dropdown-item[data-v-1eaf3b42]{padding:10px 14px;cursor:pointer;border-bottom:1px solid #f0f0f0;display:flex;flex-direction:column;gap:2px;transition:background .1s}.search-dropdown-item[data-v-1eaf3b42]:last-child{border-bottom:none}.search-dropdown-item[data-v-1eaf3b42]:hover{background:#f5f7f3}.search-item-name[data-v-1eaf3b42]{font-size:14px;color:#333}.search-item-addr[data-v-1eaf3b42]{font-size:12px;color:#999}.full-map[data-v-1eaf3b42]{width:100%;height:100%}.map-loading[data-v-1eaf3b42],.map-error[data-v-1eaf3b42]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:white;padding:20px 30px;border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:500;font-size:15px}.map-error[data-v-1eaf3b42]{color:#c87a6a}.legend[data-v-1eaf3b42]{position:absolute;bottom:14px;left:14px;background:rgba(255,255,255,.95);padding:0;border-radius:8px;box-shadow:0 2px 12px #0000001a;z-index:200;font-size:13px;min-width:180px;max-width:280px;max-height:60vh;overflow-y:auto}.legend-toggle[data-v-1eaf3b42]{background:#f0ede5;border:none;border-radius:4px;font-size:11px;padding:3px 8px;cursor:pointer;color:#666;z-index:201;display:block;width:100%;text-align:center}.legend-toggle[data-v-1eaf3b42]:hover{background:#e0d8c8}.legend.legend-collapsed[data-v-1eaf3b42]{min-width:auto;padding:2px 4px}.legend.legend-collapsed .legend-tabs[data-v-1eaf3b42],.legend.legend-collapsed .legend-content[data-v-1eaf3b42]{display:none}.legend.legend-collapsed .legend-toggle[data-v-1eaf3b42]{width:auto;position:static}.legend:not(.legend-collapsed) .legend-toggle[data-v-1eaf3b42]{position:absolute;top:5px;right:5px;width:auto;font-size:10px;padding:2px 5px}.legend-tabs[data-v-1eaf3b42]{display:flex;border-bottom:1px solid #eee;border-radius:8px 8px 0 0;overflow:hidden}.legend-tab-btn[data-v-1eaf3b42]{flex:1;padding:8px 0;border:none;background:none;font-size:13px;color:#999;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;font-weight:500}.legend-tab-btn.active[data-v-1eaf3b42]{color:#5a4e3e;border-bottom-color:#7db892;background:rgba(125,184,146,.06)}.legend-tab-btn[data-v-1eaf3b42]:hover:not(.active){color:#777}.legend-content[data-v-1eaf3b42]{padding:8px 10px;max-height:260px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#ddd transparent}.legend-content[data-v-1eaf3b42]::-webkit-scrollbar{width:4px}.legend-content[data-v-1eaf3b42]::-webkit-scrollbar-thumb{background:#ddd;border-radius:2px}.legend-content[data-v-1eaf3b42]::-webkit-scrollbar-track{background:transparent}.legend-item[data-v-1eaf3b42]{display:flex;align-items:center;gap:6px;margin-bottom:2px;color:#5a4e3e;font-size:13px;padding:2px 6px;border-radius:4px;transition:background .15s}.legend-item[data-v-1eaf3b42]:hover{background:rgba(0,0,0,.04)}.legend-active[data-v-1eaf3b42]{background:rgba(0,0,0,.07);font-weight:bold}.legend-dot[data-v-1eaf3b42]{width:10px;height:10px;border-radius:50%;border:2px solid white;box-shadow:0 1px 3px #0003;flex-shrink:0}.legend-count[data-v-1eaf3b42]{font-size:11px;color:#b0a090}.legend-hint[data-v-1eaf3b42]{font-size:12px;color:#333;font-weight:bold;margin-top:6px}.legend-loading[data-v-1eaf3b42],.legend-error[data-v-1eaf3b42]{padding:10px;color:#999;font-size:13px;text-align:center}.legend-error[data-v-1eaf3b42]{color:#c87a6a}.ranking-list[data-v-1eaf3b42]{display:flex;flex-direction:column;gap:4px}.ranking-item[data-v-1eaf3b42]{padding:7px 8px;border-radius:6px;background:rgba(255,255,255,.6);cursor:pointer;transition:all .15s;border:1px solid transparent}.ranking-item[data-v-1eaf3b42]:hover{background:rgba(125,184,146,.08);border-color:#7db89233}.ranking-item.ranking-active[data-v-1eaf3b42]{background:rgba(255,193,7,.1);border-color:#ffc107}.ranking-header[data-v-1eaf3b42]{display:flex;align-items:center;gap:6px}.ranking-rank[data-v-1eaf3b42]{width:22px;height:22px;border-radius:50%;background:#eee;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#888;flex-shrink:0}.ranking-rank.rank-gold[data-v-1eaf3b42]{background:linear-gradient(135deg,#ffd700,#ffb300);color:#fff}.ranking-rank.rank-silver[data-v-1eaf3b42]{background:linear-gradient(135deg,#c0c0c0,#9e9e9e);color:#fff}.ranking-rank.rank-bronze[data-v-1eaf3b42]{background:linear-gradient(135deg,#cd7f32,#a0522d);color:#fff}.ranking-name[data-v-1eaf3b42]{flex:1;font-size:13px;font-weight:500;color:#5a4e3e;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ranking-score[data-v-1eaf3b42]{font-size:13px;font-weight:700;color:#e67e22}.ranking-species-count[data-v-1eaf3b42]{font-size:11px;color:#999;background:#f0f0f0;padding:1px 6px;border-radius:8px}.ranking-species-detail[data-v-1eaf3b42]{margin-top:6px;display:flex;flex-wrap:wrap;gap:4px}.ranking-species-tag[data-v-1eaf3b42]{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:10px;font-size:11px;background:#fff;border:1.5px solid;color:#555}.ranking-species-dot[data-v-1eaf3b42]{width:7px;height:7px;border-radius:50%;flex-shrink:0}.ranking-species-score[data-v-1eaf3b42]{color:#e67e22;font-weight:600;font-size:10px}.map-actions-top[data-v-1eaf3b42]{position:absolute;top:10px;right:10px;z-index:200;display:flex;gap:8px}.action-top-btn[data-v-1eaf3b42]{padding:7px 15px;background:rgba(125,142,115,.88);color:#fff;border:none;border-radius:4px;font-size:13px;cursor:pointer;box-shadow:0 1px 6px #0000001f;letter-spacing:1px;transition:background .2s}.action-top-btn[data-v-1eaf3b42]:hover{background:rgba(105,122,95,.95)}.marker-detail[data-v-1eaf3b42]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4);display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.detail-card[data-v-1eaf3b42]{background:white;border-radius:10px;padding:25px;max-width:420px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:0 8px 30px #0000001f}.detail-card h3[data-v-1eaf3b42]{color:#5a4e3e;margin-bottom:15px;text-align:center;font-weight:500}.detail-row[data-v-1eaf3b42]{padding:5px 0;font-size:14px;display:flex}.detail-label[data-v-1eaf3b42]{color:#a09888;min-width:80px}.detail-images[data-v-1eaf3b42]{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.detail-img[data-v-1eaf3b42]{width:80px;height:80px;object-fit:cover;border-radius:4px;cursor:pointer;border:1px solid #eee}.detail-av[data-v-1eaf3b42]{margin-top:10px}.detail-av a[data-v-1eaf3b42]{color:#7db892}.detail-buttons[data-v-1eaf3b42]{display:flex;gap:10px;margin-top:20px}.edit-btn[data-v-1eaf3b42]{flex:1;padding:10px;background:#f0ad4e;color:#fff;border:none;border-radius:6px;cursor:pointer}.delete-btn[data-v-1eaf3b42]{flex:1;padding:10px;background:#c87a6a;color:#fff;border:none;border-radius:6px;cursor:pointer}.save-btn[data-v-1eaf3b42]{flex:1;padding:10px;background:#42b983;color:#fff;border:none;border-radius:6px;cursor:pointer}.save-btn[data-v-1eaf3b42]:disabled{background:#ccc;cursor:not-allowed}.close-btn[data-v-1eaf3b42]{flex:1;padding:10px;background:#f0ede5;color:#5a4e3e;border:none;border-radius:6px;cursor:pointer}.form-field[data-v-1eaf3b42]{margin-bottom:12px}.form-field label[data-v-1eaf3b42]{display:block;color:#555;font-size:14px;margin-bottom:4px}.text-input[data-v-1eaf3b42]{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.text-input[data-v-1eaf3b42]:focus{border-color:#7db892;outline:none}.date-selects[data-v-1eaf3b42]{display:flex;gap:6px}.date-select[data-v-1eaf3b42]{flex:1;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:white}.file-input[data-v-1eaf3b42]{width:100%}.error-msg[data-v-1eaf3b42]{background:#ffebee;color:#c62828;padding:8px;border-radius:4px;margin-bottom:10px;font-size:13px}.existing-images[data-v-1eaf3b42]{display:flex;gap:6px;flex-wrap:wrap}.existing-img-wrap[data-v-1eaf3b42]{position:relative;width:60px;height:60px}.existing-img[data-v-1eaf3b42]{width:60px;height:60px;object-fit:cover;border-radius:4px;border:1px solid #ddd}.img-remove-btn[data-v-1eaf3b42]{position:absolute;top:-6px;right:-6px;width:18px;height:18px;background:#e74c3c;color:#fff;border:none;border-radius:50%;font-size:12px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.existing-av[data-v-1eaf3b42]{margin-bottom:4px;display:flex;align-items:center;gap:8px;position:relative}.existing-av a[data-v-1eaf3b42]{color:#7db892;font-size:13px}.existing-av .img-remove-btn[data-v-1eaf3b42]{position:static;margin-left:4px}.preview-list[data-v-1eaf3b42]{margin-top:6px}.preview-item[data-v-1eaf3b42]{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;background:#f9f9f9;border-radius:4px;margin-bottom:4px;font-size:13px}.preview-item span[data-v-1eaf3b42]{color:#555;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.remove-btn[data-v-1eaf3b42]{background:#e74c3c;color:#fff;border:none;border-radius:3px;padding:2px 8px;font-size:11px;cursor:pointer}.site-footer[data-v-1eaf3b42]{text-align:center;padding:40px 20px 36px;max-width:560px;margin:0 auto}.footer-divider[data-v-1eaf3b42]{margin-bottom:20px}.divider-icon[data-v-1eaf3b42]{font-size:18px;color:#c0b090}.footer-text[data-v-1eaf3b42]{font-size:14px;color:#8a7b68;line-height:2.2;letter-spacing:1.5px;margin:0 0 10px}.footer-thanks[data-v-1eaf3b42]{margin-top:24px;padding-top:18px;border-top:1px solid #e8dfd0}.thanks-line[data-v-1eaf3b42]{font-size:12px;color:#a09888;line-height:2;margin:0;letter-spacing:1px}.thanks-line .anni-id[data-v-1eaf3b42]{color:#8a6e5c;font-weight:500;letter-spacing:2px}.footer-friend[data-v-1eaf3b42]{margin-top:18px;font-size:12px;color:#b0a090;letter-spacing:1px}.footer-friend a[data-v-1eaf3b42]{color:#8a7b68;text-decoration:none}.footer-friend a[data-v-1eaf3b42]:hover{color:#6b5a4b;text-decoration:underline}.footer-ending[data-v-1eaf3b42]{margin-top:22px;font-size:12px;color:#b0a090;letter-spacing:3px}.footer-icp[data-v-1eaf3b42]{margin-top:8px;font-size:11px;letter-spacing:1px}.footer-icp a[data-v-1eaf3b42]{color:#c0b090;text-decoration:none}.footer-icp a[data-v-1eaf3b42]:hover{color:#a09080}.footer-bug-report[data-v-1eaf3b42]{margin-top:4px;font-size:11px;color:#c8c0b0;letter-spacing:1px}.login-container[data-v-1db654a2]{display:flex;justify-content:center;align-items:center;min-height:500px;padding:20px}.login-form[data-v-1db654a2]{background:white;padding:30px;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:400px}.login-form h2[data-v-1db654a2]{text-align:center;margin-bottom:25px;color:#333}.form-group[data-v-1db654a2]{margin-bottom:20px}.form-group label[data-v-1db654a2]{display:block;margin-bottom:5px;color:#555;font-weight:500}.form-group input[data-v-1db654a2]{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px;box-sizing:border-box}.form-group input[data-v-1db654a2]:focus{outline:none;border-color:#42b983;box-shadow:0 0 5px #42b9834d}.error-msg[data-v-1db654a2]{color:#e74c3c;font-size:14px;margin-bottom:15px;text-align:center}.submit-btn[data-v-1db654a2]{width:100%;padding:12px;background-color:#42b983;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}.submit-btn[data-v-1db654a2]:hover{background-color:#359c6d}.submit-btn[data-v-1db654a2]:disabled{background-color:#ccc;cursor:not-allowed}.switch-form[data-v-1db654a2]{text-align:center;margin-top:20px}.switch-form a[data-v-1db654a2]{color:#42b983;text-decoration:none}.switch-form a[data-v-1db654a2]:hover{text-decoration:underline}.register-container[data-v-2a1fb3fd]{display:flex;justify-content:center;align-items:center;min-height:500px;padding:20px}.register-form[data-v-2a1fb3fd]{background:white;padding:30px;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:400px}.register-form h2[data-v-2a1fb3fd]{text-align:center;margin-bottom:25px;color:#333}.form-group[data-v-2a1fb3fd]{margin-bottom:20px}.form-group label[data-v-2a1fb3fd]{display:block;margin-bottom:5px;color:#555;font-weight:500}.form-group input[data-v-2a1fb3fd]{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px;box-sizing:border-box}.form-group input[data-v-2a1fb3fd]:focus{outline:none;border-color:#42b983;box-shadow:0 0 5px #42b9834d}.error-msg[data-v-2a1fb3fd]{color:#e74c3c;font-size:14px;margin-bottom:15px;text-align:center}.submit-btn[data-v-2a1fb3fd]{width:100%;padding:12px;background-color:#42b983;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}.submit-btn[data-v-2a1fb3fd]:hover{background-color:#359c6d}.submit-btn[data-v-2a1fb3fd]:disabled{background-color:#ccc;cursor:not-allowed}.switch-form[data-v-2a1fb3fd]{text-align:center;margin-top:20px}.switch-form a[data-v-2a1fb3fd]{color:#42b983;text-decoration:none}.switch-form a[data-v-2a1fb3fd]:hover{text-decoration:underline}.modal-overlay[data-v-91a889d2]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal-content[data-v-91a889d2]{background:white;border-radius:10px;padding:30px;max-width:580px;width:100%;max-height:88vh;overflow-y:auto;box-shadow:0 8px 30px #0003}.modal-content h3[data-v-91a889d2]{color:#2c3e50;margin:0 0 8px;text-align:center}.modal-hint[data-v-91a889d2]{text-align:center;color:#888;font-size:13px;margin-bottom:20px;line-height:1.5}.unknown-option[data-v-91a889d2]{display:flex;gap:20px;justify-content:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #eee}.radio-label[data-v-91a889d2]{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:14px;color:#555}.radio-label input[data-v-91a889d2]{margin:0}.location-selects[data-v-91a889d2]{margin-bottom:15px}.select-group[data-v-91a889d2]{margin-bottom:12px}.select-group label[data-v-91a889d2]{display:block;color:#555;margin-bottom:4px;font-size:14px}.location-select[data-v-91a889d2]{width:100%;padding:9px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:white;color:#333;box-sizing:border-box}.location-select[data-v-91a889d2]:focus{border-color:#42b983;outline:none}.text-input[data-v-91a889d2]{width:100%;padding:9px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.text-input[data-v-91a889d2]:focus{border-color:#42b983;outline:none}.date-selects[data-v-91a889d2]{display:flex;gap:8px}.date-select[data-v-91a889d2]{flex:1;padding:9px 8px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:white;color:#333}.date-select[data-v-91a889d2]:focus{border-color:#42b983;outline:none}.map-section[data-v-91a889d2]{margin-top:12px;padding-top:12px;border-top:1px solid #eee}.map-header[data-v-91a889d2]{display:flex;align-items:center;gap:10px;margin-bottom:8px}.map-header label[data-v-91a889d2]{color:#555;font-size:14px}.map-status[data-v-91a889d2]{font-size:12px;color:#42b983}.map-status.error[data-v-91a889d2]{color:#e74c3c}.map-wrapper[data-v-91a889d2]{position:relative}.map-container[data-v-91a889d2]{width:100%;height:280px;border:1px solid #ddd;border-radius:6px}.map-container.hidden[data-v-91a889d2]{display:none}.map-placeholder[data-v-91a889d2]{text-align:center;padding:30px;background:#fafafa;border:1px dashed #ddd;border-radius:6px;color:#999;font-size:14px}.map-note[data-v-91a889d2]{font-size:12px;color:#bbb;margin-top:8px}.map-actions[data-v-91a889d2]{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.coord-info[data-v-91a889d2]{font-size:13px;color:#42b983;font-family:monospace}.clear-map-btn[data-v-91a889d2]{padding:4px 12px;background:#f0f0f0;color:#e74c3c;border:1px solid #ddd;border-radius:4px;font-size:12px;cursor:pointer}.clear-map-btn[data-v-91a889d2]:hover{background:#fee}.map-tip[data-v-91a889d2]{margin-top:8px;font-size:12px;color:#aaa;text-align:center}.error-message[data-v-91a889d2]{background:#ffebee;color:#c62828;padding:10px;border-radius:6px;text-align:center;font-size:14px;margin-bottom:15px}.modal-buttons[data-v-91a889d2]{display:flex;gap:12px;margin-top:20px}.cancel-btn[data-v-91a889d2]{flex:1;padding:12px;background:#f0f0f0;color:#555;border:none;border-radius:6px;font-size:15px;cursor:pointer}.cancel-btn[data-v-91a889d2]:hover{background:#e0e0e0}.confirm-btn[data-v-91a889d2]{flex:2;padding:12px;background:#42b983;color:#fff;border:none;border-radius:6px;font-size:15px;cursor:pointer;font-weight:bold}.confirm-btn[data-v-91a889d2]:hover{background:#359c6d}.recognize-container[data-v-01ae6288]{max-width:700px;margin:0 auto;padding:30px 20px}.recognize-card[data-v-01ae6288]{background:white;padding:30px;border-radius:8px;box-shadow:0 4px 12px #0000001a}.recognize-card h2[data-v-01ae6288]{color:#2c3e50;text-align:center;margin-bottom:20px}.remaining-info[data-v-01ae6288]{display:flex;gap:15px;justify-content:center;margin-bottom:20px;flex-wrap:wrap}.remaining-badge[data-v-01ae6288]{background:#e8f5e9;color:#2e7d32;padding:6px 14px;border-radius:20px;font-size:14px}.remaining-badge.daily[data-v-01ae6288]{background:#e3f2fd;color:#1565c0}.species-section[data-v-01ae6288]{margin-bottom:20px}.species-section h4[data-v-01ae6288]{color:#666;margin-bottom:10px;font-size:14px}.species-tags[data-v-01ae6288]{display:flex;flex-wrap:wrap;gap:6px}.species-tag[data-v-01ae6288]{background:#f0f0f0;padding:4px 10px;border-radius:12px;font-size:13px;color:#555}.upload-section[data-v-01ae6288]{margin-bottom:20px}.upload-area[data-v-01ae6288]{border:2px dashed #ccc;border-radius:8px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .3s;margin-bottom:15px}.upload-area[data-v-01ae6288]:hover,.upload-area.dragging[data-v-01ae6288]{border-color:#42b983;background:#f0faf5}.upload-area.hasFile[data-v-01ae6288]{border-color:#42b983;background:#f0faf5}.upload-icon[data-v-01ae6288]{font-size:40px;margin-bottom:10px}.upload-hint[data-v-01ae6288]{color:#999;font-size:13px;margin-top:8px}.file-selected[data-v-01ae6288]{text-align:center}.file-name[data-v-01ae6288]{font-weight:bold;color:#2c3e50;word-break:break-all}.file-size[data-v-01ae6288]{color:#666;font-size:13px;margin:5px 0}.clear-btn[data-v-01ae6288]{padding:4px 14px;background:#e74c3c;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px;margin-top:5px}.predict-btn[data-v-01ae6288]{width:100%;padding:14px;background:#42b983;color:#fff;border:none;border-radius:6px;font-size:18px;cursor:pointer;transition:background .3s}.predict-btn[data-v-01ae6288]:hover:not(:disabled){background:#359c6d}.predict-btn[data-v-01ae6288]:disabled{background:#ccc;cursor:not-allowed}.error-message[data-v-01ae6288]{background:#ffebee;color:#c62828;padding:12px;border-radius:6px;margin-bottom:15px;text-align:center}.result-section[data-v-01ae6288]{margin-top:25px;padding-top:25px;border-top:1px solid #eee}.result-section h3[data-v-01ae6288]{color:#2c3e50;margin-bottom:15px;text-align:center}.result-card[data-v-01ae6288]{display:flex;align-items:center;gap:15px;padding:12px 15px;background:#f9f9f9;border-radius:6px;margin-bottom:8px}.result-card.top-match[data-v-01ae6288]{background:#e8f5e9;border:1px solid #42b983}.result-rank[data-v-01ae6288]{font-size:20px;font-weight:bold;color:#42b983;min-width:40px}.result-info[data-v-01ae6288]{flex:1}.result-label[data-v-01ae6288]{font-size:18px;font-weight:bold;color:#2c3e50}.result-meta[data-v-01ae6288]{display:flex;gap:20px;margin-top:4px;font-size:13px;color:#666}.result-extra[data-v-01ae6288]{display:flex;gap:20px;justify-content:center;margin-top:15px;font-size:13px;color:#888}.confirm-section[data-v-01ae6288]{margin-top:20px;padding-top:20px;border-top:1px solid #eee;text-align:center}.contribute-check[data-v-01ae6288]{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:15px;font-size:14px;color:#555;cursor:pointer}.contribute-check input[data-v-01ae6288]{margin:0}.confirm-buttons[data-v-01ae6288]{display:flex;gap:10px;justify-content:center}.confirm-result-btn[data-v-01ae6288]{padding:12px 40px;background:#2c3e50;color:#fff;border:none;border-radius:6px;font-size:16px;cursor:pointer;font-weight:bold}.confirm-result-btn[data-v-01ae6288]:hover{background:#1a252f}.confirmed-hint[data-v-01ae6288]{text-align:center;margin-top:20px;padding-top:15px;border-top:1px solid #eee;color:#42b983;font-size:15px}.confirmed-icon[data-v-01ae6288]{font-size:18px}.contributed-text[data-v-01ae6288]{color:#2c3e50}.feedback-entry[data-v-01ae6288]{text-align:center;margin-top:20px;padding-top:20px;border-top:1px solid #eee}.feedback-entry p[data-v-01ae6288]{color:#666;margin-bottom:10px}.feedback-btn[data-v-01ae6288]{padding:10px 24px;background:#ff9800;color:#fff;border:none;border-radius:6px;font-size:15px;cursor:pointer}.feedback-btn[data-v-01ae6288]:hover{background:#f57c00}.history-container[data-v-a652e0de]{max-width:700px;margin:0 auto;padding:30px 20px}.history-card[data-v-a652e0de]{background:white;padding:30px;border-radius:8px;box-shadow:0 4px 12px #0000001a}.history-card h2[data-v-a652e0de]{color:#2c3e50;text-align:center;margin-bottom:20px}.loading-text[data-v-a652e0de],.empty-text[data-v-a652e0de]{text-align:center;color:#999;padding:40px 0}.empty-text a[data-v-a652e0de]{color:#42b983}.history-item[data-v-a652e0de]{display:flex;justify-content:space-between;align-items:center;padding:15px;border:1px solid #eee;border-radius:6px;margin-bottom:10px;cursor:pointer;transition:all .2s}.history-item[data-v-a652e0de]:hover{background:#f5f9ff;border-color:#42b983}.item-main[data-v-a652e0de]{flex:1}.item-name[data-v-a652e0de]{font-weight:bold;color:#2c3e50;word-break:break-all}.item-result[data-v-a652e0de]{font-size:14px;color:#42b983;margin-top:4px}.item-confidence[data-v-a652e0de]{color:#e67e22;font-size:12px;margin-left:8px}.item-location[data-v-a652e0de]{font-size:12px;color:#888;margin-top:2px}.item-time[data-v-a652e0de]{font-size:12px;color:#999;margin-top:4px}.item-status[data-v-a652e0de]{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:15px}.status-tag[data-v-a652e0de]{padding:4px 10px;border-radius:12px;font-size:12px;white-space:nowrap}.status-tag.none[data-v-a652e0de]{background:#f0f0f0;color:#999}.status-tag.corrected[data-v-a652e0de]{background:#e8f5e9;color:#2e7d32}.status-tag.unclear[data-v-a652e0de]{background:#fff3e0;color:#e65100}.status-tag.help[data-v-a652e0de]{background:#e3f2fd;color:#1565c0}.arrow[data-v-a652e0de]{color:#ccc;font-size:18px}.pagination[data-v-a652e0de]{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:20px}.page-btn[data-v-a652e0de]{padding:6px 16px;background:#42b983;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.page-btn[data-v-a652e0de]:disabled{background:#ccc;cursor:not-allowed}.page-info[data-v-a652e0de]{color:#666;font-size:14px}.detail-container[data-v-5e2ea5a6]{max-width:700px;margin:0 auto;padding:30px 20px}.detail-card[data-v-5e2ea5a6]{background:white;padding:30px;border-radius:8px;box-shadow:0 4px 12px #0000001a}.back-btn[data-v-5e2ea5a6]{padding:6px 14px;background:#f0f0f0;color:#555;border:none;border-radius:4px;cursor:pointer;font-size:14px;margin-bottom:15px}.back-btn[data-v-5e2ea5a6]:hover{background:#e0e0e0}.detail-card h2[data-v-5e2ea5a6]{color:#2c3e50;margin-bottom:20px}.detail-card h3[data-v-5e2ea5a6]{color:#2c3e50;margin:20px 0 10px;font-size:16px}.loading-text[data-v-5e2ea5a6],.empty-text[data-v-5e2ea5a6]{text-align:center;color:#999;padding:40px 0}.info-section[data-v-5e2ea5a6]{background:#f9f9f9;padding:15px;border-radius:6px;margin-bottom:15px}.info-row[data-v-5e2ea5a6]{padding:6px 0;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.info-label[data-v-5e2ea5a6]{color:#888;min-width:80px}.info-value[data-v-5e2ea5a6]{color:#2c3e50}.info-value.corrected[data-v-5e2ea5a6]{color:#e65100;font-weight:bold}.info-value.coord[data-v-5e2ea5a6]{font-family:monospace;color:#42b983;font-size:13px}.status-tag[data-v-5e2ea5a6]{padding:4px 10px;border-radius:12px;font-size:12px}.status-tag.none[data-v-5e2ea5a6]{background:#f0f0f0;color:#999}.status-tag.corrected[data-v-5e2ea5a6]{background:#e8f5e9;color:#2e7d32}.status-tag.unclear[data-v-5e2ea5a6]{background:#fff3e0;color:#e65100}.status-tag.help[data-v-5e2ea5a6]{background:#e3f2fd;color:#1565c0}.result-card[data-v-5e2ea5a6]{display:flex;align-items:center;gap:15px;padding:12px 15px;background:#f9f9f9;border-radius:6px;margin-bottom:8px}.result-card.top-match[data-v-5e2ea5a6]{background:#e8f5e9;border:1px solid #42b983}.result-rank[data-v-5e2ea5a6]{font-size:20px;font-weight:bold;color:#42b983;min-width:40px}.result-info[data-v-5e2ea5a6]{flex:1}.result-label[data-v-5e2ea5a6]{font-size:18px;font-weight:bold;color:#2c3e50}.result-meta[data-v-5e2ea5a6]{display:flex;gap:20px;margin-top:4px;font-size:13px;color:#666}.attachments-section[data-v-5e2ea5a6]{margin-bottom:15px}.attach-item[data-v-5e2ea5a6]{padding:6px 0}.attach-item a[data-v-5e2ea5a6]{color:#42b983;word-break:break-all}.feedback-section[data-v-5e2ea5a6]{margin-top:20px;padding-top:20px;border-top:1px solid #eee}.feedback-hint[data-v-5e2ea5a6]{color:#666;font-size:14px;margin-bottom:15px}.feedback-options[data-v-5e2ea5a6]{display:flex;flex-direction:column;gap:8px;margin-bottom:15px}.radio-option[data-v-5e2ea5a6]{display:flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid #ddd;border-radius:6px;cursor:pointer;transition:all .2s}.radio-option[data-v-5e2ea5a6]:hover,.radio-option.active[data-v-5e2ea5a6]{border-color:#42b983;background:#f0faf5}.radio-option input[data-v-5e2ea5a6]{margin:0}.form-field[data-v-5e2ea5a6]{margin-bottom:15px}.form-field label[data-v-5e2ea5a6]{display:block;color:#555;margin-bottom:6px;font-size:14px}.text-input[data-v-5e2ea5a6]{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.text-input[data-v-5e2ea5a6]:focus{border-color:#42b983;outline:none}.file-input[data-v-5e2ea5a6]{width:100%}.attach-preview[data-v-5e2ea5a6]{background:#f9f9f9;padding:10px;border-radius:4px;margin-top:8px}.attach-file[data-v-5e2ea5a6]{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:14px}.attach-size[data-v-5e2ea5a6]{color:#999;font-size:12px}.remove-attach-btn[data-v-5e2ea5a6]{background:#e74c3c;color:#fff;border:none;border-radius:3px;padding:2px 8px;font-size:12px;cursor:pointer}.attach-total[data-v-5e2ea5a6]{margin-top:6px;font-size:13px;color:#666}.attach-total .overlimit[data-v-5e2ea5a6]{color:#e74c3c}.error-message[data-v-5e2ea5a6]{background:#ffebee;color:#c62828;padding:12px;border-radius:6px;margin-bottom:15px;text-align:center}.success-message[data-v-5e2ea5a6]{background:#e8f5e9;color:#2e7d32;padding:12px;border-radius:6px;margin-bottom:15px;text-align:center}.submit-btn[data-v-5e2ea5a6]{width:100%;padding:14px;background:#42b983;color:#fff;border:none;border-radius:6px;font-size:16px;cursor:pointer;transition:background .3s}.submit-btn[data-v-5e2ea5a6]:hover:not(:disabled){background:#359c6d}.submit-btn[data-v-5e2ea5a6]:disabled{background:#ccc;cursor:not-allowed}.feedback-done[data-v-5e2ea5a6]{text-align:center;padding:30px;color:#888;font-size:15px}.cicada-container[data-v-31aeaf14]{max-width:1100px;margin:0 auto;padding:30px 20px}.page-header[data-v-31aeaf14]{text-align:center;margin-bottom:30px}.page-header h2[data-v-31aeaf14]{color:#2c3e50;font-size:28px;margin-bottom:8px}.subtitle[data-v-31aeaf14]{color:#888;font-size:14px}.content-grid[data-v-31aeaf14]{display:grid;grid-template-columns:280px 1fr;gap:24px;align-items:start}.left-panel[data-v-31aeaf14]{position:sticky;top:80px}.card[data-v-31aeaf14]{background:white;border-radius:10px;padding:24px;box-shadow:0 2px 12px #0000000f;margin-bottom:20px}.card h3[data-v-31aeaf14]{color:#2c3e50;font-size:17px;margin-bottom:16px;padding-bottom:10px;border-bottom:2px solid #f0f0f0}.species-list[data-v-31aeaf14]{display:flex;flex-wrap:wrap;gap:8px}.species-tag[data-v-31aeaf14]{background:linear-gradient(135deg,#e8f5e9 0%,#c8e6c9 100%);color:#2e7d32;padding:5px 12px;border-radius:20px;font-size:13px;font-weight:500}.species-count[data-v-31aeaf14]{margin-top:12px;color:#999;font-size:13px}.quota-display[data-v-31aeaf14]{text-align:center;padding:10px 0}.quota-label[data-v-31aeaf14]{color:#888;font-size:14px}.quota-value[data-v-31aeaf14]{font-size:36px;font-weight:700;color:#42b983;margin:0 6px}.quota-value.low[data-v-31aeaf14]{color:#e74c3c}.quota-hint[data-v-31aeaf14]{text-align:center;color:#bbb;font-size:12px;margin-top:6px}.upload-area[data-v-31aeaf14]{border:2px dashed #ddd;border-radius:8px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .3s;min-height:120px;display:flex;align-items:center;justify-content:center}.upload-area[data-v-31aeaf14]:hover,.upload-area.dragging[data-v-31aeaf14]{border-color:#42b983;background:#f9fdf9}.upload-area.hasFile[data-v-31aeaf14]{border-color:#42b983;border-style:solid;background:#f9fdf9}.upload-area.disabled[data-v-31aeaf14]{pointer-events:none;opacity:.5}.upload-disabled-overlay[data-v-31aeaf14]{display:flex;flex-direction:column;align-items:center;padding:16px 20px;margin-bottom:12px;background:#fff8f0;border:1px solid #fde0b7;border-radius:8px}.upload-disabled-icon[data-v-31aeaf14]{margin-bottom:8px}.upload-disabled-text[data-v-31aeaf14]{color:#e67e22;font-size:15px;font-weight:500;margin:0}.upload-disabled-sub[data-v-31aeaf14]{color:#bbb;font-size:12px;margin:4px 0 0}.upload-icon[data-v-31aeaf14]{font-size:36px;display:block;margin-bottom:10px}.upload-placeholder p[data-v-31aeaf14]{color:#666;margin:4px 0}.upload-hint[data-v-31aeaf14]{color:#aaa!important;font-size:12px}.file-info[data-v-31aeaf14]{display:flex;align-items:center;gap:10px;width:100%}.file-icon[data-v-31aeaf14]{font-size:24px}.file-name[data-v-31aeaf14]{flex:1;color:#2c3e50;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size[data-v-31aeaf14]{color:#999;font-size:13px}.clear-file-btn[data-v-31aeaf14]{background:#e74c3c;color:#fff;border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:center}.predict-btn[data-v-31aeaf14]{width:100%;margin-top:16px;padding:12px;background:#42b983;color:#fff;border:none;border-radius:6px;font-size:16px;cursor:pointer;transition:background .3s}.predict-btn[data-v-31aeaf14]:hover:not(:disabled){background:#359c6d}.predict-btn[data-v-31aeaf14]:disabled{background:#ccc;cursor:not-allowed}.info-card h4[data-v-31aeaf14]{color:#2c3e50;font-size:15px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #f0f0f0}.info-section[data-v-31aeaf14]{margin-bottom:10px}.info-title[data-v-31aeaf14]{color:#555;font-size:13px;font-weight:bold;margin:0 0 4px}.info-item[data-v-31aeaf14]{color:#888;font-size:12px;line-height:1.8;margin:0;padding-left:8px}.info-range[data-v-31aeaf14]{color:#e67e22;font-weight:500;margin-right:6px}.loading-text[data-v-31aeaf14]{color:#999;text-align:center;padding:10px}.error-text[data-v-31aeaf14]{color:#e74c3c;font-size:14px;margin-top:10px;text-align:center}.upload-progress-bar[data-v-31aeaf14]{padding:10px 0;text-align:center}.upload-track[data-v-31aeaf14]{width:100%;height:8px;background:#e8e8e8;border-radius:4px;overflow:hidden;margin-bottom:6px}.upload-fill[data-v-31aeaf14]{height:100%;background:#42b983;border-radius:4px;transition:width .3s}.upload-text[data-v-31aeaf14]{font-size:13px;color:#666}.queue-bar[data-v-31aeaf14]{display:flex;align-items:center;gap:8px;background:#fff8f0;border:1px solid #fde0b7;border-radius:8px;padding:10px 16px;margin-bottom:12px}.queue-bar-icon[data-v-31aeaf14]{flex-shrink:0}.queue-bar-text[data-v-31aeaf14]{flex:1;font-size:13px;color:#8a6d3b}.queue-bar-text strong[data-v-31aeaf14]{color:#e67e22;font-size:16px}.summary-row[data-v-31aeaf14]{display:flex;gap:20px;margin-bottom:20px}.summary-item[data-v-31aeaf14]{flex:1;background:#f8f9fa;border-radius:8px;padding:16px;text-align:center}.summary-label[data-v-31aeaf14]{display:block;color:#999;font-size:13px;margin-bottom:6px}.summary-value[data-v-31aeaf14]{font-size:24px;font-weight:700;color:#2c3e50}.results-list[data-v-31aeaf14]{display:flex;flex-direction:column;gap:12px}.result-item[data-v-31aeaf14]{display:flex;align-items:center;gap:14px;padding:14px;border-radius:8px;background:#fafafa;transition:background .2s}.result-item.top[data-v-31aeaf14]{background:linear-gradient(135deg,#fff9e6 0%,#fff3cd 100%);border:1px solid #ffc107}.result-rank[data-v-31aeaf14]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.crown[data-v-31aeaf14]{font-size:24px}.rank-num[data-v-31aeaf14]{background:#eee;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:#888}.result-body[data-v-31aeaf14]{flex:1;min-width:0}.result-label[data-v-31aeaf14]{font-weight:600;font-size:16px;color:#2c3e50;margin-bottom:6px}.result-meta[data-v-31aeaf14]{display:flex;flex-direction:column;gap:4px}.progress-bar[data-v-31aeaf14]{height:6px;background:#eee;border-radius:3px;overflow:hidden}.progress-fill[data-v-31aeaf14]{height:100%;background:linear-gradient(90deg,#42b983 0%,#359c6d 100%);border-radius:3px;transition:width .6s ease}.result-item.top .progress-fill[data-v-31aeaf14]{background:linear-gradient(90deg,#ffc107 0%,#ff9800 100%)}.meta-numbers[data-v-31aeaf14]{display:flex;justify-content:space-between;align-items:baseline;font-size:12px}.confidence[data-v-31aeaf14]{font-weight:700;font-size:15px}.confidence.conf-high[data-v-31aeaf14]{color:#ff5722}.confidence.conf-mid[data-v-31aeaf14]{color:#ff9800}.confidence.conf-low[data-v-31aeaf14]{color:#ffc107}.audio-player[data-v-31aeaf14]{width:100%;height:40px}.confirm-card h3[data-v-31aeaf14]{color:#2c3e50;font-size:17px;margin-bottom:16px;padding-bottom:10px;border-bottom:2px solid #f0f0f0}.confirm-buttons[data-v-31aeaf14]{display:flex;gap:12px;justify-content:center}.confirm-right-btn[data-v-31aeaf14],.confirm-wrong-btn[data-v-31aeaf14]{flex:1;padding:12px;border:none;border-radius:6px;font-size:15px;cursor:pointer;font-weight:bold}.confirm-right-btn[data-v-31aeaf14]{background:#42b983;color:#fff}.confirm-right-btn[data-v-31aeaf14]:hover{background:#359c6d}.confirm-wrong-btn[data-v-31aeaf14]{background:#ff9800;color:#fff}.confirm-wrong-btn[data-v-31aeaf14]:hover{background:#f57c00}.confirmed-card[data-v-31aeaf14]{text-align:center}.confirmed-text[data-v-31aeaf14]{font-size:15px;color:#42b983;margin-bottom:12px}.feedback-btn[data-v-31aeaf14]{padding:10px 24px;background:#ff9800;color:#fff;border:none;border-radius:6px;font-size:14px;cursor:pointer}.feedback-btn[data-v-31aeaf14]:hover{background:#f57c00}.feedback-card h3[data-v-31aeaf14]{color:#2c3e50;font-size:17px;margin-bottom:12px;padding-bottom:10px;border-bottom:2px solid #f0f0f0}.feedback-hint[data-v-31aeaf14]{color:#666;font-size:14px;margin-bottom:12px}.feedback-options[data-v-31aeaf14]{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.radio-option[data-v-31aeaf14]{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #ddd;border-radius:6px;cursor:pointer;transition:all .2s;font-size:14px}.radio-option[data-v-31aeaf14]:hover,.radio-option.active[data-v-31aeaf14]{border-color:#42b983;background:#f0faf5}.radio-option input[data-v-31aeaf14]{margin:0}.form-field[data-v-31aeaf14]{margin-bottom:14px}.form-field label[data-v-31aeaf14]{display:block;color:#555;margin-bottom:6px;font-size:14px}.text-input[data-v-31aeaf14]{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px;box-sizing:border-box}.text-input[data-v-31aeaf14]:focus{border-color:#42b983;outline:none}.file-input[data-v-31aeaf14]{width:100%}.attach-preview[data-v-31aeaf14]{background:#f9f9f9;padding:10px;border-radius:4px;margin-top:6px}.attach-file[data-v-31aeaf14]{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:14px}.attach-size[data-v-31aeaf14]{color:#999;font-size:12px}.remove-attach[data-v-31aeaf14]{background:#e74c3c;color:#fff;border:none;border-radius:3px;padding:2px 8px;font-size:12px;cursor:pointer}.attach-total[data-v-31aeaf14]{margin-top:6px;font-size:13px;color:#666}.attach-total .over[data-v-31aeaf14]{color:#e74c3c}.error-message[data-v-31aeaf14]{background:#ffebee;color:#c62828;padding:10px;border-radius:6px;margin-bottom:14px;font-size:14px}.success-message[data-v-31aeaf14]{background:#e8f5e9;color:#2e7d32;padding:10px;border-radius:6px;margin-bottom:14px;font-size:14px}.submit-btn[data-v-31aeaf14]{width:100%;padding:12px;background:#42b983;color:#fff;border:none;border-radius:6px;font-size:15px;cursor:pointer;font-weight:bold}.submit-btn[data-v-31aeaf14]:hover:not(:disabled){background:#359c6d}.submit-btn[data-v-31aeaf14]:disabled{background:#ccc;cursor:not-allowed}@media (max-width: 768px){.content-grid[data-v-31aeaf14]{grid-template-columns:1fr}.left-panel[data-v-31aeaf14]{position:static}.summary-row[data-v-31aeaf14]{flex-direction:column;gap:10px}}.story-wrapper[data-v-69965d2a]{min-height:100vh;background:#faf7f2;font-family:"PingFang SC","Microsoft YaHei","Hiragino Sans GB",sans-serif;padding-bottom:40px}.intro-banner[data-v-69965d2a]{background:#f5f3ed;padding:36px 20px 32px;text-align:center;border-bottom:3px dashed #d4c8a8}.intro-content[data-v-69965d2a]{max-width:680px;margin:0 auto}.intro-title[data-v-69965d2a]{font-size:2rem;color:#5d4e37;margin:0 0 6px;font-weight:600;letter-spacing:3px}.intro-subtitle[data-v-69965d2a]{font-size:1.1rem;color:#8b7355;margin:0 0 20px;font-style:italic;letter-spacing:2px}.intro-text p[data-v-69965d2a]{font-size:.95rem;color:#6b5d4f;line-height:2;margin:0 0 4px}.intro-encourage[data-v-69965d2a]{margin-top:18px;padding:10px 20px;background:rgba(255,255,255,.6);border-radius:20px;font-size:.85rem;color:#8b7355;display:inline-block}.map-section[data-v-69965d2a]{max-width:1200px;margin:0 auto;padding:20px 20px 0}.map-header[data-v-69965d2a]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:12px}.map-header h3[data-v-69965d2a]{margin:0;font-size:1.15rem;color:#5d4e37;font-weight:600}.map-hint[data-v-69965d2a]{font-size:.82rem;color:#999}.story-map-container[data-v-69965d2a]{position:relative;width:100%;height:45vh;min-height:350px;border-radius:10px;overflow:hidden;box-shadow:0 2px 16px #0000000f}.story-map[data-v-69965d2a]{width:100%;height:100%}.map-loading[data-v-69965d2a],.map-error[data-v-69965d2a]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:white;padding:20px 30px;border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:500;font-size:15px}.map-error[data-v-69965d2a]{color:#c87a6a}.add-story-btn-top[data-v-69965d2a]{position:absolute;top:12px;right:12px;z-index:200;padding:9px 18px;background:rgba(125,142,115,.9);color:#fff;border:none;border-radius:6px;font-size:13px;cursor:pointer;box-shadow:0 2px 8px #00000026;letter-spacing:1px;transition:background .2s}.add-story-btn-top[data-v-69965d2a]:hover{background:rgba(105,122,95,.95)}.rules-bar[data-v-69965d2a]{max-width:1200px;margin:16px auto 0;padding:0 20px}.rules-content[data-v-69965d2a]{background:#FFF8E1;border:1px solid #FFE082;border-radius:8px;padding:10px 16px;font-size:.82rem;color:#8d6e00;display:flex;align-items:center;gap:8px}.rules-icon[data-v-69965d2a]{font-size:1.1rem;flex-shrink:0}.notes-section[data-v-69965d2a]{max-width:1200px;margin:0 auto;padding:24px 20px}.notes-header[data-v-69965d2a]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:20px}.notes-header h3[data-v-69965d2a]{margin:0;font-size:1.15rem;color:#5d4e37;font-weight:600}.add-story-btn-bottom[data-v-69965d2a]{padding:10px 22px;background:#42b983;color:#fff;border:none;border-radius:6px;font-size:14px;cursor:pointer;letter-spacing:1px;transition:background .2s;box-shadow:0 2px 8px #42b98333}.add-story-btn-bottom[data-v-69965d2a]:hover{background:#359c6d}.notes-loading[data-v-69965d2a],.notes-empty[data-v-69965d2a]{text-align:center;padding:40px;color:#999;font-size:.95rem}.notes-grid[data-v-69965d2a]{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;padding:10px 0}.sticky-note[data-v-69965d2a]{position:relative;padding:20px 18px 16px;border-radius:3px 3px 8px 8px;border:1.5px solid #ddd;box-shadow:2px 3px 8px #0000001a,0 1px 2px #0000000f;cursor:pointer;transition:all .2s;min-height:150px;display:flex;flex-direction:column}.sticky-note[data-v-69965d2a]:hover{box-shadow:4px 6px 16px #00000026;z-index:10}.note-pin[data-v-69965d2a]{position:absolute;top:-6px;left:50%;transform:translate(-50%);width:14px;height:14px;background:radial-gradient(circle,#e74c3c,#c0392b);border-radius:50%;box-shadow:0 1px 3px #0003}.note-title[data-v-69965d2a]{margin:4px 0 8px;font-size:1rem;color:#4e3e2e;font-weight:600;text-align:center;line-height:1.4}.note-content[data-v-69965d2a]{font-size:.82rem;color:#6b5d4f;line-height:1.7;margin:0 0 10px;flex:1}.note-images-preview[data-v-69965d2a]{display:flex;gap:4px;margin-bottom:8px;align-items:center}.note-thumb[data-v-69965d2a]{width:42px;height:42px;object-fit:cover;border-radius:3px;border:1px solid rgba(0,0,0,.1)}.note-img-more[data-v-69965d2a]{font-size:.75rem;color:#999;background:rgba(0,0,0,.05);padding:2px 6px;border-radius:8px}.note-meta[data-v-69965d2a]{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:8px;border-top:1px dashed rgba(0,0,0,.08)}.note-author[data-v-69965d2a]{font-size:.75rem;color:#999}.note-time[data-v-69965d2a]{font-size:.7rem;color:#bbb}.note-footer[data-v-69965d2a]{display:flex;justify-content:space-between;align-items:center;margin-top:4px;font-size:.72rem}.note-location[data-v-69965d2a]{color:#8b7355;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-replies[data-v-69965d2a]{color:#7db892;margin-left:auto}.modal-overlay[data-v-69965d2a]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.45);display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal-card[data-v-69965d2a]{background:white;border-radius:12px;padding:28px;width:100%;box-shadow:0 8px 30px #00000026;max-height:85vh;overflow-y:auto}.modal-card h3[data-v-69965d2a]{color:#4e3e2e;margin:0 0 20px;text-align:center;font-weight:600}.story-form-card[data-v-69965d2a]{max-width:480px}.detail-card[data-v-69965d2a]{max-width:520px}.form-field[data-v-69965d2a]{margin-bottom:14px}.form-field label[data-v-69965d2a]{display:block;color:#666;font-size:13px;margin-bottom:4px}.required[data-v-69965d2a]{color:#e74c3c}.text-input[data-v-69965d2a]{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;box-sizing:border-box}.text-input[data-v-69965d2a]:focus{border-color:#7db892;outline:none}.text-area[data-v-69965d2a]{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;box-sizing:border-box;resize:vertical;font-family:inherit}.text-area[data-v-69965d2a]:focus{border-color:#7db892;outline:none}.char-count[data-v-69965d2a]{font-size:.7rem;color:#bbb;float:right}.location-display[data-v-69965d2a]{display:block;padding:8px 12px;background:#f5f5f5;border-radius:6px;font-size:13px;color:#666}.privacy-warn[data-v-69965d2a]{margin:8px 0 0;padding:8px 12px;background:#FFF3E0;border:1px solid #FFCC80;border-radius:6px;font-size:.78rem;color:#e65100;line-height:1.6}.file-input[data-v-69965d2a]{width:100%;font-size:13px}.preview-list[data-v-69965d2a]{margin-top:6px}.preview-item[data-v-69965d2a]{display:flex;align-items:center;justify-content:space-between;padding:5px 10px;background:#f9f9f9;border-radius:4px;margin-bottom:4px;font-size:13px}.preview-item span[data-v-69965d2a]{color:#555;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.remove-btn[data-v-69965d2a]{background:#e74c3c;color:#fff;border:none;border-radius:3px;padding:2px 8px;font-size:11px;cursor:pointer}.error-msg[data-v-69965d2a]{background:#ffebee;color:#c62828;padding:8px 12px;border-radius:6px;margin-bottom:10px;font-size:13px}.form-rules[data-v-69965d2a]{text-align:center;font-size:.75rem;color:#c0a060;margin-top:12px}.modal-buttons[data-v-69965d2a]{display:flex;gap:10px}.submit-btn[data-v-69965d2a]{flex:1;padding:11px;background:#42b983;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.submit-btn[data-v-69965d2a]:disabled{background:#ccc;cursor:not-allowed}.submit-btn[data-v-69965d2a]:hover:not(:disabled){background:#359c6d}.cancel-btn[data-v-69965d2a]{flex:1;padding:11px;background:#f0ede5;color:#5a4e3e;border:none;border-radius:6px;cursor:pointer;font-size:14px}.cancel-btn[data-v-69965d2a]:hover{background:#e8e4da}.detail-body[data-v-69965d2a]{margin-bottom:16px}.detail-content[data-v-69965d2a]{font-size:.95rem;color:#4e3e2e;line-height:1.9;white-space:pre-wrap;margin:0 0 14px}.detail-images[data-v-69965d2a]{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.detail-img[data-v-69965d2a]{width:100px;height:100px;object-fit:cover;border-radius:6px;cursor:pointer;border:1px solid #eee;transition:transform .15s}.detail-img[data-v-69965d2a]:hover{transform:scale(1.05)}.detail-av[data-v-69965d2a]{margin-bottom:12px}.detail-audio[data-v-69965d2a]{width:100%}.detail-video[data-v-69965d2a]{width:100%;max-height:300px;border-radius:6px}.detail-info[data-v-69965d2a]{display:flex;flex-wrap:wrap;gap:12px;font-size:.8rem;color:#999}.replies-section[data-v-69965d2a]{border-top:1px solid #eee;padding-top:14px;margin-top:14px}.replies-section h4[data-v-69965d2a]{margin:0 0 12px;font-size:.95rem;color:#5d4e37}.replies-empty[data-v-69965d2a]{text-align:center;padding:16px;color:#ccc;font-size:.85rem}.reply-item[data-v-69965d2a]{padding:10px 12px;background:#fafaf7;border-radius:8px;margin-bottom:8px}.reply-header[data-v-69965d2a]{display:flex;align-items:center;gap:8px;margin-bottom:4px}.reply-author[data-v-69965d2a]{font-size:.8rem;font-weight:600;color:#8b7355}.reply-time[data-v-69965d2a]{font-size:.7rem;color:#ccc}.reply-delete-btn[data-v-69965d2a]{margin-left:auto;background:none;border:none;color:#ccc;cursor:pointer;font-size:16px;padding:0 4px}.reply-delete-btn[data-v-69965d2a]:hover{color:#e74c3c}.reply-content[data-v-69965d2a]{font-size:.88rem;color:#555;line-height:1.6;margin:0;white-space:pre-wrap}.author-tag[data-v-69965d2a]{display:inline-block;background:#42b983;color:#fff;font-size:.65rem;padding:1px 6px;border-radius:3px;font-weight:500;vertical-align:middle}.reply-mention[data-v-69965d2a]{color:#7db892;font-weight:500}.reply-actions[data-v-69965d2a]{margin-top:6px}.reply-to-btn[data-v-69965d2a]{background:none;border:none;color:#aaa;font-size:.72rem;cursor:pointer;padding:0}.reply-to-btn[data-v-69965d2a]:hover{color:#7db892}.reply-to-indicator[data-v-69965d2a]{display:flex;align-items:center;gap:8px;font-size:.8rem;color:#8b7355;background:#f5f0e8;padding:6px 10px;border-radius:4px;margin-bottom:6px}.cancel-reply-to-btn[data-v-69965d2a]{background:none;border:none;color:#c87a6a;font-size:.72rem;cursor:pointer;padding:0}.cancel-reply-to-btn[data-v-69965d2a]:hover{color:#e74c3c}.reply-image-wrap[data-v-69965d2a]{margin-top:6px}.reply-image[data-v-69965d2a]{max-width:150px;max-height:150px;object-fit:cover;border-radius:6px;cursor:pointer;border:1px solid #eee}.reply-form[data-v-69965d2a]{margin-top:14px;padding-top:12px;border-top:1px solid #f0f0f0}.reply-textarea[data-v-69965d2a]{font-size:13px}.reply-form-row[data-v-69965d2a]{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}.reply-image-label[data-v-69965d2a]{font-size:.8rem;color:#999;cursor:pointer;padding:4px 10px;background:#f5f5f5;border-radius:4px;transition:background .15s}.reply-image-label[data-v-69965d2a]:hover{background:#eee}.reply-file-input[data-v-69965d2a]{display:none}.reply-img-name[data-v-69965d2a]{font-size:.75rem;color:#666;display:flex;align-items:center;gap:4px}.reply-submit-btn[data-v-69965d2a]{margin-left:auto;padding:7px 20px;background:#7db892;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px}.reply-submit-btn[data-v-69965d2a]:disabled{background:#ccc;cursor:not-allowed}.reply-submit-btn[data-v-69965d2a]:hover:not(:disabled){background:#5d9a72}.detail-actions[data-v-69965d2a]{display:flex;gap:10px;margin-top:16px;padding-top:12px;border-top:1px solid #eee}.delete-btn[data-v-69965d2a]{flex:1;padding:10px;background:#c87a6a;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px}.delete-btn[data-v-69965d2a]:hover{background:#b05a4a}.close-btn[data-v-69965d2a]{flex:1;padding:10px;background:#f0ede5;color:#5a4e3e;border:none;border-radius:6px;cursor:pointer;font-size:14px}.close-btn[data-v-69965d2a]:hover{background:#e8e4da}@media (max-width: 768px){.intro-title[data-v-69965d2a]{font-size:1.4rem}.intro-subtitle[data-v-69965d2a]{font-size:.95rem}.intro-text p[data-v-69965d2a]{font-size:.85rem}.story-map-container[data-v-69965d2a]{height:35vh;min-height:280px}.notes-grid[data-v-69965d2a]{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.sticky-note[data-v-69965d2a]{padding:16px 14px 12px;min-height:130px}.modal-card[data-v-69965d2a]{padding:20px}}
