.vote-header[data-v-b4f60f89]{text-align:center;padding:3vh 20px 2vh;position:relative;z-index:10}.title[data-v-b4f60f89]{font-size:clamp(24px,4vw,36px);color:#fff;font-weight:700;letter-spacing:4px;text-shadow:0 2px 10px rgba(0,0,0,.15)}.subtitle[data-v-b4f60f89]{color:#ffffffd9;margin-top:8px;font-size:clamp(14px,2vw,18px);font-weight:300}.waiting-screen[data-v-b4f60f89]{display:flex;align-items:center;justify-content:center;min-height:88vh;padding:20px}.waiting-card[data-v-b4f60f89]{background:#ffffff1f;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:5vh 4vw;text-align:center;border:1px solid rgba(255,255,255,.18);max-width:460px;width:90%;display:flex;flex-direction:column;align-items:center;gap:12px}.waiting-icon[data-v-b4f60f89]{font-size:clamp(48px,8vw,72px);margin-bottom:4px}.waiting-card h2[data-v-b4f60f89]{color:#fff;font-size:clamp(20px,3vw,28px)}.waiting-card p[data-v-b4f60f89]{color:#ffffffb3;font-size:clamp(13px,1.8vw,16px)}.btn-start[data-v-b4f60f89]{background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff;font-size:clamp(18px,2.5vw,24px);font-weight:600;padding:clamp(14px,2vh,20px) clamp(40px,6vw,64px);border:none;border-radius:16px;cursor:pointer;transition:all .3s;box-shadow:0 6px 20px #11998e66;font-family:inherit;letter-spacing:2px}.btn-start[data-v-b4f60f89]:active{transform:scale(.96)}.admin-entry[data-v-b4f60f89]{font-size:13px;padding:8px 20px}.browsing-screen[data-v-b4f60f89]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:90vh;padding:1vh 20px 2vh;position:relative;z-index:10}.card-stack[data-v-b4f60f89]{position:relative;width:min(70vw,420px);height:min(70vh,620px)}.ta-card[data-v-b4f60f89]{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 10px 40px #00000026;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.ta-card[data-v-b4f60f89]:active{cursor:grabbing}.ta-photo[data-v-b4f60f89]{width:100%;height:70%;object-fit:cover;display:block;background:#e8eaf6}.ta-info[data-v-b4f60f89]{padding:clamp(10px,1.5vh,20px) clamp(14px,2vw,24px) clamp(4px,.5vh,10px);text-align:center;background:#fff}.ta-name[data-v-b4f60f89]{font-size:clamp(20px,3vw,28px);font-weight:600;color:#333}.ta-hint[data-v-b4f60f89]{font-size:clamp(12px,1.5vw,15px);color:#999;margin-top:4px}.action-btns[data-v-b4f60f89]{display:flex;gap:clamp(8px,1vw,16px);justify-content:center;padding:clamp(6px,1vh,12px) clamp(14px,2vw,24px) clamp(10px,1.5vh,18px);background:#fff}.btn-choose[data-v-b4f60f89]{flex:1;padding:clamp(10px,1.5vh,16px) clamp(16px,2vw,24px);border:none;border-radius:14px;background:linear-gradient(135deg,#f43b47,#ec467c);color:#fff;font-size:clamp(15px,2vw,20px);font-weight:600;cursor:pointer;transition:all .3s;font-family:inherit}.btn-choose[data-v-b4f60f89]:active{transform:scale(.95)}.heart-icon[data-v-b4f60f89]{color:#fff;font-size:18px}.btn-skip[data-v-b4f60f89]{padding:clamp(10px,1.5vh,14px) clamp(16px,2vw,24px);border:2px solid #e0e0e0;border-radius:14px;background:transparent;color:#888;font-size:clamp(14px,1.8vw,17px);cursor:pointer;transition:all .3s;font-family:inherit}.btn-skip[data-v-b4f60f89]:active{transform:scale(.95)}.modal-overlay[data-v-b4f60f89]{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-modal[data-v-b4f60f89]{background:#fff;border-radius:24px;padding:clamp(28px,4vh,40px) clamp(24px,3vw,36px) clamp(20px,3vh,32px);text-align:center;max-width:380px;width:85%;box-shadow:0 20px 60px #0000004d}.confirm-heart[data-v-b4f60f89]{font-size:clamp(40px,6vw,56px);color:#ff4757;margin-bottom:8px}.confirm-modal h3[data-v-b4f60f89]{font-size:clamp(18px,2.5vw,22px);color:#333;margin-bottom:8px}.confirm-modal p[data-v-b4f60f89]{font-size:clamp(14px,1.8vw,16px);color:#666}.confirm-modal strong[data-v-b4f60f89]{color:#f43b47;font-size:clamp(16px,2vw,20px)}.confirm-hint[data-v-b4f60f89]{color:#999!important;font-size:13px!important;margin-top:4px!important}.confirm-actions[data-v-b4f60f89]{display:flex;gap:clamp(10px,1.5vw,16px);margin-top:clamp(16px,2vh,24px)}.btn-cancel-modal[data-v-b4f60f89]{flex:1;padding:clamp(10px,1.5vh,14px) clamp(14px,2vw,20px);border:2px solid #e0e0e0;border-radius:14px;background:transparent;color:#888;font-size:clamp(14px,1.8vw,16px);cursor:pointer;font-family:inherit;transition:all .2s}.btn-cancel-modal[data-v-b4f60f89]:active{transform:scale(.95)}.btn-confirm-modal[data-v-b4f60f89]{flex:1;padding:clamp(10px,1.5vh,14px) clamp(14px,2vw,20px);border:none;border-radius:14px;background:linear-gradient(135deg,#f43b47,#ec467c);color:#fff;font-size:clamp(14px,1.8vw,16px);font-weight:600;cursor:pointer;font-family:inherit;transition:all .2s}.btn-confirm-modal[data-v-b4f60f89]:active{transform:scale(.95)}.indicators[data-v-b4f60f89]{margin-top:16px;color:#ffffffb3;font-size:14px}.btn[data-v-b4f60f89]{display:inline-block;padding:clamp(12px,1.8vh,18px) clamp(28px,4vw,48px);border:none;border-radius:14px;font-size:clamp(15px,2vw,18px);font-weight:600;cursor:pointer;font-family:inherit;transition:all .3s}.btn-ghost[data-v-b4f60f89]{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;border:1px solid rgba(255,255,255,.3);margin-top:clamp(16px,2vh,24px)}.btn-ghost[data-v-b4f60f89]:active{transform:scale(.95)}.result-screen[data-v-b4f60f89]{display:flex;align-items:center;justify-content:center;min-height:90vh;padding:20px}.result-card[data-v-b4f60f89]{background:#ffffff1f;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:5vh 4vw;text-align:center;border:1px solid rgba(255,255,255,.18);max-width:460px;width:90%}.result-icon[data-v-b4f60f89]{font-size:clamp(48px,8vw,72px);color:#ff4757;animation:heartBeat-b4f60f89 .8s ease infinite alternate}@keyframes heartBeat-b4f60f89{0%{transform:scale(1)}to{transform:scale(1.15)}}.result-card h2[data-v-b4f60f89]{color:#fff;font-size:clamp(20px,3vw,28px);margin:16px 0 8px}.result-card p[data-v-b4f60f89]{color:#fffc;font-size:clamp(14px,2vw,18px)}.result-card strong[data-v-b4f60f89]{color:gold;font-size:clamp(18px,2.5vw,24px)}.result-hint[data-v-b4f60f89]{margin-top:20px!important;font-size:14px!important;color:#ffffff8c!important}.ranking-link[data-v-b4f60f89]{position:fixed;bottom:16px;right:16px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fffc;font-size:13px;padding:8px 16px;border-radius:20px;cursor:pointer;z-index:50;-webkit-user-select:none;user-select:none;border:1px solid rgba(255,255,255,.2)}.ranking-link[data-v-b4f60f89]:hover{background:#ffffff40;color:#fff}.ranking-bg[data-v-7cdc8845]{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding-bottom:30px}.ranking-header[data-v-7cdc8845]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;position:relative}.btn-back[data-v-7cdc8845]{padding:clamp(8px,1vh,12px) clamp(16px,2vw,24px);border:none;border-radius:8px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;font-size:clamp(13px,1.8vw,16px);cursor:pointer;font-family:inherit}.ranking-title[data-v-7cdc8845]{font-size:clamp(18px,2.5vw,24px);color:#fff;font-weight:700;letter-spacing:2px;position:absolute;left:50%;transform:translate(-50%)}.total-votes[data-v-7cdc8845]{color:#ffffffb3;font-size:clamp(12px,1.5vw,15px)}.ranking-list[data-v-7cdc8845]{max-width:min(600px,90vw);margin:0 auto;padding:0 20px;display:flex;flex-direction:column;gap:clamp(8px,1vh,14px)}.rank-item[data-v-7cdc8845]{display:flex;align-items:center;gap:clamp(8px,1vw,14px);background:#ffffff1f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;padding:clamp(10px,1.5vh,18px) clamp(12px,1.5vw,20px);border:1px solid rgba(255,255,255,.1)}.rank-left[data-v-7cdc8845]{display:flex;align-items:center;gap:10px;min-width:0;flex-shrink:0}.rank-num[data-v-7cdc8845]{width:clamp(24px,3vw,32px);height:clamp(24px,3vw,32px);border-radius:50%;background:#fff3;color:#ffffffb3;display:flex;align-items:center;justify-content:center;font-size:clamp(11px,1.4vw,14px);font-weight:600;flex-shrink:0}.rank-num.rank-top[data-v-7cdc8845]{background:linear-gradient(135deg,#ffd200,#f7971e);color:#fff;box-shadow:0 2px 8px #ffd20066}.rank-avatar[data-v-7cdc8845]{width:clamp(32px,4vw,44px);height:clamp(32px,4vw,44px);border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid rgba(255,255,255,.3)}.rank-name[data-v-7cdc8845]{font-size:clamp(14px,1.8vw,18px);color:#fff;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:clamp(60px,10vw,100px)}.rank-right[data-v-7cdc8845]{flex:1;display:flex;align-items:center;gap:10px;min-width:0}.rank-bar-track[data-v-7cdc8845]{flex:1;height:clamp(16px,2.5vh,24px);background:#ffffff1a;border-radius:10px;overflow:hidden;min-width:0}.rank-bar-fill[data-v-7cdc8845]{height:100%;border-radius:10px;background:linear-gradient(90deg,#fff6,#ffffffb3);transition:width .6s cubic-bezier(.4,0,.2,1);min-width:4px}.bar-gold[data-v-7cdc8845]{background:linear-gradient(90deg,#f7971e,#ffd200)!important}.bar-silver[data-v-7cdc8845]{background:linear-gradient(90deg,#bdc3c7,#ecf0f1)!important}.bar-bronze[data-v-7cdc8845]{background:linear-gradient(90deg,#f5af19,#f12711)!important}.rank-count[data-v-7cdc8845]{color:#ffffffe6;font-size:clamp(13px,1.6vw,16px);font-weight:600;white-space:nowrap;flex-shrink:0;min-width:clamp(36px,5vw,50px);text-align:right}.empty-tip[data-v-7cdc8845]{text-align:center;color:#ffffff80;padding:40px 0;font-size:15px}@media(max-width:400px){.rank-name[data-v-7cdc8845]{max-width:56px}}.login-container[data-v-336b2e2d]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.login-card[data-v-336b2e2d]{background:#fff;border-radius:24px;padding:48px 40px;width:400px;max-width:90vw;box-shadow:0 10px 40px #00000014}.login-header[data-v-336b2e2d]{text-align:center;margin-bottom:32px}.login-header h1[data-v-336b2e2d]{font-size:26px;color:#333;margin-bottom:6px}.login-header p[data-v-336b2e2d]{color:#999;font-size:14px}.login-form[data-v-336b2e2d]{display:flex;flex-direction:column;gap:16px}.login-input[data-v-336b2e2d]{font-size:18px!important;padding:14px 18px!important;text-align:center;letter-spacing:2px}.btn-login[data-v-336b2e2d]{width:100%;padding:14px!important;font-size:17px!important;letter-spacing:4px}.login-error[data-v-336b2e2d]{text-align:center;color:#f43b47;font-size:13px;margin-top:-8px}.back-link[data-v-336b2e2d]{display:block;text-align:center;margin-top:24px;color:#999;font-size:13px;text-decoration:none}.back-link[data-v-336b2e2d]:hover{color:#667eea}.top-nav[data-v-829b6713]{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;background:#fff;box-shadow:0 2px 12px #0000000f;position:sticky;top:0;z-index:100}.nav-title[data-v-829b6713]{font-size:18px;color:#333;font-weight:600}.nav-actions[data-v-829b6713]{display:flex;gap:10px}.btn-ghost-nav[data-v-829b6713]{padding:8px 16px;border:1px solid #e0e0e0;border-radius:8px;background:#fff;color:#666;font-size:13px;cursor:pointer;transition:all .2s;font-family:inherit}.btn-ghost-nav[data-v-829b6713]:hover{border-color:#667eea;color:#667eea}.dashboard[data-v-829b6713]{max-width:960px;margin:0 auto;padding:24px}.stats-overview[data-v-829b6713]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.stat-card[data-v-829b6713]{background:#fff;border-radius:16px;padding:24px;text-align:center;box-shadow:0 2px 12px #0000000f}.stat-number[data-v-829b6713]{font-size:28px;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-label[data-v-829b6713]{color:#999;font-size:13px;margin-top:4px}.tabs[data-v-829b6713]{display:flex;gap:4px;margin-bottom:24px;background:#fff;border-radius:12px;padding:4px;box-shadow:0 2px 12px #0000000f}.tab[data-v-829b6713]{flex:1;padding:10px 16px;border:none;border-radius:8px;background:transparent;color:#666;font-size:14px;cursor:pointer;transition:all .2s;font-family:inherit}.tab.active[data-v-829b6713]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:500}.section-title[data-v-829b6713]{font-size:16px;color:#333;margin-bottom:16px}.bar-chart[data-v-829b6713]{display:flex;flex-direction:column;gap:12px}.bar-row[data-v-829b6713]{display:flex;align-items:center;gap:12px}.bar-label[data-v-829b6713]{width:140px;display:flex;align-items:center;gap:8px;flex-shrink:0}.rank-badge[data-v-829b6713]{width:22px;height:22px;border-radius:50%;background:#f0f0f0;color:#999;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;flex-shrink:0}.rank-badge.rank-top[data-v-829b6713]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.bar-avatar[data-v-829b6713]{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0}.bar-name[data-v-829b6713]{font-size:13px;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-track[data-v-829b6713]{flex:1;height:24px;background:#f5f5f5;border-radius:12px;overflow:hidden}.bar-fill[data-v-829b6713]{height:100%;border-radius:12px;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .6s cubic-bezier(.4,0,.2,1);min-width:4px}.bar-gold[data-v-829b6713]{background:linear-gradient(90deg,#f7971e,#ffd200)!important}.bar-silver[data-v-829b6713]{background:linear-gradient(90deg,#bdc3c7,#ecf0f1)!important}.bar-bronze[data-v-829b6713]{background:linear-gradient(90deg,#f5af19,#f12711)!important}.bar-count[data-v-829b6713]{width:50px;text-align:right;font-size:13px;color:#666;font-weight:500;flex-shrink:0}.manage-header[data-v-829b6713]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.ta-grid[data-v-829b6713]{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.ta-manage-card[data-v-829b6713]{padding:16px!important;display:flex;flex-direction:column;align-items:center;gap:10px}.ta-manage-photo[data-v-829b6713]{width:80px;height:80px;border-radius:50%;object-fit:cover;background:#f5f5f5}.ta-manage-info[data-v-829b6713]{text-align:center}.ta-manage-info h4[data-v-829b6713]{font-size:15px;color:#333}.vote-badge[data-v-829b6713]{display:inline-block;margin-top:4px;padding:2px 10px;background:#f0f2f5;border-radius:10px;font-size:12px;color:#667eea;font-weight:500}.ta-manage-actions[data-v-829b6713]{display:flex;gap:8px}.btn-icon[data-v-829b6713]{padding:6px 14px;border:none;border-radius:6px;font-size:12px;cursor:pointer;transition:all .2s;font-family:inherit}.btn-icon.edit[data-v-829b6713]{background:#e8eaf6;color:#667eea}.btn-icon.delete[data-v-829b6713]{background:#fce4ec;color:#f43b47}.settings-card[data-v-829b6713]{margin-bottom:16px}.settings-form[data-v-829b6713]{display:flex;flex-direction:column;gap:12px;max-width:360px}.settings-desc[data-v-829b6713]{color:#999;font-size:13px;margin-bottom:12px}.modal-title[data-v-829b6713]{font-size:18px;color:#333;margin-bottom:20px}.modal-form[data-v-829b6713]{display:flex;flex-direction:column;gap:16px}.form-group label[data-v-829b6713]{display:block;font-size:13px;color:#666;margin-bottom:6px}.photo-upload[data-v-829b6713]{width:160px;height:160px;border:2px dashed #e0e0e0;border-radius:16px;overflow:hidden;cursor:pointer;transition:border-color .3s}.photo-upload[data-v-829b6713]:hover{border-color:#667eea}.photo-preview[data-v-829b6713]{width:100%;height:100%;object-fit:cover}.photo-placeholder[data-v-829b6713]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#ccc;font-size:14px}.modal-actions[data-v-829b6713]{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.btn-ghost-modal[data-v-829b6713]{padding:10px 20px;border:1px solid #e0e0e0;border-radius:10px;background:#fff;color:#666;cursor:pointer;font-family:inherit;font-size:14px}@media(max-width:640px){.stats-overview[data-v-829b6713]{grid-template-columns:1fr}.ta-grid[data-v-829b6713]{grid-template-columns:repeat(2,1fr)}.bar-label[data-v-829b6713]{width:100px}.bar-name[data-v-829b6713]{font-size:12px}}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#app{width:100%;height:100%;overflow:hidden;font-family:Noto Sans SC,-apple-system,BlinkMacSystemFont,sans-serif;-webkit-font-smoothing:antialiased}.vote-bg{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);position:relative;overflow:hidden}.vote-bg:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 60%);animation:bgFloat 20s ease-in-out infinite}@keyframes bgFloat{0%,to{transform:translate(0)}50%{transform:translate(5%,5%)}}.admin-bg{min-height:100vh;background:#f0f2f5}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 28px;border:none;border-radius:12px;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s ease;font-family:inherit}.btn:active{transform:scale(.96)}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.btn-primary:hover{box-shadow:0 6px 20px #667eea99}.btn-danger{background:linear-gradient(135deg,#f43b47,#453a94);color:#fff}.btn-success{background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff;box-shadow:0 4px 15px #11998e66}.btn-ghost{background:#ffffff26;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-ghost:hover{background:#ffffff40}.input{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:10px;font-size:16px;font-family:inherit;transition:border-color .3s;outline:none}.input:focus{border-color:#667eea}.card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:24px}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:#fff;border-radius:20px;padding:32px;max-width:480px;width:90%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.toast{position:fixed;top:20px;left:50%;transform:translate(-50%);padding:12px 24px;border-radius:10px;color:#fff;font-size:14px;z-index:2000;animation:toastIn .3s ease}.toast-success{background:linear-gradient(135deg,#11998e,#38ef7d)}.toast-error{background:linear-gradient(135deg,#f43b47,#453a94)}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}
