.header-top[data-v-4854588b]{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.btn-add[data-v-4854588b]{background-color:#4caf50;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;transition:background-color .3s}.btn-add[data-v-4854588b]:hover{background-color:#45a049}.add-modal[data-v-4854588b]{max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.add-form[data-v-4854588b]{display:flex;flex-direction:column;gap:15px}.form-row[data-v-4854588b]{display:flex;gap:15px}.form-row .form-group[data-v-4854588b]{flex:1}.form-group[data-v-4854588b]{display:flex;flex-direction:column;gap:5px}.form-group label[data-v-4854588b]{font-weight:700;font-size:14px;color:#333}.form-group input[data-v-4854588b],.form-group select[data-v-4854588b],.form-group textarea[data-v-4854588b]{padding:10px;border:1px solid #ddd;border-radius:6px;font-size:14px;width:100%;box-sizing:border-box}.form-group input[data-v-4854588b]:focus,.form-group select[data-v-4854588b]:focus,.form-group textarea[data-v-4854588b]:focus{outline:none;border-color:#4caf50}.form-group textarea[data-v-4854588b]{resize:vertical}.form-actions[data-v-4854588b]{display:flex;justify-content:flex-end;gap:10px;margin-top:10px}.btn-submit[data-v-4854588b]{background-color:#4caf50;color:#fff;border:none;padding:10px 24px;border-radius:6px;cursor:pointer;font-size:14px;transition:background-color .3s}.btn-submit[data-v-4854588b]:hover{background-color:#45a049}.btn-cancel[data-v-4854588b]{background-color:#f44336;color:#fff;border:none;padding:10px 24px;border-radius:6px;cursor:pointer;font-size:14px;transition:background-color .3s}.btn-cancel[data-v-4854588b]:hover{background-color:#da190b}:root{--text: #6b6375;--text-h: #08060d;--bg: #ffffff;--border: #e5e4e7;--code-bg: #f4f3ec;--accent: #388e3c;--accent-hover: #2e7d32;--accent-bg: rgba(56, 142, 60, .1);--accent-border: rgba(56, 142, 60, .5);--modal-bg: rgba(0, 0, 0, .5);--card-bg: #ffffff;--shadow: rgba(0, 0, 0, .08) 0 4px 12px;--sans: system-ui, "Segoe UI", Roboto, sans-serif;--heading: system-ui, "Segoe UI", Roboto, sans-serif;--mono: ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (max-width: 1024px){:root{font-size:16px}}@media (prefers-color-scheme: dark){:root{--text: #9ca3af;--text-h: #f3f4f6;--bg: #16171d;--card-bg: #1f2028;--border: #2e303a;--code-bg: #1f2028;--accent: #4caf50;--accent-hover: #66bb6a;--accent-bg: rgba(76, 175, 80, .15);--accent-border: rgba(76, 175, 80, .5);--shadow: rgba(0, 0, 0, .3) 0 10px 15px -3px}}body{margin:0;padding:0;background-color:var(--bg);color:var(--text)}h1,h2,h3,h4{font-family:var(--heading);font-weight:500;color:var(--text-h);margin:0}h2{font-size:24px;line-height:120%;margin-bottom:15px}p{margin:0;line-height:1.6}.auth-wrapper{display:flex;justify-content:center;align-items:center;min-height:100vh;width:100%}.auth-card{background:var(--card-bg);padding:40px;border-radius:12px;border:1px solid var(--border);box-shadow:var(--shadow);width:100%;max-width:380px;text-align:center;box-sizing:border-box}.auth-card h2{margin-bottom:8px;color:var(--text-h)}.auth-card .subtitle{color:var(--text);font-size:14px;margin-bottom:24px}.tab-menu{display:flex;justify-content:space-around;margin-bottom:24px;border-bottom:1px solid var(--border);padding-bottom:8px}.tab-menu span{cursor:pointer;color:var(--text);font-weight:500;font-size:15px;transition:color .2s}.tab-menu span.active{color:var(--accent);border-bottom:2px solid var(--accent);margin-bottom:-10px;padding-bottom:8px;font-weight:600}.auth-form{display:flex;flex-direction:column;gap:16px}.input-group{display:flex;flex-direction:column;text-align:left;gap:6px}.input-group label{font-size:14px;font-weight:600;color:var(--text-h)}.input-group input{width:100%;padding:10px 12px;border:1px solid var(--border);background-color:var(--bg);color:var(--text-h);border-radius:8px;box-sizing:border-box;font-size:15px;outline:none;transition:border-color .25s}.input-group input:focus{border-color:var(--accent)}.btn-submit{width:100%;padding:12px;background-color:var(--accent);color:#fff;border:none;border-radius:8px;font-weight:500;font-size:16px;cursor:pointer;margin-top:10px;transition:background-color .2s}.btn-submit:hover{background-color:var(--accent-hover)}.message{margin-top:15px;padding:10px;border-radius:6px;font-size:14px}.success{background-color:var(--accent-bg);color:var(--accent);border:1px solid var(--accent-border)}.error{background-color:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.main-header{display:flex;justify-content:space-between;align-items:center;background-color:var(--card-bg);padding:15px 40px;border-bottom:1px solid var(--border);box-shadow:var(--shadow)}.header-logo{font-size:24px;font-weight:700;color:var(--accent);letter-spacing:-.5px}.nav-links{display:flex;gap:12px}.nav-btn{background:transparent;border:1px solid transparent;color:var(--text);padding:8px 18px;font-size:15px;font-weight:500;cursor:pointer;border-radius:6px;transition:all .25s ease}.nav-btn:hover{background-color:var(--code-bg);color:var(--text-h)}.nav-btn.active{background-color:var(--accent-bg);color:var(--accent);border-color:var(--accent-border);font-weight:600}.user-info{display:flex;align-items:center;gap:15px;font-size:15px}.user-info strong{color:var(--text-h)}.btn-logout{background-color:var(--code-bg);color:var(--text);border:1px solid var(--border);padding:6px 12px;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.btn-logout:hover{background-color:#ef44441a;color:#ef4444;border-color:#ef444433}.dashboard-container{width:1200px;max-width:100%;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;box-sizing:border-box}.content-container{flex-grow:1;padding:40px 20px;box-sizing:border-box}@media (max-width: 1024px){.main-header{flex-direction:column;gap:15px;padding:15px}.content-container{padding:20px 15px}}.profile-container{max-width:600px;margin:40px auto;padding:20px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a}.profile-card{display:flex;gap:40px;align-items:center}#current-avatar{width:120px;height:120px;border-radius:50%;object-fit:cover;border:3px solid #4caf50;margin-bottom:10px}.avatar-section{display:flex;flex-direction:column;align-items:center}.info-section{flex:1;display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}#bio-input{height:80px;padding:8px;border:1px solid #ccc;border-radius:4px;resize:none}.btn-primary{background:#4caf50;color:#fff;border:none;padding:10px;border-radius:4px;cursor:pointer}.btn-secondary{background:#f0f0f0;color:#333;border:1px solid #ccc;padding:6px 12px;border-radius:4px;cursor:pointer}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:24px;border-radius:8px;text-align:center}.avatar-pool{display:flex;gap:15px;margin:20px 0}.selectable-avatar{width:70px;height:70px;border-radius:50%;cursor:pointer;transition:transform .2s;border:2px solid transparent}.selectable-avatar:hover{transform:scale(1.1)}.selectable-avatar.active{border-color:#4caf50}.btn-cancel{background:#9e9e9e;color:#fff;border:none;padding:6px 16px;border-radius:4px;cursor:pointer}.circle-container{max-width:680px;margin:0 auto}.moment-card{background-color:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:var(--shadow)}.moment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.user-meta{display:flex;align-items:center;gap:12px}.moment-avatar{width:46px;height:46px;border-radius:50%;border:2px solid var(--accent);object-fit:cover}.meta-text{display:flex;flex-direction:column;text-align:left}.meta-text .username{font-weight:700;color:var(--text-h);font-size:15px}.meta-text .time{font-size:12px;color:var(--text);margin-top:2px}.moment-body{text-align:left;font-size:16px;color:var(--text-h);line-height:1.6}.loc-tag{color:#3b82f6;font-weight:500}.bird-tag{color:var(--accent);font-weight:700}.note-box{background-color:var(--code-bg);padding:12px;border-radius:8px;margin-top:10px;font-size:14px;border-left:4px solid var(--border)}.moment-actions{display:flex;gap:20px;border-top:1px solid var(--border);margin-top:15px;padding-top:12px}.action-btn{background:transparent;border:none;color:var(--text);font-size:14px;font-weight:500;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s}.action-btn:hover{background-color:var(--code-bg);color:var(--text-h)}.action-btn.liked{color:#ef4444;font-weight:700}.comment-section{background-color:var(--code-bg);border-radius:8px;padding:12px;margin-top:12px;text-align:left;font-size:14px}.comment-item{margin-bottom:6px;line-height:1.4;color:var(--text-h)}.comment-item strong{color:var(--accent)}.comment-form{display:flex;gap:8px;margin-top:10px}.comment-form input{flex:1;padding:6px 12px;border:1px solid var(--border);background-color:var(--bg);color:var(--text-h);border-radius:6px;outline:none;font-size:13px}.comment-form button{background-color:var(--accent);color:#fff;border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:13px}.moment-actions{display:flex;gap:16px;margin-top:15px;padding-top:12px;border-top:1px dashed var(--border)}.action-btn{background:transparent;border:none;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease;padding:6px 12px;border-radius:6px}.action-btn:not(.liked){filter:grayscale(100%);color:#8e8a94;opacity:.7}.action-btn:not(.liked):hover{background-color:var(--code-bg);filter:grayscale(50%);opacity:.9}.action-btn.liked{filter:grayscale(0%);color:#e63946;opacity:1;font-weight:600}.action-btn.liked:hover{background-color:#e6394614;opacity:.95}.stats-board{display:flex;gap:20px;margin-bottom:30px}.stat-card{flex:1;background-color:var(--card-bg);padding:20px;border-radius:12px;border:1px solid var(--border);box-shadow:var(--shadow);text-align:center}.stat-card h3{font-size:15px;color:var(--text);margin-bottom:8px}.stat-num{font-size:32px;font-weight:700;color:var(--accent);margin:0}.footprint-workspace{display:flex;gap:30px;align-items:flex-start}.form-box-left{width:400px;min-width:400px;background-color:var(--card-bg);padding:25px;border-radius:12px;border:1px solid var(--border);box-shadow:var(--shadow);box-sizing:border-box}.form-box-left h3{margin-top:0;margin-bottom:20px;font-size:18px;color:var(--text-h);border-left:4px solid var(--accent);padding-left:10px}.form-item{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;text-align:left}.form-item label{font-size:14px;font-weight:600;color:var(--text-h)}.form-item input,.form-item textarea{width:100%;padding:10px 12px;border:1px solid var(--border);background-color:var(--bg);color:var(--text-h);border-radius:8px;box-sizing:border-box;font-size:14px;outline:none;font-family:inherit;transition:border-color .25s}.form-item textarea{height:90px;resize:none}.form-item input:focus,.form-item textarea:focus{border-color:var(--accent)}.btn-primary-f{width:100%;padding:12px;background-color:var(--accent);color:#fff;border:none;border-radius:8px;font-weight:500;font-size:15px;cursor:pointer;transition:background-color .2s}.btn-primary-f:hover{background-color:var(--accent-hover)}.list-box-right{flex:1;background-color:var(--card-bg);padding:25px;border-radius:12px;border:1px solid var(--border);box-shadow:var(--shadow);box-sizing:border-box;min-height:450px}.list-box-right h3{margin-top:0;margin-bottom:20px;font-size:18px;color:var(--text-h);border-left:4px solid var(--accent);padding-left:10px}.footprint-timeline{display:flex;flex-direction:column;gap:16px}.timeline-item{background-color:var(--bg);padding:16px;border-radius:8px;border:1px solid var(--border);text-align:left}.item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.bird-name-tag{font-weight:600;color:var(--accent);font-size:16px}.item-time{font-size:13px;color:var(--text)}.item-loc,.item-desc{font-size:14px;margin:4px 0;color:var(--text-h)}.empty-tip{text-align:center;color:var(--text);padding:60px 0;font-size:15px}@media (max-width: 968px){.footprint-workspace{flex-direction:column}.form-box-left{width:100%;min-width:100%}}.btn-delete{background-color:#ff4d4f;color:#fff;border:none;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:12px;margin-left:10px}.btn-delete:hover{background-color:#d9363e}.upload-section{margin-bottom:16px}.upload-label{display:inline-block;padding:10px 16px;background-color:var(--accent);color:#fff;border-radius:8px;cursor:pointer;font-size:14px;transition:background-color .2s}.upload-label:hover{background-color:var(--accent-hover)}.upload-label input[type=file]{display:none}.preview-image{position:relative;margin-top:10px;max-width:200px}.preview-image img{width:100%;border-radius:8px;border:1px solid var(--border)}.btn-remove{position:absolute;top:-8px;right:-8px;width:24px;height:24px;background-color:#ff4d4f;color:#fff;border:none;border-radius:50%;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center}.encyclopedia-container{max-width:1000px;margin:0 auto}.wiki-header{background-color:var(--card-bg);border:1px solid var(--border);padding:24px;border-radius:12px;margin-bottom:24px;box-shadow:var(--shadow)}.search-bar-row{display:flex;flex-direction:column;gap:16px;margin-top:15px}.search-input{padding:12px;border:1px solid var(--border);background-color:var(--bg);color:var(--text-h);border-radius:8px;font-size:15px;outline:none}.search-input:focus{border-color:var(--accent)}.filter-group{display:flex;gap:10px;flex-wrap:wrap}.filter-chip{background-color:var(--code-bg);border:1px solid transparent;color:var(--text);padding:6px 14px;border-radius:20px;cursor:pointer;font-size:14px;transition:all .2s}.filter-chip:hover{background-color:var(--border)}.filter-chip.active{background-color:var(--accent);color:#fff;font-weight:500}.bird-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.bird-wiki-card{background-color:var(--card-bg);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}.card-image-wrapper{position:relative;height:180px}.bird-photo{width:100%;height:100%;object-fit:cover}.habit-badge{position:absolute;top:12px;right:12px;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;padding:3px 8px;font-size:12px;border-radius:4px}.card-info{padding:16px;display:flex;flex-direction:column;flex:1;text-align:left}.scientific-name{font-size:13px;color:var(--text);margin-top:4px;margin-bottom:10px}.summary{font-size:14px;color:var(--text-h);line-height:1.5;flex-grow:1}.card-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);margin-top:15px;padding-top:12px}.level-tag{font-size:12px;color:#e67e22;font-weight:500}.btn-more{background:transparent;border:none;color:var(--accent);cursor:pointer;font-size:14px;font-weight:600}.btn-more:hover{color:var(--accent-hover)}.text-left-modal{text-align:left;max-width:500px}.modal-detail{margin-top:10px;font-size:15px;line-height:1.5}
