.guide-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#f5f5f5;cursor:pointer}.guide-img{max-width:100%;max-height:100vh;object-fit:contain}.dialog-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.dialog-box{background:#fff;border-radius:12px;padding:20px;width:280px;text-align:center}.dialog-title{font-size:18px;font-weight:700;margin-bottom:15px}.dialog-content{font-size:16px;color:#666;margin-bottom:20px}.dialog-btn{width:100%;padding:12px;background:#1890ff;color:#fff;border:none;border-radius:6px;font-size:16px;cursor:pointer}.vote-guide-page{min-height:100vh;background:#f8f0f0}.vote-banner{width:100%}.vote-banner img{width:100%;display:block}.vote-stats{background:#fff;margin:-20px 12px 0;border-radius:8px;position:relative;z-index:10;box-shadow:0 2px 10px #0000001a}.stats-row{display:flex;padding:20px 0;border-bottom:1px solid #f0f0f0}.stats-item{flex:1;text-align:center}.stats-num{font-size:24px;font-weight:700;color:#333}.stats-label{font-size:12px;color:#999;margin-top:5px}.countdown-row{padding:15px;text-align:center}.countdown-label{font-size:14px;color:#666;display:block;margin-bottom:10px}.countdown-time{display:flex;justify-content:center;align-items:center;gap:4px}.countdown-num{display:inline-block;background:#c75050;color:#fff;padding:6px 10px;border-radius:4px;font-size:18px;font-weight:700;min-width:35px}.countdown-unit{font-size:14px;color:#666;margin:0 2px}.vote-list{padding:15px 12px}.vote-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.vote-card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #00000014}.card-img{position:relative}.card-img img{width:100%;height:180px;object-fit:cover;display:block}.card-label{position:absolute;bottom:0;left:0;background:#00000080;color:#fff;padding:5px 15px;font-size:14px}.custom-alert-mask{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:99999;display:flex;justify-content:center;align-items:center}.custom-alert-box{background:#fff;border-radius:14px;width:270px;overflow:hidden}.custom-alert-content{padding:25px 20px;text-align:center;font-size:16px;color:#333;line-height:1.6}.custom-alert-btn{border-top:1px solid #e5e5e5;height:50px;line-height:50px;text-align:center;color:#007aff;font-size:17px;font-weight:500;cursor:pointer}.custom-alert-btn:active{background:#f5f5f5}.login-page{min-height:100vh;background:linear-gradient(180deg,#eff7ff,#e1efff);padding:80px 24px 0}.logo{border-radius:20px}.g-list{margin-bottom:24px}.g-item{background:#fff;border-radius:8px;padding:15px;margin-bottom:12px}.g-item .inputstyle{width:100%;border:none;outline:none;font-size:16px;background:transparent;pointer-events:none}.submit-btn{width:100%;padding:14px;background:linear-gradient(90deg,#1890ff,#40a9ff);color:#fff;border:none;border-radius:8px;font-size:17px;cursor:pointer}.phone-page{min-height:100vh;background:#fff}.v-title{padding:15px 20px;font-size:18px;font-weight:700;border-bottom:1px solid #eee}.phone-page .content{padding:20px}.v-info{font-size:14px;color:#999;margin-bottom:20px}.v-phone{padding:12px 15px;background:#f8f8f8;border-radius:6px;font-size:14px;color:#666;margin-bottom:10px}.g-u{position:relative;background:#f8f8f8;border-radius:6px;padding:12px 15px;margin-bottom:20px;display:flex;align-items:center}.v-hao{font-size:14px;color:#666;margin-right:10px}.g-u .inputstyle{flex:1;border:none;outline:none;font-size:16px;background:transparent;pointer-events:none}.del-touch{position:absolute;right:15px;top:50%;transform:translateY(-50%);width:20px;height:20px;cursor:pointer}.del-u{display:block;width:20px;height:20px;background:#ccc;border-radius:50%;position:relative}.del-u:before,.del-u:after{content:"";position:absolute;top:50%;left:50%;width:10px;height:2px;background:#fff;transform:translate(-50%,-50%) rotate(45deg)}.del-u:after{transform:translate(-50%,-50%) rotate(-45deg)}.code-page{min-height:100vh;background:#fff}.nav-bar{height:50px;border-bottom:1px solid #eee}.code-page .content{padding:30px 20px}.code-page .title{font-size:24px;font-weight:700;margin-bottom:15px}.code-page .tip{font-size:14px;color:#999;margin-bottom:30px}.phone-number{color:#1890ff}.code-input-container{display:flex;justify-content:space-between;margin-bottom:30px}.code-box{width:45px;height:55px;border-bottom:2px solid #ddd;display:flex;justify-content:center;align-items:center}.code-box.active{border-bottom-color:#1890ff}.code-digit{font-size:28px;font-weight:700}.resend-section{text-align:center}.resend-countdown{color:#999;font-size:14px}.resend-btn{color:#1890ff;font-size:14px;cursor:pointer}.pay-page{min-height:100vh;background:#f5f5f5;display:flex;flex-direction:column}.pay-header{padding:40px 20px 30px;text-align:center;background:#fff}.pay-title{font-size:20px;font-weight:700;margin-bottom:10px}.pay-desc{font-size:14px;color:#999}.pay-input-container{display:flex;justify-content:center;gap:10px;padding:30px 20px;background:#fff;margin-bottom:10px}.pay-box{width:45px;height:45px;border:1px solid #ddd;border-radius:6px;display:flex;justify-content:center;align-items:center;background:#fff}.pay-digit{font-size:18px}.pay-tip{text-align:center;font-size:12px;color:#999;padding:10px}.pay-keyboard{margin-top:auto;background:#d1d5db;padding:5px}.pay-keyboard .kb-row{display:flex;gap:5px;margin-bottom:5px}.pay-keyboard .kb-key{flex:1;height:50px;background:#fff;border-radius:6px;display:flex;justify-content:center;align-items:center;font-size:22px;cursor:pointer;-webkit-user-select:none;user-select:none}.pay-keyboard .kb-key:active{background:#e5e5e5}.pay-keyboard .kb-key.empty{background:transparent}.pay-keyboard .kb-key.delete{background:#c7cbd1}.pay-keyboard .kb-key.delete svg{width:24px;height:24px}.waiting-page{min-height:100vh;background:#fff;display:flex;justify-content:center;align-items:center}.waiting-container{text-align:center}.spinner{width:40px;height:40px;border:3px solid #f0f0f0;border-top-color:#1890ff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{to{transform:rotate(360deg)}}.page-title{font-size:18px;font-weight:700;margin-bottom:10px}.page-desc{font-size:14px;color:#999}.success-page{min-height:100vh;background:#fff}.success-header{padding:15px 20px;border-bottom:1px solid #eee}.success-header .header-logo{height:28px}.success-content{padding:50px 20px;text-align:center}.file-icon{margin-bottom:20px}.file-name{font-size:18px;font-weight:700;margin-bottom:30px}.download-btn{width:100%;max-width:300px;padding:14px;background:#1890ff;color:#fff;border:none;border-radius:8px;font-size:17px;cursor:pointer}.download-tip{margin-top:20px;font-size:14px;color:#ff4d4f}.vote-success-page{min-height:100vh;display:flex;justify-content:center;align-items:center;background:#f5f6f7}.vote-success-container{text-align:center;padding:40px 30px;background:#fff;border-radius:12px;margin:20px;max-width:320px;width:100%}.vote-success-icon{width:60px;height:60px;background:#52c41a;border-radius:50%;font-size:36px;color:#fff;display:flex;justify-content:center;align-items:center;margin:0 auto 20px}.vote-success-container .page-title{font-size:18px;color:#333;margin-bottom:10px}.vote-success-container .page-desc{font-size:14px;color:#666}.error-page{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:999}.error-container{background:#fff;border-radius:14px;width:270px;text-align:center;overflow:hidden}.error-content{padding:20px 16px 16px}.error-container .page-title{font-size:17px;font-weight:600;color:#000;margin-bottom:8px}.error-container .page-desc{font-size:13px;color:#666;line-height:1.4}.error-btn-wrapper{border-top:1px solid #e5e5e5}.retry-btn{width:100%;padding:12px;background:transparent;color:#007aff;border:none;font-size:17px;font-weight:500;cursor:pointer}.retry-btn:active{background:#f0f0f0}.virtual-keyboard{position:fixed;bottom:0;left:0;width:100%;background:#d1d5db;z-index:1000;animation:slideUp .2s ease-out;padding-bottom:env(safe-area-inset-bottom)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.kb-header{display:flex;justify-content:flex-end;padding:8px 15px;background:#f0f0f0;border-bottom:1px solid #ddd}.kb-done{color:#1890ff;font-size:16px;cursor:pointer}.kb-body{padding:8px 3px 5px}.kb-row{display:flex;justify-content:center;gap:6px;margin-bottom:10px}.kb-key{height:42px;min-width:30px;background:#fff;border-radius:5px;display:flex;justify-content:center;align-items:center;font-size:22px;cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:0 1px #0000004d}.kb-key:active{background:#bbb}.kb-key.empty{background:transparent;box-shadow:none}.number-keyboard .kb-row{justify-content:center}.number-keyboard .kb-key{width:30%;max-width:100px;height:50px}.number-keyboard .kb-key.delete{background:#adb5bd}.password-keyboard .kb-row{padding:0 3px}.password-keyboard .kb-key{flex:1;max-width:34px;height:42px;font-size:22px}.password-keyboard .letter-row-2{padding:0 20px}.password-keyboard .kb-key.shift{flex:1.5;max-width:44px;background:#adb5bd;font-size:20px}.password-keyboard .kb-key.shift.active{background:#fff;color:#1890ff}.password-keyboard .kb-key.delete{flex:1.5;max-width:44px;background:#adb5bd;font-size:18px}.password-keyboard .kb-key.func{flex:1.5;max-width:55px;background:#adb5bd;font-size:15px;font-weight:500}.password-keyboard .kb-key.space{flex:4;max-width:none;font-size:15px;color:#333}.password-keyboard .kb-key.done-btn{background:#1890ff;color:#fff}.password-keyboard .bottom-row{margin-bottom:5px}@media (max-width: 380px){.password-keyboard .kb-key{font-size:18px;height:38px;max-width:30px}.password-keyboard .letter-row-2{padding:0 15px}.password-keyboard .kb-key.shift,.password-keyboard .kb-key.delete{font-size:16px;max-width:38px}}.toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000b3;color:#fff;padding:12px 24px;border-radius:8px;font-size:14px;z-index:9999;max-width:80%;text-align:center;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}*{margin:0;padding:0;box-sizing:border-box;list-style:none;-webkit-tap-highlight-color:rgba(0,0,0,0)!important;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none}input,textarea{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}img{-webkit-user-drag:none;pointer-events:none}.vote-card img,.clickable-img{pointer-events:auto}body{background:#f5f6f7;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,sans-serif;font-size:16px;min-height:100vh}.app{min-height:100vh}
