.floating-mascot[data-v-67baf9ee]{position:fixed;width:100px;height:120px;cursor:pointer;z-index:1000;transition:all .4s cubic-bezier(.68,-.55,.265,1.55);opacity:0;transform:translateY(30px) scale(.8);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.floating-mascot.is-visible[data-v-67baf9ee]{opacity:1;transform:translateY(0) scale(1)}.floating-mascot.is-dragging[data-v-67baf9ee]{cursor:grabbing;transition:none;transform:scale(1.1);z-index:1001}.floating-mascot[data-v-67baf9ee]:hover:not(.is-dragging){transform:translateY(-12px) scale(1.1)}.mascot-container[data-v-67baf9ee]{position:relative;width:100%;height:100%;animation:fly-67baf9ee 4s ease-in-out infinite}@keyframes fly-67baf9ee{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-15px) rotate(2deg)}50%{transform:translateY(-8px) rotate(0deg)}75%{transform:translateY(-20px) rotate(-2deg)}}.wings[data-v-67baf9ee]{position:absolute;top:20px;left:50%;transform:translateX(-50%);width:120px;height:60px;z-index:1;animation:wingFlap-67baf9ee 1.5s ease-in-out infinite}.wing[data-v-67baf9ee]{position:absolute;width:50px;height:30px;background:linear-gradient(135deg,#87ceeb,#b0e0e6 50%,#e0f6ff);border-radius:50% 10% 50% 10%;box-shadow:0 4px 8px rgba(135,206,235,.4),inset 0 1px 2px hsla(0,0%,100%,.6)}.wing.left-wing[data-v-67baf9ee]{left:0;transform:rotate(-15deg);animation:leftWingFlap-67baf9ee 1.5s ease-in-out infinite}.wing.right-wing[data-v-67baf9ee]{right:0;transform:rotate(15deg);animation:rightWingFlap-67baf9ee 1.5s ease-in-out infinite}@keyframes wingFlap-67baf9ee{0%,to{transform:translateX(-50%) scaleY(1)}50%{transform:translateX(-50%) scaleY(.8)}}@keyframes leftWingFlap-67baf9ee{0%,to{transform:rotate(-15deg) scaleY(1)}50%{transform:rotate(-25deg) scaleY(.7)}}@keyframes rightWingFlap-67baf9ee{0%,to{transform:rotate(15deg) scaleY(1)}50%{transform:rotate(25deg) scaleY(.7)}}.wing-feathers[data-v-67baf9ee]{position:absolute;top:0;left:0;width:100%;height:100%}.feather[data-v-67baf9ee]{position:absolute;background:linear-gradient(135deg,#e0f6ff,#b0e0e6);border-radius:50%}.feather.feather-1[data-v-67baf9ee]{width:8px;height:12px;top:5px;left:8px;transform:rotate(-20deg)}.feather.feather-2[data-v-67baf9ee]{width:6px;height:10px;top:8px;left:15px;transform:rotate(-10deg)}.feather.feather-3[data-v-67baf9ee]{width:4px;height:8px;top:12px;left:22px;transform:rotate(0deg)}.teddy-bear[data-v-67baf9ee]{position:absolute;top:40px;left:50%;transform:translateX(-50%);width:60px;height:80px;z-index:2}.bear-head[data-v-67baf9ee]{position:absolute;top:0;left:50%;transform:translateX(-50%);width:55px;height:50px;background:sienna;border-radius:50%;box-shadow:0 4px 12px rgba(139,69,19,.8);z-index:3;opacity:1}.bear-ears[data-v-67baf9ee]{position:absolute;top:-8px;left:50%;transform:translateX(-50%);width:100%;height:20px}.bear-ear[data-v-67baf9ee]{position:absolute;width:18px;height:18px;background:sienna;border-radius:50%;top:0;box-shadow:0 2px 4px rgba(139,69,19,.7);opacity:1}.bear-ear.left-ear[data-v-67baf9ee]{left:4px}.bear-ear.right-ear[data-v-67baf9ee]{right:4px}.inner-ear[data-v-67baf9ee]{position:absolute;top:4px;left:4px;width:10px;height:10px;background:#d2691e;border-radius:50%}.gear-teeth[data-v-67baf9ee]{position:absolute;top:-2px;left:50%;transform:translateX(-50%);width:16px;height:4px;background:#000;border-radius:2px}.gear-teeth[data-v-67baf9ee]:after,.gear-teeth[data-v-67baf9ee]:before{content:"";position:absolute;width:3px;height:4px;background:#000;border-radius:1px}.gear-teeth[data-v-67baf9ee]:before{left:2px;top:-1px}.gear-teeth[data-v-67baf9ee]:after{right:2px;top:-1px}.bear-face[data-v-67baf9ee]{position:absolute;top:8px;left:50%;transform:translateX(-50%);width:45px;height:30px}.bear-muzzle[data-v-67baf9ee]{position:absolute;top:15px;left:50%;transform:translateX(-50%);width:20px;height:12px;background:#d2691e;border-radius:50%;z-index:2}.bear-eyes[data-v-67baf9ee]{position:absolute;top:6px;left:50%;transform:translateX(-50%);width:30px;height:8px}.bear-eye[data-v-67baf9ee]{position:absolute;width:6px;height:6px;background:#000;border-radius:50%;top:0;box-shadow:0 0 2px rgba(0,0,0,.5)}.bear-eye.left-eye[data-v-67baf9ee]{left:3px}.bear-eye.right-eye[data-v-67baf9ee]{right:3px}.eye-pupil[data-v-67baf9ee]{position:absolute;top:1px;left:50%;transform:translateX(-50%);width:4px;height:4px;background:#000;border-radius:50%;animation:bearBlink-67baf9ee 5s infinite}.eye-shine[data-v-67baf9ee]{position:absolute;top:.5px;left:1px;width:1px;height:1px;background:#fff;border-radius:50%;box-shadow:0 0 1px hsla(0,0%,100%,.8)}@keyframes bearBlink-67baf9ee{0%,90%,to{transform:translateX(-50%) scaleY(1)}95%{transform:translateX(-50%) scaleY(.1)}}.bear-nose[data-v-67baf9ee]{position:absolute;top:4px;left:50%;transform:translateX(-50%);width:6px;height:5px;background:#8b4513;border-radius:50%;box-shadow:0 1px 2px rgba(139,69,19,.3);z-index:3}.bear-mouth[data-v-67baf9ee]{position:absolute;top:8px;left:50%;transform:translateX(-50%);width:8px;height:4px}.mouth-line[data-v-67baf9ee]{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #8b4513;border-top:none;border-radius:0 0 8px 8px;background:linear-gradient(135deg,#8b4513,sienna);box-shadow:0 1px 2px rgba(139,69,19,.2)}.bear-body[data-v-67baf9ee]{position:absolute;top:30px;left:50%;transform:translateX(-50%);width:50px;height:40px;background:sienna;border-radius:30px;box-shadow:0 4px 12px rgba(139,69,19,.8);z-index:2;opacity:1}.bear-badge[data-v-67baf9ee]{position:absolute;top:8px;left:50%;transform:translateX(-50%);width:16px;height:16px;background:linear-gradient(135deg,gold,orange);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(255,215,0,.4),inset 0 1px 2px hsla(0,0%,100%,.5)}.badge-star[data-v-67baf9ee]{font-size:10px;animation:starTwinkle-67baf9ee 2s ease-in-out infinite}@keyframes starTwinkle-67baf9ee{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}.flight-trail[data-v-67baf9ee]{position:absolute;top:60px;left:50%;transform:translateX(-50%);width:80px;height:20px;z-index:0}.trail-dot[data-v-67baf9ee]{position:absolute;width:4px;height:4px;background:radial-gradient(circle,#87ceeb 0,transparent 70%);border-radius:50%;animation:trailFloat-67baf9ee 3s ease-in-out infinite}.trail-dot.dot-1[data-v-67baf9ee]{left:10px;animation-delay:0s}.trail-dot.dot-2[data-v-67baf9ee]{left:25px;animation-delay:.5s}.trail-dot.dot-3[data-v-67baf9ee]{left:40px;animation-delay:1s}.trail-dot.dot-4[data-v-67baf9ee]{left:55px;animation-delay:1.5s}@keyframes trailFloat-67baf9ee{0%,to{opacity:.3;transform:translateY(0) scale(.8)}50%{opacity:.8;transform:translateY(-5px) scale(1.2)}}.bear-arms[data-v-67baf9ee]{position:absolute;top:5px;left:0;width:100%;height:25px}.bear-arm[data-v-67baf9ee]{position:absolute;width:10px;height:18px;background:sienna;border-radius:5px;top:0;box-shadow:0 2px 4px rgba(139,69,19,.7);opacity:1}.bear-arm.left-arm[data-v-67baf9ee]{left:-3px;transform:rotate(-20deg);animation:leftArmWave-67baf9ee 3s ease-in-out infinite}.bear-arm.right-arm[data-v-67baf9ee]{right:-3px;transform:rotate(20deg);animation:rightArmWave-67baf9ee 3s ease-in-out infinite}@keyframes leftArmWave-67baf9ee{0%,to{transform:rotate(-20deg)}50%{transform:rotate(-40deg)}}@keyframes rightArmWave-67baf9ee{0%,to{transform:rotate(20deg)}50%{transform:rotate(40deg)}}.paw[data-v-67baf9ee]{bottom:-2px;width:6px;height:5px;background:linear-gradient(135deg,#8b4513,sienna);border-radius:3px;box-shadow:0 1px 2px rgba(139,69,19,.3)}.bear-legs[data-v-67baf9ee],.paw[data-v-67baf9ee]{position:absolute;left:50%;transform:translateX(-50%)}.bear-legs[data-v-67baf9ee]{bottom:-8px;width:35px;height:20px}.bear-leg[data-v-67baf9ee]{position:absolute;width:10px;height:15px;background:sienna;border-radius:5px;bottom:0;box-shadow:0 2px 4px rgba(139,69,19,.7);opacity:1}.bear-leg.left-leg[data-v-67baf9ee]{left:5px}.bear-leg.right-leg[data-v-67baf9ee]{right:5px}.bear-foot[data-v-67baf9ee]{position:absolute;bottom:-5px;left:50%;transform:translateX(-50%);width:12px;height:8px;background:#d2691e;border-radius:6px}.bear-foot[data-v-67baf9ee]:before{left:2px}.bear-foot[data-v-67baf9ee]:after,.bear-foot[data-v-67baf9ee]:before{content:"";position:absolute;bottom:1px;width:3px;height:2px;background:#8b4513;border-radius:50%}.bear-foot[data-v-67baf9ee]:after{right:2px}.forehead-stripes[data-v-67baf9ee]{position:absolute;top:2px;left:50%;transform:translateX(-50%);width:20px;height:4px}.stripe[data-v-67baf9ee]{position:absolute;width:8px;height:2px;background:#000;border-radius:1px}.stripe.stripe-1[data-v-67baf9ee]{left:2px;top:0}.stripe.stripe-2[data-v-67baf9ee]{right:2px;top:2px}.mascot-torso[data-v-67baf9ee]{position:absolute;top:35px;left:50%;transform:translateX(-50%);width:50px;height:35px;background:linear-gradient(135deg,#ffb3b3,#ffd1dc);border-radius:25px;box-shadow:0 4px 12px hsla(0,100%,85%,.4),inset 0 2px 4px hsla(0,0%,100%,.6);z-index:2}.chest-decoration[data-v-67baf9ee]{position:absolute;top:8px;left:50%;transform:translateX(-50%);width:20px;height:20px;background:linear-gradient(135deg,#ff69b4,#ffb6c1);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(255,105,180,.3),inset 0 1px 2px hsla(0,0%,100%,.5)}.heart-icon[data-v-67baf9ee]{font-size:12px;animation:heartbeat-67baf9ee 2s ease-in-out infinite}@keyframes heartbeat-67baf9ee{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.chest-outline[data-v-67baf9ee]{position:absolute;top:8px;left:50%;transform:translateX(-50%);width:40px;height:25px;border:2px solid #000;border-radius:20px;border-top:none}.chest-badge[data-v-67baf9ee]{position:absolute;top:12px;left:50%;transform:translateX(-50%);width:20px;height:20px;z-index:3}.badge-background[data-v-67baf9ee]{position:absolute;top:0;left:0;width:100%;height:100%;background:skyblue;border-radius:50%;border:2px solid #000;box-shadow:inset 0 1px 2px hsla(0,0%,100%,.5)}.badge-icon[data-v-67baf9ee]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:10px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5)}.arms[data-v-67baf9ee]{position:absolute;top:5px;left:0;width:100%;height:20px}.arm[data-v-67baf9ee]{position:absolute;width:8px;height:15px;background:linear-gradient(135deg,#ffb3b3,#ffd1dc);border-radius:4px;top:0;box-shadow:0 2px 4px hsla(0,100%,85%,.3);animation:wave-67baf9ee 3s ease-in-out infinite}.arm.left-arm[data-v-67baf9ee]{left:-2px;animation-delay:0s}.arm.right-arm[data-v-67baf9ee]{right:-2px;animation-delay:1.5s}@keyframes wave-67baf9ee{0%,to{transform:rotate(0deg)}25%{transform:rotate(10deg)}75%{transform:rotate(-10deg)}}.arm-patch[data-v-67baf9ee]{position:absolute;top:3px;left:2px;width:5px;height:4px;background:#000;border-radius:2px}.hand[data-v-67baf9ee]{bottom:-2px;width:6px;height:5px;background:linear-gradient(135deg,#ffb3b3,#ffd1dc);border-radius:3px;box-shadow:0 1px 2px hsla(0,100%,85%,.3)}.hand[data-v-67baf9ee],.mascot-legs[data-v-67baf9ee]{position:absolute;left:50%;transform:translateX(-50%)}.mascot-legs[data-v-67baf9ee]{bottom:-5px;width:30px;height:15px}.leg[data-v-67baf9ee]{position:absolute;width:8px;height:12px;background:linear-gradient(135deg,#ffb3b3,#ffd1dc);border-radius:4px;bottom:0;box-shadow:0 2px 4px hsla(0,100%,85%,.3)}.leg.left-leg[data-v-67baf9ee]{left:4px}.leg.right-leg[data-v-67baf9ee]{right:4px}.foot[data-v-67baf9ee]{bottom:-3px;height:6px;background:linear-gradient(135deg,#ffb3b3,#ffd1dc);border-radius:4px;box-shadow:0 1px 2px hsla(0,100%,85%,.3)}.ankle-ring[data-v-67baf9ee],.foot[data-v-67baf9ee]{position:absolute;left:50%;transform:translateX(-50%);width:8px}.ankle-ring[data-v-67baf9ee]{bottom:2px;height:3px;background:gold;border-radius:2px;box-shadow:0 1px 2px rgba(255,215,0,.5)}.mascot-tail[data-v-67baf9ee]{position:absolute;top:40px;right:-8px;width:12px;height:8px;background:linear-gradient(135deg,#ffb3b3,#ffd1dc);border-radius:6px;transform:rotate(30deg);box-shadow:0 2px 4px hsla(0,100%,85%,.3);z-index:1;animation:tailWag-67baf9ee 2s ease-in-out infinite}.tail-wag[data-v-67baf9ee]{position:absolute;top:5px;right:-2px;width:3px;height:3px;background:hotpink;border-radius:50%;box-shadow:0 0 3px rgba(255,105,180,.5)}@keyframes tailWag-67baf9ee{0%,to{transform:rotate(30deg)}50%{transform:rotate(45deg)}}.halo[data-v-67baf9ee]{position:absolute;top:-15px;left:50%;transform:translateX(-50%);width:60px;height:60px;border:3px solid rgba(255,215,0,.6);border-radius:50%;box-shadow:0 0 20px rgba(255,215,0,.4),inset 0 0 10px rgba(255,215,0,.2);animation:haloGlow-67baf9ee 3s ease-in-out infinite;z-index:0}@keyframes haloGlow-67baf9ee{0%,to{opacity:.6;transform:translateX(-50%) scale(1)}50%{opacity:.8;transform:translateX(-50%) scale(1.05)}}.back-stripes[data-v-67baf9ee]{position:absolute;top:15px;left:0;width:100%;height:20px;z-index:1}.back-stripe[data-v-67baf9ee]{position:absolute;height:3px;background:#000;border-radius:2px;left:10px}.back-stripe.stripe-1[data-v-67baf9ee]{top:2px;width:15px}.back-stripe.stripe-2[data-v-67baf9ee]{top:6px;width:20px}.back-stripe.stripe-3[data-v-67baf9ee]{top:10px;width:25px}.speech-bubble[data-v-67baf9ee]{position:absolute;bottom:90px;right:0;background:hsla(0,0%,100%,.95);backdrop-filter:blur(10px);border-radius:15px;padding:12px 16px;box-shadow:0 4px 20px rgba(0,0,0,.2);border:1px solid hsla(0,0%,100%,.3);max-width:200px;animation:bubbleIn-67baf9ee .3s ease-out}.bubble-content p[data-v-67baf9ee]{margin:0;font-size:14px;color:#2c3e50;font-weight:500;line-height:1.4}.bubble-arrow[data-v-67baf9ee]{position:absolute;bottom:-8px;right:20px;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid hsla(0,0%,100%,.95)}@keyframes bubbleIn-67baf9ee{0%{opacity:0;transform:translateY(10px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:768px){.floating-mascot[data-v-67baf9ee]{bottom:15px;right:15px;width:70px;height:70px}.speech-bubble[data-v-67baf9ee]{max-width:180px;padding:10px 14px}.speech-bubble .bubble-content p[data-v-67baf9ee]{font-size:13px}}.auto-return-timer[data-v-7f127660]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:9999;background:rgba(0,0,0,.8);backdrop-filter:blur(10px);border-radius:16px;padding:24px;border:2px solid hsla(0,0%,100%,.2);box-shadow:0 20px 40px rgba(0,0,0,.3);animation:fadeInScale-7f127660 .3s ease-out}.timer-content[data-v-7f127660]{display:flex;align-items:center;gap:16px;color:#fff}.timer-icon[data-v-7f127660]{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(255,140,0,.2);border-radius:50%;flex-shrink:0}.timer-icon svg[data-v-7f127660]{width:24px;height:24px;color:#ff8c00;animation:rotate-7f127660 2s linear infinite}.timer-text[data-v-7f127660]{flex:1}.timer-text .timer-message[data-v-7f127660]{font-size:18px;font-weight:600;margin:0 0 4px 0;color:#ff8c00}.timer-text .timer-hint[data-v-7f127660]{font-size:14px;margin:0;opacity:.8}.cancel-btn[data-v-7f127660]{width:40px;height:40px;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;flex-shrink:0}.cancel-btn[data-v-7f127660]:hover{background:hsla(0,0%,100%,.2);border-color:hsla(0,0%,100%,.4);transform:scale(1.1)}.cancel-btn[data-v-7f127660]:active{transform:scale(.95)}.cancel-btn svg[data-v-7f127660]{width:16px;height:16px;color:#fff}@keyframes fadeInScale-7f127660{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes rotate-7f127660{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media(max-width:768px){.auto-return-timer[data-v-7f127660]{top:20px;left:20px;right:20px;transform:none;padding:20px;border-radius:12px}.timer-content[data-v-7f127660]{gap:12px}.timer-icon[data-v-7f127660]{width:40px;height:40px}.timer-icon svg[data-v-7f127660]{width:20px;height:20px}.timer-text .timer-message[data-v-7f127660]{font-size:16px}.timer-text .timer-hint[data-v-7f127660]{font-size:12px}.cancel-btn[data-v-7f127660]{width:36px;height:36px}.cancel-btn svg[data-v-7f127660]{width:14px;height:14px}}@media(max-width:480px){.auto-return-timer[data-v-7f127660]{top:15px;left:15px;right:15px;padding:16px}.timer-content[data-v-7f127660]{gap:10px}.timer-icon[data-v-7f127660]{width:36px;height:36px}.timer-icon svg[data-v-7f127660]{width:18px;height:18px}.timer-text .timer-message[data-v-7f127660]{font-size:14px}.timer-text .timer-hint[data-v-7f127660]{font-size:11px}}#app{font-family:Microsoft YaHei,微软雅黑,PingFang SC,Hiragino Sans GB,Helvetica Neue,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-primary);min-height:100vh;background-color:var(--background-light)}body{margin:0;padding:0}.splash-page[data-v-12fd2ecc]{width:100vw;height:100vh;background-size:cover;background-position:50%;background-repeat:no-repeat;cursor:pointer;position:relative;overflow:hidden}.fullscreen-btn[data-v-12fd2ecc]{position:absolute;top:20px;right:20px;width:48px;height:48px;background:hsla(0,0%,100%,.2);border:2px solid hsla(0,0%,100%,.3);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(10px);transition:all .3s ease;z-index:10}.fullscreen-btn[data-v-12fd2ecc]:hover{background:hsla(0,0%,100%,.3);border-color:hsla(0,0%,100%,.5);transform:scale(1.1)}.fullscreen-btn[data-v-12fd2ecc]:active{transform:scale(.95)}.fullscreen-btn .fullscreen-icon[data-v-12fd2ecc]{width:20px;height:20px;color:#fff;stroke-width:2.5}.swipe-hint[data-v-12fd2ecc]{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);text-align:center;color:#fff;animation:bounce-12fd2ecc 2s infinite}.swipe-hint .swipe-icon[data-v-12fd2ecc]{font-size:32px;margin-bottom:8px;text-shadow:0 2px 4px rgba(0,0,0,.5)}.swipe-hint p[data-v-12fd2ecc]{font-size:14px;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.5);background:rgba(0,0,0,.3);padding:8px 16px;border-radius:20px;backdrop-filter:blur(10px)}@keyframes bounce-12fd2ecc{0%,20%,50%,80%,to{transform:translateX(-50%) translateY(0)}40%{transform:translateX(-50%) translateY(-10px)}60%{transform:translateX(-50%) translateY(-5px)}}@media(max-width:768px){.fullscreen-btn[data-v-12fd2ecc]{top:15px;right:15px;width:44px;height:44px}.fullscreen-btn .fullscreen-icon[data-v-12fd2ecc]{width:18px;height:18px}.swipe-hint[data-v-12fd2ecc]{bottom:30px}.swipe-hint .swipe-icon[data-v-12fd2ecc]{font-size:28px}.swipe-hint p[data-v-12fd2ecc]{font-size:12px}}.exit-fullscreen-btn[data-v-2d6e7b32]{position:fixed;top:20px;right:20px;width:48px;height:48px;background:rgba(0,0,0,.3);border:2px solid hsla(0,0%,100%,.3);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(10px);transition:all .3s ease;z-index:1000}.exit-fullscreen-btn[data-v-2d6e7b32]:hover{background:rgba(0,0,0,.5);border-color:hsla(0,0%,100%,.6);transform:scale(1.1)}.exit-fullscreen-btn[data-v-2d6e7b32]:active{transform:scale(.95)}.exit-fullscreen-btn .exit-fullscreen-icon[data-v-2d6e7b32]{width:20px;height:20px;color:#fff;stroke-width:2.5}@media(max-width:768px){.exit-fullscreen-btn[data-v-2d6e7b32]{top:15px;right:15px;width:44px;height:44px}.exit-fullscreen-btn .exit-fullscreen-icon[data-v-2d6e7b32]{width:18px;height:18px}}.admin-login-overlay[data-v-5fb6a8c1]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn-5fb6a8c1 .3s ease-out}.admin-login-modal[data-v-5fb6a8c1]{background:hsla(0,0%,100%,.95);backdrop-filter:blur(20px);border-radius:20px;padding:40px;width:400px;max-width:90vw;box-shadow:0 20px 60px rgba(0,0,0,.3);border:1px solid hsla(0,0%,100%,.2);animation:slideUp-5fb6a8c1 .3s ease-out}.login-header[data-v-5fb6a8c1]{text-align:center;margin-bottom:30px}.login-header h3[data-v-5fb6a8c1]{color:#2c3e50;font-size:24px;font-weight:700;margin:0 0 8px 0}.login-header p[data-v-5fb6a8c1]{color:#666;font-size:14px;margin:0}.login-form .el-form-item[data-v-5fb6a8c1]{margin-bottom:20px}.login-form .el-input[data-v-5fb6a8c1] .el-input__wrapper{border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.1);border:1px solid rgba(0,0,0,.1);transition:all .3s ease}.login-form .el-input[data-v-5fb6a8c1] .el-input__wrapper:hover{border-color:#3b82f6;box-shadow:0 4px 12px rgba(59,130,246,.2)}.login-form .el-input[data-v-5fb6a8c1] .el-input__wrapper.is-focus{border-color:#3b82f6;box-shadow:0 4px 12px rgba(59,130,246,.3)}.login-actions[data-v-5fb6a8c1]{display:flex;gap:15px;width:100%}.login-actions .login-btn[data-v-5fb6a8c1]{flex:1;height:48px;border-radius:12px;font-size:16px;font-weight:600;background:linear-gradient(135deg,#3b82f6,#1e40af);border:none;box-shadow:0 4px 15px rgba(59,130,246,.3);transition:all .3s ease}.login-actions .login-btn[data-v-5fb6a8c1]:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(59,130,246,.4)}.login-actions .cancel-btn[data-v-5fb6a8c1]{flex:1;height:48px;border-radius:12px;font-size:16px;font-weight:600;background:rgba(0,0,0,.05);border:1px solid rgba(0,0,0,.1);color:#666;transition:all .3s ease}.login-actions .cancel-btn[data-v-5fb6a8c1]:hover{background:rgba(0,0,0,.1);border-color:rgba(0,0,0,.2);transform:translateY(-1px)}@keyframes fadeIn-5fb6a8c1{0%{opacity:0}to{opacity:1}}@keyframes slideUp-5fb6a8c1{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.admin-login-modal[data-v-5fb6a8c1]{padding:30px 20px;width:350px}.login-header h3[data-v-5fb6a8c1]{font-size:20px}.login-actions[data-v-5fb6a8c1]{flex-direction:column;gap:10px}.login-actions .cancel-btn[data-v-5fb6a8c1],.login-actions .login-btn[data-v-5fb6a8c1]{flex:none}}.home[data-v-5bedd179]{min-height:100vh;background:#f8fafc;position:relative;overflow-x:hidden;overflow-y:auto;touch-action:pan-y pinch-zoom}.home .el-container[data-v-5bedd179]{position:relative;z-index:1}.home .background-image[data-v-5bedd179]{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0}.home .background-image img[data-v-5bedd179]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.home .page-logo[data-v-5bedd179]{position:fixed;top:-60px;left:20px;z-index:10}.home .page-logo img[data-v-5bedd179]{height:200px;width:auto;filter:drop-shadow(0 4px 12px rgba(0,0,0,.4))}.header[data-v-5bedd179]{background:transparent;border-bottom:none;box-shadow:none;position:relative}.header[data-v-5bedd179]:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.5) 50%,transparent)}.header .header-content[data-v-5bedd179]{display:flex;justify-content:center;align-items:center;max-width:1200px;margin:0 auto;height:100%;padding:0 20px}.header .header-content .logo-section[data-v-5bedd179]{display:flex;align-items:center;gap:20px}.header .header-content .logo-section .logo[data-v-5bedd179]{width:60px;height:60px;background:transparent;border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:none;transition:all .3s ease}.header .header-content .logo-section .logo[data-v-5bedd179]:hover{transform:translateY(-2px)}.header .header-content .logo-section .logo .el-icon[data-v-5bedd179]{font-size:28px;color:#2c3e50}.header .header-content .logo-section .title-section .title[data-v-5bedd179]{color:#2c3e50;font-size:28px;font-weight:700;margin:0;text-shadow:none;transition:all .3s ease}.header .header-content .logo-section .title-section .title[data-v-5bedd179]:hover{transform:translateY(-1px)}.header .header-content .logo-section .title-section .subtitle[data-v-5bedd179]{color:#666;font-size:14px;margin:4px 0 0 0;font-weight:500;transition:all .3s ease}.header .header-content .logo-section .title-section .subtitle[data-v-5bedd179]:hover{color:#333;transform:translateY(-1px)}.main[data-v-5bedd179]{max-width:1200px;margin:0 auto;padding:40px 20px}.welcome-section[data-v-5bedd179]{text-align:center;margin-bottom:40px;padding:40px 30px;background:#fff;border-radius:16px;border:1px solid rgba(0,0,0,.05);box-shadow:0 4px 20px rgba(0,0,0,.08);position:relative;overflow:hidden;animation:fadeInDown-5bedd179 .8s ease-out}.welcome-section[data-v-5bedd179]:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(30,58,138,.02) 0,transparent 70%);animation:float-5bedd179 6s ease-in-out infinite}.welcome-section .welcome-content[data-v-5bedd179]{position:relative;z-index:2}.welcome-section .welcome-content .brand-header[data-v-5bedd179]{display:flex;align-items:center;justify-content:center;gap:30px;margin-bottom:30px}.welcome-section .welcome-content .brand-header .school-logo .logo-circle[data-v-5bedd179]{width:80px;height:80px;background:var(--primary-gradient);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 25px rgba(30,58,138,.2);position:relative;transition:all .3s ease;animation:pulse-5bedd179 2s infinite}.welcome-section .welcome-content .brand-header .school-logo .logo-circle[data-v-5bedd179]:hover{transform:scale(1.05);box-shadow:0 12px 35px rgba(30,58,138,.3)}.welcome-section .welcome-content .brand-header .school-logo .logo-circle[data-v-5bedd179]:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:var(--primary-gradient);border-radius:50%;z-index:-1;opacity:.3}.welcome-section .welcome-content .brand-header .school-logo .logo-circle .logo-text[data-v-5bedd179]{color:#fff;font-size:24px;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.2)}.welcome-section .welcome-content .brand-header .brand-info[data-v-5bedd179]{text-align:left}.welcome-section .welcome-content .brand-header .brand-info h2[data-v-5bedd179]{font-size:42px;margin-bottom:10px;text-shadow:0 4px 8px rgba(30,58,138,.1);color:var(--primary-color);font-weight:700;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-section .welcome-content .brand-header .brand-info .school-motto[data-v-5bedd179]{font-size:18px;color:var(--text-secondary);font-weight:600;margin-bottom:8px;font-style:italic}.welcome-section .welcome-content .brand-header .brand-info .system-desc[data-v-5bedd179]{font-size:20px;opacity:.8;color:var(--text-secondary);margin:0}@keyframes float-5bedd179{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-10px) rotate(180deg)}}@keyframes pulse-5bedd179{0%{box-shadow:0 8px 25px rgba(30,58,138,.2)}50%{box-shadow:0 8px 25px rgba(30,58,138,.2),0 0 0 10px rgba(30,58,138,.1)}to{box-shadow:0 8px 25px rgba(30,58,138,.2)}}.canteen-showcase[data-v-5bedd179]{margin-top:20px;margin-bottom:60px}.canteen-hero[data-v-5bedd179]{max-width:1000px;margin:0 auto}.canteen-hero-card[data-v-5bedd179]{background:#fff;border:1px solid rgba(0,0,0,.05);border-radius:16px;overflow:hidden;transition:all .3s ease;position:relative;box-shadow:0 4px 20px rgba(0,0,0,.08);animation:fadeInUp .8s ease-out}.canteen-hero-card[data-v-5bedd179]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient)}.canteen-hero-card[data-v-5bedd179]:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,.12)}.hero-content[data-v-5bedd179]{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:35px;min-height:380px}.hero-image[data-v-5bedd179]{position:relative;border-radius:20px;overflow:hidden;height:300px}.hero-image .el-image[data-v-5bedd179]{width:100%;height:100%;transition:transform .4s ease;-o-object-fit:cover;object-fit:cover}.hero-image:hover .el-image[data-v-5bedd179]{transform:scale(1.05)}.hero-info[data-v-5bedd179]{display:flex;flex-direction:column;justify-content:center;gap:20px}.hero-title h2[data-v-5bedd179]{font-size:36px;font-weight:700;color:#2c3e50;margin:0 0 15px 0;text-shadow:0 2px 4px rgba(0,0,0,.1)}.hero-title .hero-rating[data-v-5bedd179] .el-rate .el-rate__text{font-size:18px;font-weight:600;color:#ff8c00}.hero-details[data-v-5bedd179]{display:flex;flex-direction:column;gap:12px}.hero-details .detail-item[data-v-5bedd179]{display:flex;align-items:center;gap:10px;color:#666;font-size:16px;font-weight:500}.hero-details .detail-item .el-icon[data-v-5bedd179]{color:#ff8c00;font-size:18px}.hero-description[data-v-5bedd179]{color:#666;line-height:1.6;font-size:16px;margin:0}.hero-actions[data-v-5bedd179]{display:flex;gap:15px;margin-top:10px}.hero-actions .enter-btn[data-v-5bedd179]{background:var(--primary-gradient);border:none;border-radius:12px;padding:15px 30px;font-size:16px;font-weight:600;box-shadow:0 6px 20px rgba(30,58,138,.2);transition:all .3s ease}.hero-actions .enter-btn[data-v-5bedd179]:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(30,58,138,.3);background:linear-gradient(135deg,#1e40af,#1e3a8a)}.hero-actions .recommend-btn[data-v-5bedd179]{background:linear-gradient(135deg,#3b82f6,#1e3a8a);border:none;color:#fff;border-radius:12px;padding:15px 30px;font-size:16px;font-weight:600;transition:all .3s ease;box-shadow:0 4px 15px rgba(59,130,246,.2)}.hero-actions .recommend-btn[data-v-5bedd179]:hover{background:linear-gradient(135deg,#2563eb,#1e40af);transform:translateY(-2px);box-shadow:0 6px 20px rgba(59,130,246,.3)}.hero-actions .review-btn[data-v-5bedd179]{background:rgba(30,58,138,.1);border:2px solid rgba(30,58,138,.3);color:var(--primary-color);border-radius:12px;padding:15px 30px;font-size:16px;font-weight:600;transition:all .3s ease}.hero-actions .review-btn[data-v-5bedd179]:hover{background:rgba(30,58,138,.2);border-color:var(--primary-color);transform:translateY(-2px)}.canteens-grid[data-v-5bedd179]{display:flex;flex-direction:column;gap:20px}.canteens-grid .canteen-card[data-v-5bedd179]{animation:slideInUp-5bedd179 .6s ease-out}.canteens-grid .canteen-card[data-v-5bedd179]:first-child{animation-delay:.1s}.canteens-grid .canteen-card[data-v-5bedd179]:nth-child(2){animation-delay:.2s}.canteens-grid .canteen-card[data-v-5bedd179]:nth-child(3){animation-delay:.3s}@keyframes slideInUp-5bedd179{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown-5bedd179{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.canteen-card[data-v-5bedd179]{background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(255,254,251,.95));backdrop-filter:blur(15px);border:2px solid rgba(255,140,0,.1);border-radius:24px;overflow:hidden;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;box-shadow:0 12px 35px rgba(255,140,0,.12);width:100%;min-height:450px}.canteen-card[data-v-5bedd179]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ff8c00,#ffb84d 50%,#ff8c00);opacity:0;transition:opacity .3s ease}.canteen-card[data-v-5bedd179]:hover{transform:translateY(-10px) scale(1.03);box-shadow:0 30px 60px rgba(255,140,0,.25);border-color:rgba(255,140,0,.3)}.canteen-card[data-v-5bedd179]:hover:before{opacity:1}.canteen-card .canteen-content[data-v-5bedd179]{display:flex;flex-direction:column;justify-content:space-between;gap:20px;height:100%;min-height:410px}.canteen-card .canteen-content .canteen-image[data-v-5bedd179]{width:100%;height:180px;overflow:hidden;position:relative;border-radius:12px;flex-shrink:0}.canteen-card .canteen-content .canteen-image .el-image[data-v-5bedd179]{width:100%;height:100%;transition:transform .4s ease}.canteen-card .canteen-content .canteen-image .image-slot[data-v-5bedd179]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;background:linear-gradient(135deg,#fffefb,#fff5e6);color:#ff8c00;font-size:24px;position:relative}.canteen-card .canteen-content .canteen-image .image-slot[data-v-5bedd179]:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at center,rgba(255,140,0,.05) 0,transparent 70%)}.canteen-card .canteen-content:hover .canteen-image .el-image[data-v-5bedd179]{transform:scale(1.05)}.canteen-card .canteen-content .canteen-info[data-v-5bedd179]{padding:0;flex:1;display:flex;flex-direction:column;justify-content:center}.canteen-card .canteen-content .canteen-info h3[data-v-5bedd179]{font-size:20px;margin-bottom:8px;color:#2c3e50;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.1)}.canteen-card .canteen-content .canteen-info .location[data-v-5bedd179]{display:flex;align-items:center;gap:6px;color:#666;margin-bottom:8px;font-size:14px;font-weight:500}.canteen-card .canteen-content .canteen-info .location .el-icon[data-v-5bedd179]{color:#ff8c00;font-size:14px}.canteen-card .canteen-content .canteen-info .description[data-v-5bedd179]{color:#666;margin-bottom:8px;line-height:1.4;font-size:13px}.canteen-card .canteen-content .canteen-info .restaurant-count[data-v-5bedd179]{display:flex;align-items:center;gap:6px;color:var(--primary-color);font-size:14px;font-weight:500}.canteen-card .canteen-content .canteen-actions[data-v-5bedd179]{padding:0;flex-shrink:0;display:flex;justify-content:center}.canteen-card .canteen-content .canteen-actions .el-button[data-v-5bedd179]{width:120px;height:40px;font-size:14px;font-weight:600;border-radius:10px;background:linear-gradient(135deg,#ff8c00,#ffb84d);border:none;box-shadow:0 4px 15px rgba(255,140,0,.3);transition:all .3s ease}.canteen-card .canteen-content .canteen-actions .el-button[data-v-5bedd179]:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(255,140,0,.4);background:linear-gradient(135deg,#e67e00,#ff8c00)}.canteen-card .canteen-content .canteen-actions .el-button[data-v-5bedd179]:active{transform:translateY(0)}.ranking-card[data-v-5bedd179]{background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(255,254,251,.95));backdrop-filter:blur(15px);border:2px solid rgba(255,140,0,.1);border-radius:24px;box-shadow:0 12px 35px rgba(255,140,0,.12);position:relative;overflow:hidden;animation:fadeInLeft-5bedd179 .8s ease-out}.ranking-card.dish-ranking[data-v-5bedd179]{animation:fadeInRight-5bedd179 .8s ease-out}.ranking-card[data-v-5bedd179]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ff8c00,#ffb84d 50%,#ff8c00)}.ranking-card[data-v-5bedd179] .el-card__header{background:linear-gradient(135deg,rgba(255,254,251,.8),rgba(255,248,240,.6));border-bottom:1px solid rgba(255,140,0,.2);padding:24px}.ranking-card[data-v-5bedd179] .el-card__header .ranking-header{display:flex;align-items:center;gap:10px}.ranking-card[data-v-5bedd179] .el-card__header .ranking-header .el-icon{font-size:26px;color:#ff8c00;filter:drop-shadow(0 2px 4px rgba(255,140,0,.3))}.ranking-card[data-v-5bedd179] .el-card__header .ranking-header h3{margin:0;color:#2c3e50;font-size:20px;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.1)}.ranking-card[data-v-5bedd179] .el-card__body{padding:24px}.ranking-list .ranking-item[data-v-5bedd179]{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid rgba(255,140,0,.1);transition:all .3s ease}.ranking-list .ranking-item[data-v-5bedd179]:last-child{border-bottom:none}.ranking-list .ranking-item[data-v-5bedd179]:hover{background:rgba(255,140,0,.05);border-radius:10px;padding-left:12px;padding-right:12px}.ranking-list .ranking-item .rank-number[data-v-5bedd179]{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;color:#fff;flex-shrink:0}.ranking-list .ranking-item.rank-1 .rank-number[data-v-5bedd179]{background:linear-gradient(135deg,gold,orange);box-shadow:0 4px 15px rgba(255,215,0,.4)}.ranking-list .ranking-item.rank-2 .rank-number[data-v-5bedd179]{background:linear-gradient(135deg,silver,#a0a0a0);box-shadow:0 4px 15px hsla(0,0%,75%,.4)}.ranking-list .ranking-item.rank-3 .rank-number[data-v-5bedd179]{background:linear-gradient(135deg,#cd7f32,#b8860b);box-shadow:0 4px 15px rgba(205,127,50,.4)}.ranking-list .ranking-item:not(.rank-1):not(.rank-2):not(.rank-3) .rank-number[data-v-5bedd179]{background:linear-gradient(135deg,#ff8c00,#ffb84d);box-shadow:0 4px 15px rgba(255,140,0,.3)}.ranking-list .ranking-item .rank-content[data-v-5bedd179]{flex:1;min-width:0}.ranking-list .ranking-item .rank-content .rank-name[data-v-5bedd179]{font-size:15px;font-weight:600;color:#2c3e50;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ranking-list .ranking-item .rank-content .rank-location[data-v-5bedd179]{font-size:13px;color:#666;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ranking-list .ranking-item .rank-content .rank-rating[data-v-5bedd179] .el-rate .el-rate__icon{font-size:13px}.ranking-list .ranking-item .rank-content .rank-rating[data-v-5bedd179] .el-rate .el-rate__text{font-size:12px;color:#ff8c00;font-weight:600}@keyframes fadeInLeft-5bedd179{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight-5bedd179{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@media(max-width:1200px){.hero-content[data-v-5bedd179]{grid-template-columns:1fr;gap:30px;padding:30px}.hero-image[data-v-5bedd179]{height:250px}.hero-title h2[data-v-5bedd179]{font-size:32px}.welcome-section[data-v-5bedd179]{margin-bottom:30px;padding:30px 25px}.welcome-section h2[data-v-5bedd179]{font-size:36px}.welcome-section p[data-v-5bedd179]{font-size:20px}}@media(max-width:768px){.main[data-v-5bedd179]{padding:20px 15px}.hero-content[data-v-5bedd179]{padding:20px;gap:20px}.hero-image[data-v-5bedd179]{height:200px}.hero-title h2[data-v-5bedd179]{font-size:28px}.hero-actions[data-v-5bedd179]{flex-direction:column;gap:10px}.hero-actions .enter-btn[data-v-5bedd179],.hero-actions .review-btn[data-v-5bedd179]{width:100%}.welcome-section[data-v-5bedd179]{margin-bottom:25px;padding:20px 15px}.welcome-section .welcome-content .brand-header[data-v-5bedd179]{flex-direction:column;gap:20px;text-align:center}.welcome-section .welcome-content .brand-header .brand-info[data-v-5bedd179]{text-align:center}.welcome-section .welcome-content .brand-header .brand-info h2[data-v-5bedd179]{font-size:28px;line-height:1.2}.welcome-section .welcome-content .brand-header .brand-info .school-motto[data-v-5bedd179],.welcome-section .welcome-content .brand-header .brand-info .system-desc[data-v-5bedd179]{font-size:16px}.header .header-content[data-v-5bedd179]{padding:0 15px}.header .header-content .title[data-v-5bedd179]{font-size:22px}.header .header-content .title .el-icon[data-v-5bedd179]{font-size:24px}.ranking-card[data-v-5bedd179] .el-card__header{padding:15px}.ranking-card[data-v-5bedd179] .el-card__header .ranking-header h3{font-size:16px}.ranking-card[data-v-5bedd179] .el-card__header .ranking-header .el-icon{font-size:20px}.ranking-card[data-v-5bedd179] .el-card__body{padding:15px}.ranking-list .ranking-item[data-v-5bedd179]{padding:12px 0;gap:10px}.ranking-list .ranking-item .rank-number[data-v-5bedd179]{width:28px;height:28px;font-size:13px}.ranking-list .ranking-item .rank-content .rank-name[data-v-5bedd179]{font-size:14px;margin-bottom:4px}.ranking-list .ranking-item .rank-content .rank-location[data-v-5bedd179]{font-size:12px;margin-bottom:6px}.canteen-card .canteen-content[data-v-5bedd179]{flex-direction:column;gap:15px;text-align:center}.canteen-card .canteen-content .canteen-image[data-v-5bedd179]{width:100%;height:120px;margin:0 auto}.canteen-card .canteen-info[data-v-5bedd179]{padding:15px}.canteen-card .canteen-info h3[data-v-5bedd179]{font-size:18px;margin-bottom:6px}.canteen-card .canteen-info .location[data-v-5bedd179]{margin-bottom:6px;font-size:13px}.canteen-card .canteen-info .description[data-v-5bedd179]{margin-bottom:6px;font-size:12px}.canteen-card .canteen-info .restaurant-count[data-v-5bedd179]{font-size:13px}.canteen-card .canteen-actions[data-v-5bedd179]{padding:0 15px 15px}.canteen-card .canteen-actions .el-button[data-v-5bedd179]{width:100%;height:44px;font-size:15px;border-radius:8px}}@media(max-width:480px){.main[data-v-5bedd179]{padding:15px 10px}.hero-content[data-v-5bedd179]{padding:15px;gap:15px}.hero-image[data-v-5bedd179]{height:180px}.hero-title h2[data-v-5bedd179]{font-size:24px}.hero-description[data-v-5bedd179],.hero-details .detail-item[data-v-5bedd179]{font-size:14px}.welcome-section[data-v-5bedd179]{padding:20px 10px;margin-bottom:30px}.welcome-section h2[data-v-5bedd179]{font-size:24px}.welcome-section p[data-v-5bedd179]{font-size:14px}.header .header-content[data-v-5bedd179]{padding:0 10px}.header .header-content .title[data-v-5bedd179]{font-size:20px}.header .header-content .title .el-icon[data-v-5bedd179]{font-size:22px}.canteen-card .canteen-info[data-v-5bedd179]{padding:12px}.canteen-card .canteen-info h3[data-v-5bedd179]{font-size:16px}.canteen-card .canteen-actions[data-v-5bedd179]{padding:0 12px 12px}.canteen-card .canteen-actions .el-button[data-v-5bedd179]{height:42px;font-size:14px}}@media(max-width:768px){.header-content[data-v-5bedd179]{flex-direction:column;gap:20px;padding:20px}.header-content .nav-links[data-v-5bedd179]{display:none}.welcome-section[data-v-5bedd179]{padding:30px 20px}.canteen-hero-card[data-v-5bedd179]{margin:0 10px}}.shops[data-v-0f544e24]{min-height:100vh;background:linear-gradient(135deg,#f8fafc,#f1f5f9 30%,#e2e8f0 70%,#cbd5e1);position:relative;overflow-x:hidden}.shops[data-v-0f544e24]:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 80%,rgba(30,58,138,.03) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(59,130,246,.03) 0,transparent 50%);pointer-events:none;z-index:0}.shops .el-container[data-v-0f544e24]{position:relative;z-index:1}.header[data-v-0f544e24]{background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(248,250,252,.95));backdrop-filter:blur(15px);border-bottom:3px solid rgba(30,58,138,.2);box-shadow:0 4px 20px rgba(30,58,138,.08);position:relative}.header[data-v-0f544e24]:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0,var(--primary-color) 50%,transparent 100%)}.header .header-content[data-v-0f544e24]{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;height:100%;padding:0 20px}.header .header-content .title[data-v-0f544e24]{display:flex;align-items:center;gap:12px;color:var(--primary-color);font-size:24px;font-weight:700;text-shadow:0 2px 4px rgba(30,58,138,.1);transition:all .3s ease;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header .header-content .title[data-v-0f544e24]:hover{transform:translateY(-1px);text-shadow:0 4px 8px rgba(30,58,138,.2)}.header .header-content .title .el-icon[data-v-0f544e24]{font-size:28px;color:var(--primary-color);filter:drop-shadow(0 2px 4px rgba(30,58,138,.3));transition:all .3s ease}.header .header-content .title .el-icon[data-v-0f544e24]:hover{transform:scale(1.1)}.header .header-content .back-button .el-button[data-v-0f544e24]{background:var(--primary-gradient);border:none;box-shadow:0 4px 15px rgba(30,58,138,.2)}.header .header-content .back-button .el-button[data-v-0f544e24]:hover{background:linear-gradient(135deg,#1e40af,#1e3a8a);transform:translateY(-2px);box-shadow:0 8px 25px rgba(30,58,138,.3)}.main[data-v-0f544e24]{max-width:1200px;margin:0 auto;padding:40px 20px}.welcome-section[data-v-0f544e24]{text-align:center;margin-bottom:60px;padding:40px 20px;background:linear-gradient(135deg,hsla(0,0%,100%,.9),rgba(248,250,252,.7));border-radius:20px;backdrop-filter:blur(10px);border:1px solid rgba(30,58,138,.1);box-shadow:0 8px 32px rgba(30,58,138,.08);position:relative;overflow:hidden;animation:fadeInDown-0f544e24 .8s ease-out}.welcome-section[data-v-0f544e24]:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(30,58,138,.02) 0,transparent 70%);animation:float-0f544e24 6s ease-in-out infinite}.welcome-section h2[data-v-0f544e24]{font-size:36px;margin-bottom:16px;text-shadow:0 4px 8px rgba(30,58,138,.1);color:var(--primary-color);font-weight:700;position:relative;z-index:1;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-section p[data-v-0f544e24]{font-size:20px;opacity:.8;color:var(--text-secondary);position:relative;z-index:1}@keyframes fadeInDown-0f544e24{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes float-0f544e24{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-10px) rotate(180deg)}}.loading[data-v-0f544e24]{max-width:800px;margin:0 auto}.empty[data-v-0f544e24]{text-align:center;padding:60px 0}.restaurants-grid[data-v-0f544e24]{display:flex;flex-wrap:wrap;justify-content:center;gap:30px;margin-bottom:40px}.restaurants-grid .restaurant-card[data-v-0f544e24]{flex:0 0 350px;max-width:350px;animation:slideInUp-0f544e24 .6s ease-out}.restaurants-grid .restaurant-card[data-v-0f544e24]:first-child{animation-delay:.1s}.restaurants-grid .restaurant-card[data-v-0f544e24]:nth-child(2){animation-delay:.2s}.restaurants-grid .restaurant-card[data-v-0f544e24]:nth-child(3){animation-delay:.3s}.restaurants-grid .restaurant-card[data-v-0f544e24]:nth-child(4){animation-delay:.4s}.restaurants-grid .restaurant-card[data-v-0f544e24]:nth-child(5){animation-delay:.5s}.restaurants-grid .restaurant-card[data-v-0f544e24]:nth-child(6){animation-delay:.6s}@keyframes slideInUp-0f544e24{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.restaurant-card[data-v-0f544e24]{background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(248,250,252,.95));backdrop-filter:blur(15px);border:2px solid rgba(30,58,138,.1);border-radius:20px;overflow:hidden;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;box-shadow:0 8px 25px rgba(30,58,138,.08);animation:fadeInUp-0f544e24 .8s ease-out}.restaurant-card[data-v-0f544e24]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient);opacity:0;transition:opacity .3s ease}.restaurant-card[data-v-0f544e24]:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 25px 50px rgba(30,58,138,.15);border-color:rgba(30,58,138,.3)}.restaurant-card[data-v-0f544e24]:hover:before{opacity:1}.restaurant-card .restaurant-content .restaurant-image[data-v-0f544e24]{height:220px;overflow:hidden;position:relative}.restaurant-card .restaurant-content .restaurant-image .el-image[data-v-0f544e24]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .4s ease}.restaurant-card .restaurant-content .restaurant-image .image-slot[data-v-0f544e24]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;background:linear-gradient(135deg,#f8fafc,#e2e8f0);color:var(--primary-color);font-size:40px;position:relative}.restaurant-card .restaurant-content .restaurant-image .image-slot[data-v-0f544e24]:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at center,rgba(30,58,138,.05) 0,transparent 70%)}.restaurant-card .restaurant-content:hover .restaurant-image .el-image[data-v-0f544e24]{transform:scale(1.05)}.restaurant-card .restaurant-content .restaurant-info[data-v-0f544e24]{padding:24px}.restaurant-card .restaurant-content .restaurant-info h3[data-v-0f544e24]{font-size:22px;margin-bottom:12px;color:#2c3e50;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.1)}.restaurant-card .restaurant-content .restaurant-info .description[data-v-0f544e24]{color:#666;margin-bottom:16px;line-height:1.6;font-size:14px}.restaurant-card .restaurant-content .restaurant-info .rating-info[data-v-0f544e24]{display:flex;align-items:center;gap:8px;color:var(--primary-color);font-size:15px;font-weight:500}.restaurant-card .restaurant-content .restaurant-info .rating-info .el-icon[data-v-0f544e24]{color:var(--primary-color)}.restaurant-card .restaurant-content .restaurant-actions[data-v-0f544e24]{padding:0 24px 24px}.restaurant-card .restaurant-content .restaurant-actions .el-button[data-v-0f544e24]{width:100%;height:48px;font-size:16px;font-weight:600;border-radius:12px;background:var(--primary-gradient);border:none;box-shadow:0 4px 15px rgba(30,58,138,.2);transition:all .3s ease}.restaurant-card .restaurant-content .restaurant-actions .el-button[data-v-0f544e24]:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(30,58,138,.3);background:linear-gradient(135deg,#1e40af,#1e3a8a)}.restaurant-card .restaurant-content .restaurant-actions .el-button[data-v-0f544e24]:active{transform:translateY(0)}@media(max-width:1200px){.restaurants-grid .restaurant-card[data-v-0f544e24]{flex:0 0 300px;max-width:300px}}@media(max-width:768px){.main[data-v-0f544e24]{padding:20px 15px}.welcome-section[data-v-0f544e24]{margin-bottom:40px;padding:25px 15px}.welcome-section h2[data-v-0f544e24]{font-size:28px;line-height:1.2}.welcome-section p[data-v-0f544e24]{font-size:16px}.header .header-content[data-v-0f544e24]{padding:0 15px}.header .header-content .title[data-v-0f544e24]{font-size:20px}.header .header-content .title .el-icon[data-v-0f544e24]{font-size:22px}.restaurants-grid[data-v-0f544e24]{gap:20px}.restaurants-grid .restaurant-card[data-v-0f544e24]{flex:0 0 100%;max-width:100%}.restaurant-card .restaurant-content .restaurant-image[data-v-0f544e24]{height:180px}.restaurant-card .restaurant-content .restaurant-info[data-v-0f544e24]{padding:20px}.restaurant-card .restaurant-content .restaurant-info h3[data-v-0f544e24]{font-size:20px;margin-bottom:10px}.restaurant-card .restaurant-content .restaurant-info .description[data-v-0f544e24]{font-size:14px;margin-bottom:12px}.restaurant-card .restaurant-content .restaurant-info .rating-info[data-v-0f544e24]{font-size:14px}.restaurant-card .restaurant-content .restaurant-actions[data-v-0f544e24]{padding:0 20px 20px}.restaurant-card .restaurant-content .restaurant-actions .el-button[data-v-0f544e24]{height:44px;font-size:15px;border-radius:8px}}@media(max-width:480px){.main[data-v-0f544e24]{padding:15px 10px}.welcome-section[data-v-0f544e24]{padding:20px 10px;margin-bottom:30px}.welcome-section h2[data-v-0f544e24]{font-size:24px}.welcome-section p[data-v-0f544e24]{font-size:14px}.header .header-content[data-v-0f544e24]{padding:0 10px}.header .header-content .title[data-v-0f544e24]{font-size:18px}.header .header-content .title .el-icon[data-v-0f544e24]{font-size:20px}.restaurants-grid[data-v-0f544e24]{gap:15px}.restaurant-card .restaurant-content .restaurant-image[data-v-0f544e24]{height:160px}.restaurant-card .restaurant-content .restaurant-info[data-v-0f544e24]{padding:15px}.restaurant-card .restaurant-content .restaurant-info h3[data-v-0f544e24]{font-size:18px;margin-bottom:8px}.restaurant-card .restaurant-content .restaurant-info .description[data-v-0f544e24]{font-size:13px;margin-bottom:10px}.restaurant-card .restaurant-content .restaurant-info .rating-info[data-v-0f544e24]{font-size:13px}.restaurant-card .restaurant-content .restaurant-actions[data-v-0f544e24]{padding:0 15px 15px}.restaurant-card .restaurant-content .restaurant-actions .el-button[data-v-0f544e24]{height:42px;font-size:14px}}@keyframes fadeInUp-0f544e24{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.dishes[data-v-3cae62c9]{min-height:100vh;background:linear-gradient(135deg,#f8fafc,#f1f5f9 30%,#e2e8f0 70%,#cbd5e1);position:relative;overflow-x:hidden}.dishes[data-v-3cae62c9]:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 80%,rgba(30,58,138,.03) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(59,130,246,.03) 0,transparent 50%);pointer-events:none;z-index:0}.dishes .el-container[data-v-3cae62c9]{position:relative;z-index:1}.header[data-v-3cae62c9]{background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(248,250,252,.95));backdrop-filter:blur(15px);border-bottom:3px solid rgba(30,58,138,.2);box-shadow:0 4px 20px rgba(30,58,138,.08);position:relative}.header[data-v-3cae62c9]:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0,var(--primary-color) 50%,transparent 100%)}.header .header-content[data-v-3cae62c9]{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;height:100%;padding:0 20px}.header .header-content .title[data-v-3cae62c9]{display:flex;align-items:center;gap:12px;color:#2c3e50;font-size:24px;font-weight:700;text-shadow:0 2px 4px rgba(255,140,0,.2);transition:all .3s ease}.header .header-content .title[data-v-3cae62c9]:hover{transform:translateY(-1px);text-shadow:0 4px 8px rgba(255,140,0,.3)}.header .header-content .title .el-icon[data-v-3cae62c9]{font-size:28px;color:var(--primary-color);filter:drop-shadow(0 2px 4px rgba(30,58,138,.3))}.header .header-content .back-button .el-button[data-v-3cae62c9]{background:var(--primary-gradient);border:none;box-shadow:0 4px 15px rgba(30,58,138,.2)}.header .header-content .back-button .el-button[data-v-3cae62c9]:hover{background:linear-gradient(135deg,#1e40af,#1e3a8a);transform:translateY(-2px);box-shadow:0 8px 25px rgba(30,58,138,.3)}.main[data-v-3cae62c9]{max-width:1200px;margin:0 auto;padding:40px 20px}.welcome-section[data-v-3cae62c9]{text-align:center;margin-bottom:40px;padding:40px 20px;background:linear-gradient(135deg,hsla(0,0%,100%,.9),rgba(248,250,252,.7));border-radius:20px;backdrop-filter:blur(10px);border:1px solid rgba(30,58,138,.1);box-shadow:0 8px 32px rgba(30,58,138,.08);position:relative;overflow:hidden;animation:fadeInDown-3cae62c9 .8s ease-out}.welcome-section[data-v-3cae62c9]:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(30,58,138,.02) 0,transparent 70%);animation:float-3cae62c9 6s ease-in-out infinite}.welcome-section h2[data-v-3cae62c9]{font-size:36px;margin-bottom:16px;text-shadow:0 4px 8px rgba(30,58,138,.1);color:var(--primary-color);font-weight:700;position:relative;z-index:1;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-section p[data-v-3cae62c9]{font-size:20px;opacity:.8;color:#666;position:relative;z-index:1}@keyframes fadeInDown-3cae62c9{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes float-3cae62c9{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-10px) rotate(180deg)}}.search-section[data-v-3cae62c9]{background:linear-gradient(135deg,hsla(0,0%,100%,.95),rgba(255,254,251,.85));backdrop-filter:blur(10px);padding:30px;border-radius:20px;margin-bottom:40px;border:1px solid rgba(255,140,0,.2);box-shadow:0 8px 25px rgba(255,140,0,.1)}.search-section .search-input[data-v-3cae62c9]{margin-bottom:20px}.search-section .search-input .el-input__wrapper[data-v-3cae62c9]{border-radius:12px;border:2px solid rgba(255,140,0,.2);box-shadow:0 4px 15px rgba(255,140,0,.1)}.search-section .search-input .el-input__wrapper[data-v-3cae62c9]:hover{border-color:rgba(255,140,0,.4)}.search-section .search-input .el-input__wrapper.is-focus[data-v-3cae62c9]{border-color:#ff8c00;box-shadow:0 0 0 2px rgba(255,140,0,.2)}.search-section .search-filters[data-v-3cae62c9]{display:flex;gap:15px;flex-wrap:wrap}.search-section .search-filters .el-select .el-select__wrapper[data-v-3cae62c9]{border-radius:12px;border:2px solid rgba(255,140,0,.2);box-shadow:0 4px 15px rgba(255,140,0,.1)}.search-section .search-filters .el-select .el-select__wrapper[data-v-3cae62c9]:hover{border-color:rgba(255,140,0,.4)}.search-section .search-filters .el-select .el-select__wrapper.is-focus[data-v-3cae62c9]{border-color:#ff8c00;box-shadow:0 0 0 2px rgba(255,140,0,.2)}.loading[data-v-3cae62c9]{max-width:1000px;margin:0 auto}.empty[data-v-3cae62c9]{text-align:center;padding:60px 0}.dishes-grid[data-v-3cae62c9]{display:flex;flex-wrap:wrap;justify-content:center;gap:25px;margin-bottom:40px}.dishes-grid .dish-card[data-v-3cae62c9]{flex:0 0 300px;max-width:300px;animation:slideInUp-3cae62c9 .6s ease-out}.dishes-grid .dish-card[data-v-3cae62c9]:first-child{animation-delay:.1s}.dishes-grid .dish-card[data-v-3cae62c9]:nth-child(2){animation-delay:.2s}.dishes-grid .dish-card[data-v-3cae62c9]:nth-child(3){animation-delay:.3s}.dishes-grid .dish-card[data-v-3cae62c9]:nth-child(4){animation-delay:.4s}.dishes-grid .dish-card[data-v-3cae62c9]:nth-child(5){animation-delay:.5s}.dishes-grid .dish-card[data-v-3cae62c9]:nth-child(6){animation-delay:.6s}.dishes-grid .dish-card[data-v-3cae62c9]:nth-child(7){animation-delay:.7s}.dishes-grid .dish-card[data-v-3cae62c9]:nth-child(8){animation-delay:.8s}.dishes-grid .dish-card[data-v-3cae62c9]:nth-child(9){animation-delay:.9s}.dishes-grid .dish-card[data-v-3cae62c9]:nth-child(10){animation-delay:1s}.dishes-grid .dish-card[data-v-3cae62c9]:nth-child(11){animation-delay:1.1s}.dishes-grid .dish-card[data-v-3cae62c9]:nth-child(12){animation-delay:1.2s}@keyframes slideInUp-3cae62c9{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.dish-card[data-v-3cae62c9]{background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(255,254,251,.95));backdrop-filter:blur(15px);border:2px solid rgba(255,140,0,.1);border-radius:20px;overflow:hidden;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;box-shadow:0 8px 25px rgba(255,140,0,.1)}.dish-card[data-v-3cae62c9]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ff8c00,#ffb84d 50%,#ff8c00);opacity:0;transition:opacity .3s ease}.dish-card[data-v-3cae62c9]:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 25px 50px rgba(255,140,0,.2);border-color:rgba(255,140,0,.3)}.dish-card[data-v-3cae62c9]:hover:before{opacity:1}.dish-card .dish-content .dish-image[data-v-3cae62c9]{position:relative;height:220px;overflow:hidden}.dish-card .dish-content .dish-image .el-image[data-v-3cae62c9]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .4s ease}.dish-card .dish-content .dish-image .image-slot[data-v-3cae62c9]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;background:linear-gradient(135deg,#fffefb,#fff5e6);color:#ff8c00;font-size:40px;position:relative}.dish-card .dish-content .dish-image .image-slot[data-v-3cae62c9]:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at center,rgba(255,140,0,.05) 0,transparent 70%)}.dish-card .dish-content .dish-image .rating-badge[data-v-3cae62c9]{position:absolute;top:12px;right:12px;background:linear-gradient(135deg,#ff8c00,#ffb84d);color:#fff;padding:6px 10px;border-radius:15px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:3px;box-shadow:0 4px 15px rgba(255,140,0,.3)}.dish-card .dish-content:hover .dish-image .el-image[data-v-3cae62c9]{transform:scale(1.05)}.dish-card .dish-content .dish-info[data-v-3cae62c9]{padding:24px}.dish-card .dish-content .dish-info h3[data-v-3cae62c9]{font-size:20px;margin-bottom:12px;color:#2c3e50;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.1)}.dish-card .dish-content .dish-info .description[data-v-3cae62c9]{color:#666;margin-bottom:16px;line-height:1.6;font-size:14px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dish-card .dish-content .dish-info .dish-meta[data-v-3cae62c9]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.dish-card .dish-content .dish-info .dish-meta .price[data-v-3cae62c9]{font-size:20px;font-weight:700;color:#ff8c00;text-shadow:0 2px 4px rgba(255,140,0,.2)}.dish-card .dish-content .dish-info .dish-meta .category[data-v-3cae62c9]{background:linear-gradient(135deg,rgba(255,140,0,.05),rgba(255,184,77,.05));color:#ff8c00;padding:4px 10px;border-radius:8px;font-size:12px;font-weight:500;border:1px solid rgba(255,140,0,.2)}.dish-card .dish-content .dish-info .dish-stats .evaluation-count[data-v-3cae62c9]{display:flex;align-items:center;gap:6px;color:#666;font-size:14px}.dish-card .dish-content .dish-info .dish-stats .no-evaluation[data-v-3cae62c9]{color:#999;font-size:14px}.dish-card .dish-content .dish-actions[data-v-3cae62c9]{padding:0 24px 24px}.dish-card .dish-content .dish-actions .el-button[data-v-3cae62c9]{width:100%;height:48px;font-size:16px;font-weight:600;border-radius:12px;background:linear-gradient(135deg,#ff8c00,#ffb84d);border:none;box-shadow:0 4px 15px rgba(255,140,0,.3);transition:all .3s ease}.dish-card .dish-content .dish-actions .el-button[data-v-3cae62c9]:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(255,140,0,.4);background:linear-gradient(135deg,#e67e00,#ff8c00)}.dish-card .dish-content .dish-actions .el-button[data-v-3cae62c9]:active{transform:translateY(0)}.pagination[data-v-3cae62c9]{display:flex;justify-content:center;margin-top:40px}@media(max-width:1200px){.dishes-grid .dish-card[data-v-3cae62c9]{flex:0 0 280px;max-width:280px}}@media(max-width:768px){.dishes-grid .dish-card[data-v-3cae62c9]{flex:0 0 100%;max-width:400px}}@media(max-width:480px){.dishes-grid .dish-card[data-v-3cae62c9]{flex:0 0 100%;max-width:100%}}.review[data-v-25e22d9f]{min-height:100vh;background:linear-gradient(135deg,#f8fafc,#f1f5f9 30%,#e2e8f0 70%,#cbd5e1);position:relative;overflow-x:hidden}.review[data-v-25e22d9f]:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 80%,rgba(30,58,138,.03) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(59,130,246,.03) 0,transparent 50%);pointer-events:none;z-index:0}.top-nav[data-v-25e22d9f]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(248,250,252,.95));backdrop-filter:blur(15px);border-bottom:3px solid rgba(30,58,138,.2);position:sticky;top:0;z-index:100;box-shadow:0 4px 20px rgba(30,58,138,.08)}.top-nav[data-v-25e22d9f]:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0,var(--primary-color) 50%,transparent 100%)}.top-nav .nav-left[data-v-25e22d9f],.top-nav .nav-right[data-v-25e22d9f]{flex:0 0 auto}.top-nav .nav-center[data-v-25e22d9f]{flex:1;text-align:center}.top-nav .store-name[data-v-25e22d9f]{font-size:18px;font-weight:600;color:#2c3e50;margin:0}.top-nav .cancel-btn[data-v-25e22d9f],.top-nav .info-btn[data-v-25e22d9f]{color:var(--text-secondary);font-size:16px;font-weight:500}.top-nav .cancel-btn[data-v-25e22d9f]:hover,.top-nav .info-btn[data-v-25e22d9f]:hover{color:var(--primary-color)}.review-content[data-v-25e22d9f]{padding:24px 20px;max-width:600px;margin:0 auto}.overall-rating-section[data-v-25e22d9f]{background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(248,250,252,.95));backdrop-filter:blur(15px);border-radius:16px;padding:24px;margin-bottom:20px;box-shadow:0 8px 32px rgba(30,58,138,.08);border:1px solid rgba(30,58,138,.1);position:relative;overflow:hidden;animation:fadeInUp-25e22d9f .8s ease-out}.overall-rating-section[data-v-25e22d9f]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient)}.overall-rating-section .section-title[data-v-25e22d9f]{font-size:18px;font-weight:700;color:var(--primary-color);margin:0 0 20px 0;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.overall-rating-section .rating-stars[data-v-25e22d9f]{display:flex;justify-content:space-between;align-items:center}.overall-rating-section .rating-stars .star-item[data-v-25e22d9f]{display:flex;flex-direction:column;align-items:center;gap:12px;cursor:pointer;padding:12px 8px;border-radius:12px;transition:all .3s ease}.overall-rating-section .rating-stars .star-item[data-v-25e22d9f]:hover{background:rgba(30,58,138,.05);transform:translateY(-2px)}.overall-rating-section .rating-stars .star-item .star-icon[data-v-25e22d9f]{font-size:36px;color:#cbd5e1;transition:all .3s ease}.overall-rating-section .rating-stars .star-item .star-icon.active[data-v-25e22d9f]{color:var(--primary-color);transform:scale(1.1)}.overall-rating-section .rating-stars .star-item .rating-label[data-v-25e22d9f]{font-size:13px;color:var(--text-secondary);transition:all .3s ease;font-weight:500}.overall-rating-section .rating-stars .star-item .rating-label.active[data-v-25e22d9f]{color:var(--primary-color);font-weight:600}.detailed-rating-section[data-v-25e22d9f]{background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(248,250,252,.95));backdrop-filter:blur(15px);border-radius:16px;padding:24px;margin-bottom:20px;box-shadow:0 8px 32px rgba(30,58,138,.08);border:1px solid rgba(30,58,138,.1);position:relative;overflow:hidden;animation:fadeInUp-25e22d9f .8s ease-out .2s both}.detailed-rating-section[data-v-25e22d9f]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient)}.detailed-rating-section .section-title[data-v-25e22d9f]{font-size:18px;font-weight:700;color:var(--primary-color);margin:0 0 20px 0;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.detailed-rating-section .rating-item[data-v-25e22d9f]{margin-bottom:24px}.detailed-rating-section .rating-item[data-v-25e22d9f]:last-child{margin-bottom:0}.detailed-rating-section .rating-item .rating-header[data-v-25e22d9f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.detailed-rating-section .rating-item .rating-header .rating-name[data-v-25e22d9f]{font-size:16px;color:var(--text-primary);font-weight:600}.detailed-rating-section .rating-item .rating-header .rating-stars-small[data-v-25e22d9f]{display:flex;gap:6px}.detailed-rating-section .rating-item .rating-header .rating-stars-small .star-icon-small[data-v-25e22d9f]{font-size:24px;color:#cbd5e1;cursor:pointer;transition:all .3s ease}.detailed-rating-section .rating-item .rating-header .rating-stars-small .star-icon-small.active[data-v-25e22d9f]{color:var(--primary-color);transform:scale(1.1)}.detailed-rating-section .rating-item .rating-header .rating-stars-small .star-icon-small[data-v-25e22d9f]:hover{color:var(--primary-color);transform:scale(1.05)}.detailed-rating-section .rating-item .quick-options[data-v-25e22d9f]{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.detailed-rating-section .rating-item .quick-options .quick-option-tag[data-v-25e22d9f]{cursor:pointer;transition:all .3s ease;border:1px solid rgba(30,58,138,.2);background:#fff;color:var(--text-secondary);border-radius:20px;padding:6px 12px;font-size:13px}.detailed-rating-section .rating-item .quick-options .quick-option-tag[data-v-25e22d9f]:hover{border-color:var(--primary-color);color:var(--primary-color);background:rgba(30,58,138,.05);transform:translateY(-1px)}.detailed-rating-section .rating-item .quick-options .quick-option-tag.el-tag--warning[data-v-25e22d9f]{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.comment-section[data-v-25e22d9f]{background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(248,250,252,.95));backdrop-filter:blur(15px);border-radius:16px;padding:24px;margin-bottom:20px;box-shadow:0 8px 32px rgba(30,58,138,.08);border:1px solid rgba(30,58,138,.1);position:relative;overflow:hidden;animation:fadeInUp-25e22d9f .8s ease-out .4s both}.comment-section[data-v-25e22d9f]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient)}.comment-section .comment-prompt[data-v-25e22d9f]{background:linear-gradient(135deg,rgba(30,58,138,.05),rgba(59,130,246,.05));padding:16px;border-radius:12px;margin-bottom:20px;border:1px solid rgba(30,58,138,.1)}.comment-section .comment-prompt span[data-v-25e22d9f]{font-size:14px;color:var(--text-secondary);line-height:1.6;font-weight:500}.comment-section .comment-input[data-v-25e22d9f] .el-textarea__inner{border:1px solid rgba(30,58,138,.2);border-radius:12px;font-size:14px;line-height:1.6;background:#fafafa;color:var(--text-primary)}.comment-section .comment-input[data-v-25e22d9f] .el-textarea__inner:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(30,58,138,.1);background:#fff}.comment-section .comment-input[data-v-25e22d9f] .el-textarea__inner::-moz-placeholder{color:var(--text-secondary)}.comment-section .comment-input[data-v-25e22d9f] .el-textarea__inner::placeholder{color:var(--text-secondary)}.bottom-actions[data-v-25e22d9f]{display:flex;justify-content:center;padding:24px 0}.bottom-actions .publish-btn[data-v-25e22d9f]{width:100%;max-width:320px;background:var(--primary-gradient);border:none;color:#fff;border-radius:16px;padding:16px 24px;font-size:16px;font-weight:700;box-shadow:0 6px 20px rgba(30,58,138,.2);transition:all .3s ease}.bottom-actions .publish-btn[data-v-25e22d9f]:hover{background:linear-gradient(135deg,#1e40af,#1e3a8a);transform:translateY(-2px);box-shadow:0 10px 30px rgba(30,58,138,.3)}.bottom-actions .publish-btn[data-v-25e22d9f]:active{transform:translateY(0)}.bottom-actions .publish-btn[data-v-25e22d9f]:disabled{background:#cbd5e1;cursor:not-allowed;transform:none;box-shadow:none}.loading[data-v-25e22d9f]{max-width:800px;margin:0 auto}@media(max-width:768px){.review-content[data-v-25e22d9f]{padding:20px 16px}.top-nav[data-v-25e22d9f]{padding:12px 16px}.top-nav .store-name[data-v-25e22d9f]{font-size:16px}.top-nav .cancel-btn[data-v-25e22d9f],.top-nav .info-btn[data-v-25e22d9f]{font-size:14px}.comment-section[data-v-25e22d9f],.detailed-rating-section[data-v-25e22d9f],.overall-rating-section[data-v-25e22d9f]{padding:20px;margin-bottom:16px;border-radius:12px}.rating-stars .star-item[data-v-25e22d9f]{padding:8px 4px}.rating-stars .star-item .star-icon[data-v-25e22d9f]{font-size:32px}.rating-stars .star-item .rating-label[data-v-25e22d9f]{font-size:12px}.rating-stars-small .star-icon-small[data-v-25e22d9f]{font-size:20px}.rating-item .rating-name[data-v-25e22d9f]{font-size:14px}.comment-prompt[data-v-25e22d9f]{padding:12px}.comment-prompt span[data-v-25e22d9f]{font-size:13px}.bottom-actions[data-v-25e22d9f]{padding:20px 0}.bottom-actions .publish-btn[data-v-25e22d9f]{padding:14px 20px;font-size:15px;max-width:280px}}@keyframes fadeInUp-25e22d9f{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.evaluation-stats[data-v-564c0cb8]{min-height:100vh;background:linear-gradient(135deg,#f8fafc,#f1f5f9 30%,#e2e8f0 70%,#cbd5e1);position:relative;overflow-x:hidden}.evaluation-stats[data-v-564c0cb8]:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 80%,rgba(30,58,138,.03) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(59,130,246,.03) 0,transparent 50%);pointer-events:none;z-index:0}.top-nav[data-v-564c0cb8]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(248,250,252,.95));backdrop-filter:blur(15px);border-bottom:3px solid rgba(30,58,138,.2);position:sticky;top:0;z-index:100;box-shadow:0 4px 20px rgba(30,58,138,.08)}.top-nav[data-v-564c0cb8]:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0,var(--primary-color) 50%,transparent 100%)}.top-nav .nav-left[data-v-564c0cb8],.top-nav .nav-right[data-v-564c0cb8]{flex:0 0 auto}.top-nav .nav-center[data-v-564c0cb8]{flex:1;text-align:center}.top-nav .page-title[data-v-564c0cb8]{font-size:18px;font-weight:600;color:#2c3e50;margin:0}.top-nav .back-btn[data-v-564c0cb8],.top-nav .refresh-btn[data-v-564c0cb8]{color:var(--text-secondary);font-size:16px;font-weight:500}.top-nav .back-btn[data-v-564c0cb8]:hover,.top-nav .refresh-btn[data-v-564c0cb8]:hover{color:var(--primary-color)}.stats-content[data-v-564c0cb8]{padding:24px 20px;max-width:1000px;margin:0 auto}.loading[data-v-564c0cb8]{max-width:800px;margin:0 auto}.stats-container[data-v-564c0cb8]{display:flex;flex-direction:column;gap:24px}.overview-section .section-title[data-v-564c0cb8]{font-size:20px;font-weight:700;color:#2c3e50;margin:0 0 20px 0}.overview-section .overview-cards[data-v-564c0cb8]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.overview-section .overview-cards .overview-card[data-v-564c0cb8]{background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(248,250,252,.95));backdrop-filter:blur(15px);border-radius:16px;padding:24px;box-shadow:0 8px 32px rgba(30,58,138,.08);border:1px solid rgba(30,58,138,.1);display:flex;align-items:center;gap:16px;position:relative;overflow:hidden;animation:fadeInUp-564c0cb8 .8s ease-out}.overview-section .overview-cards .overview-card[data-v-564c0cb8]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient)}.overview-section .overview-cards .overview-card .card-icon[data-v-564c0cb8]{width:48px;height:48px;background:var(--primary-gradient);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px}.overview-section .overview-cards .overview-card .card-content .card-number[data-v-564c0cb8]{font-size:24px;font-weight:700;color:#2c3e50;line-height:1}.overview-section .overview-cards .overview-card .card-content .card-label[data-v-564c0cb8]{font-size:14px;color:#8b7355;margin-top:4px}.restaurants-section .section-title[data-v-564c0cb8]{font-size:20px;font-weight:700;color:#2c3e50;margin:0 0 20px 0}.restaurants-section .restaurants-list[data-v-564c0cb8]{display:flex;flex-direction:column;gap:20px}.restaurants-section .restaurants-list .restaurant-card[data-v-564c0cb8]{background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(248,250,252,.95));backdrop-filter:blur(15px);border-radius:16px;padding:24px;box-shadow:0 8px 32px rgba(30,58,138,.08);border:1px solid rgba(30,58,138,.1);position:relative;overflow:hidden;animation:fadeInUp-564c0cb8 .8s ease-out}.restaurants-section .restaurants-list .restaurant-card[data-v-564c0cb8]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient)}.restaurants-section .restaurants-list .restaurant-card .restaurant-header[data-v-564c0cb8]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.restaurants-section .restaurants-list .restaurant-card .restaurant-header .restaurant-info[data-v-564c0cb8]{flex:1}.restaurants-section .restaurants-list .restaurant-card .restaurant-header .restaurant-info .restaurant-name[data-v-564c0cb8]{font-size:18px;font-weight:700;color:#2c3e50;margin:0 0 8px 0}.restaurants-section .restaurants-list .restaurant-card .restaurant-header .restaurant-info .restaurant-description[data-v-564c0cb8]{font-size:14px;color:#8b7355;margin:0}.restaurants-section .restaurants-list .restaurant-card .restaurant-header .restaurant-rating[data-v-564c0cb8]{text-align:right}.restaurants-section .restaurants-list .restaurant-card .restaurant-header .restaurant-rating .rating-score[data-v-564c0cb8]{font-size:24px;font-weight:700;color:var(--primary-color);line-height:1}.restaurants-section .restaurants-list .restaurant-card .restaurant-header .restaurant-rating .rating-stars[data-v-564c0cb8]{margin:4px 0}.restaurants-section .restaurants-list .restaurant-card .restaurant-header .restaurant-rating .rating-count[data-v-564c0cb8]{font-size:12px;color:#8b7355}.restaurants-section .restaurants-list .restaurant-card .rating-details[data-v-564c0cb8]{margin-bottom:20px}.restaurants-section .restaurants-list .restaurant-card .rating-details .rating-item[data-v-564c0cb8]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.restaurants-section .restaurants-list .restaurant-card .rating-details .rating-item .rating-label[data-v-564c0cb8]{width:60px;font-size:14px;color:#2c3e50;font-weight:500}.restaurants-section .restaurants-list .restaurant-card .rating-details .rating-item .rating-bar[data-v-564c0cb8]{flex:1;height:8px;background:#f0e6d2;border-radius:4px;overflow:hidden}.restaurants-section .restaurants-list .restaurant-card .rating-details .rating-item .rating-bar .rating-fill[data-v-564c0cb8]{height:100%;background:var(--primary-gradient);border-radius:4px;transition:width .3s ease}.restaurants-section .restaurants-list .restaurant-card .rating-details .rating-item .rating-value[data-v-564c0cb8]{width:40px;text-align:right;font-size:14px;color:#8b7355;font-weight:500}.restaurants-section .restaurants-list .restaurant-card .quick-options-stats[data-v-564c0cb8],.restaurants-section .restaurants-list .restaurant-card .recent-evaluations[data-v-564c0cb8]{margin-bottom:16px}.restaurants-section .restaurants-list .restaurant-card .quick-options-stats[data-v-564c0cb8]:last-child,.restaurants-section .restaurants-list .restaurant-card .recent-evaluations[data-v-564c0cb8]:last-child{margin-bottom:0}.restaurants-section .restaurants-list .restaurant-card .quick-options-stats .stats-subtitle[data-v-564c0cb8],.restaurants-section .restaurants-list .restaurant-card .recent-evaluations .stats-subtitle[data-v-564c0cb8]{font-size:14px;font-weight:600;color:#2c3e50;margin:0 0 12px 0}.restaurants-section .restaurants-list .restaurant-card .quick-options-stats .quick-options-list[data-v-564c0cb8],.restaurants-section .restaurants-list .restaurant-card .recent-evaluations .quick-options-list[data-v-564c0cb8]{display:flex;flex-wrap:wrap;gap:8px}.restaurants-section .restaurants-list .restaurant-card .quick-options-stats .quick-options-list .quick-option-item[data-v-564c0cb8],.restaurants-section .restaurants-list .restaurant-card .recent-evaluations .quick-options-list .quick-option-item[data-v-564c0cb8]{background:#fff5e6;border:1px solid #f0e6d2;border-radius:16px;padding:6px 12px;font-size:12px;display:flex;align-items:center;gap:6px}.restaurants-section .restaurants-list .restaurant-card .quick-options-stats .quick-options-list .quick-option-item .option-label[data-v-564c0cb8],.restaurants-section .restaurants-list .restaurant-card .recent-evaluations .quick-options-list .quick-option-item .option-label[data-v-564c0cb8]{color:#8b7355}.restaurants-section .restaurants-list .restaurant-card .quick-options-stats .quick-options-list .quick-option-item .option-count[data-v-564c0cb8],.restaurants-section .restaurants-list .restaurant-card .recent-evaluations .quick-options-list .quick-option-item .option-count[data-v-564c0cb8]{color:#ff6b35;font-weight:600}.restaurants-section .restaurants-list .restaurant-card .quick-options-stats .evaluations-list[data-v-564c0cb8],.restaurants-section .restaurants-list .restaurant-card .recent-evaluations .evaluations-list[data-v-564c0cb8]{display:flex;flex-direction:column;gap:12px}.restaurants-section .restaurants-list .restaurant-card .quick-options-stats .evaluations-list .evaluation-item[data-v-564c0cb8],.restaurants-section .restaurants-list .restaurant-card .recent-evaluations .evaluations-list .evaluation-item[data-v-564c0cb8]{background:#fafafa;border-radius:8px;padding:12px;border:1px solid #f0e6d2}.restaurants-section .restaurants-list .restaurant-card .quick-options-stats .evaluations-list .evaluation-item .evaluation-rating[data-v-564c0cb8],.restaurants-section .restaurants-list .restaurant-card .recent-evaluations .evaluations-list .evaluation-item .evaluation-rating[data-v-564c0cb8]{margin-bottom:6px}.restaurants-section .restaurants-list .restaurant-card .quick-options-stats .evaluations-list .evaluation-item .evaluation-comment[data-v-564c0cb8],.restaurants-section .restaurants-list .restaurant-card .recent-evaluations .evaluations-list .evaluation-item .evaluation-comment[data-v-564c0cb8]{font-size:13px;color:#2c3e50;line-height:1.4;margin-bottom:6px}.restaurants-section .restaurants-list .restaurant-card .quick-options-stats .evaluations-list .evaluation-item .evaluation-time[data-v-564c0cb8],.restaurants-section .restaurants-list .restaurant-card .recent-evaluations .evaluations-list .evaluation-item .evaluation-time[data-v-564c0cb8]{font-size:11px;color:#8b7355}@media(max-width:768px){.stats-content[data-v-564c0cb8]{padding:20px 16px}.top-nav[data-v-564c0cb8]{padding:12px 16px}.top-nav .page-title[data-v-564c0cb8]{font-size:16px}.top-nav .back-btn[data-v-564c0cb8],.top-nav .refresh-btn[data-v-564c0cb8]{font-size:14px}.overview-cards[data-v-564c0cb8]{grid-template-columns:1fr;gap:12px}.overview-cards .overview-card[data-v-564c0cb8]{padding:20px}.overview-cards .overview-card .card-icon[data-v-564c0cb8]{width:40px;height:40px;font-size:20px}.overview-cards .overview-card .card-content .card-number[data-v-564c0cb8]{font-size:20px}.restaurant-card[data-v-564c0cb8]{padding:20px}.restaurant-card .restaurant-header[data-v-564c0cb8]{flex-direction:column;gap:12px}.restaurant-card .restaurant-header .restaurant-rating[data-v-564c0cb8]{text-align:left;align-self:flex-start}.restaurant-card .rating-details .rating-item[data-v-564c0cb8]{gap:8px}.restaurant-card .rating-details .rating-item .rating-label[data-v-564c0cb8]{width:50px;font-size:13px}.restaurant-card .rating-details .rating-item .rating-value[data-v-564c0cb8]{width:35px;font-size:13px}}@keyframes fadeInUp-564c0cb8{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.recommended-shops[data-v-a63d647e]{min-height:100vh;background:linear-gradient(135deg,#f8fafc,#f1f5f9 30%,#e2e8f0 70%,#cbd5e1);position:relative;overflow-x:hidden;display:flex;flex-direction:column}.recommended-shops[data-v-a63d647e]:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 80%,rgba(30,58,138,.03) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(59,130,246,.03) 0,transparent 50%);pointer-events:none;z-index:0}.top-nav[data-v-a63d647e]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(248,250,252,.95));backdrop-filter:blur(15px);border-bottom:3px solid rgba(30,58,138,.2);position:sticky;top:0;z-index:100;box-shadow:0 4px 20px rgba(30,58,138,.08);flex-shrink:0}.top-nav[data-v-a63d647e]:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0,var(--primary-color) 50%,transparent 100%)}.top-nav .nav-left[data-v-a63d647e],.top-nav .nav-right[data-v-a63d647e]{flex:0 0 auto}.top-nav .nav-center[data-v-a63d647e]{flex:1;text-align:center}.top-nav .page-title[data-v-a63d647e]{font-size:18px;font-weight:600;color:#2c3e50;margin:0;display:flex;align-items:center;justify-content:center;gap:8px}.top-nav .page-title .el-icon[data-v-a63d647e]{color:var(--primary-color)}.top-nav .back-btn[data-v-a63d647e],.top-nav .refresh-btn[data-v-a63d647e]{color:var(--text-secondary);font-size:16px;font-weight:500}.top-nav .back-btn[data-v-a63d647e]:hover,.top-nav .refresh-btn[data-v-a63d647e]:hover{color:var(--primary-color)}.recommendations-content[data-v-a63d647e]{flex:1;padding:20px;max-width:1400px;margin:0 auto;width:100%;display:flex;flex-direction:column}.loading[data-v-a63d647e]{flex:1;display:flex;align-items:center;justify-content:center}.recommendations-container[data-v-a63d647e]{flex:1;display:flex;flex-direction:column;gap:20px}.recommendation-header[data-v-a63d647e]{text-align:center;margin-bottom:10px}.recommendation-header .header-title[data-v-a63d647e]{font-size:24px;font-weight:700;color:#2c3e50;margin:0 0 8px 0}.recommendation-header .header-subtitle[data-v-a63d647e]{font-size:14px;color:var(--text-secondary);margin:0}.shops-grid[data-v-a63d647e]{flex:1;display:grid;grid-template-columns:repeat(2,1fr);gap:20px;min-height:0}.shops-grid .shop-card[data-v-a63d647e]{background:linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(248,250,252,.95));backdrop-filter:blur(15px);border-radius:16px;overflow:hidden;box-shadow:0 8px 32px rgba(30,58,138,.08);border:1px solid rgba(30,58,138,.1);cursor:pointer;transition:all .3s ease;position:relative;display:flex;flex-direction:column;animation:fadeInUp-a63d647e .8s ease-out}.shops-grid .shop-card[data-v-a63d647e]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient)}.shops-grid .shop-card[data-v-a63d647e]:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(30,58,138,.15)}.shops-grid .shop-card .rank-badge[data-v-a63d647e]{position:absolute;top:12px;left:12px;z-index:10;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;color:#fff}.shops-grid .shop-card .rank-badge .rank-number[data-v-a63d647e]{line-height:1}.shops-grid .shop-card.rank-1 .rank-badge[data-v-a63d647e]{background:linear-gradient(135deg,gold,#ffed4e);color:#8b4513}.shops-grid .shop-card.rank-2 .rank-badge[data-v-a63d647e]{background:linear-gradient(135deg,silver,#e8e8e8);color:#666}.shops-grid .shop-card.rank-3 .rank-badge[data-v-a63d647e]{background:linear-gradient(135deg,#cd7f32,#daa520);color:#fff}.shops-grid .shop-card.rank-4 .rank-badge[data-v-a63d647e]{background:linear-gradient(135deg,#3b82f6,#1e40af);color:#fff}.shops-grid .shop-card .shop-image[data-v-a63d647e]{height:180px;position:relative;overflow:hidden}.shops-grid .shop-card .shop-image .el-image[data-v-a63d647e]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .3s ease}.shops-grid .shop-card .shop-image .image-slot[data-v-a63d647e]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;background:linear-gradient(135deg,#f8fafc,#e2e8f0);color:var(--primary-color);font-size:32px}.shops-grid .shop-card .shop-image .image-overlay[data-v-a63d647e]{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.3));display:flex;align-items:flex-end;padding:12px}.shops-grid .shop-card .shop-image .image-overlay .recommendation-tag[data-v-a63d647e]{background:rgba(30,58,138,.9);color:#fff;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px}.shops-grid .shop-card:hover .shop-image .el-image[data-v-a63d647e]{transform:scale(1.05)}.shops-grid .shop-card .shop-info[data-v-a63d647e]{padding:16px;flex:1;display:flex;flex-direction:column;gap:12px}.shops-grid .shop-card .shop-info .shop-name[data-v-a63d647e]{font-size:16px;font-weight:700;color:#2c3e50;margin:0;line-height:1.2}.shops-grid .shop-card .shop-info .shop-description[data-v-a63d647e]{font-size:12px;color:var(--text-secondary);margin:0;line-height:1.3}.shops-grid .shop-card .shop-info .rating-info[data-v-a63d647e]{display:flex;justify-content:space-between;align-items:center}.shops-grid .shop-card .shop-info .rating-info .rating-score[data-v-a63d647e]{display:flex;align-items:center;gap:6px}.shops-grid .shop-card .shop-info .rating-info .rating-score .score-number[data-v-a63d647e]{font-size:18px;font-weight:700;color:var(--primary-color)}.shops-grid .shop-card .shop-info .rating-info .rating-score .rating-stars[data-v-a63d647e] .el-rate__icon{font-size:12px}.shops-grid .shop-card .shop-info .rating-info .rating-count[data-v-a63d647e]{font-size:11px;color:var(--text-secondary)}.shops-grid .shop-card .shop-info .detailed-ratings .rating-item[data-v-a63d647e]{display:flex;align-items:center;gap:6px;margin-bottom:4px}.shops-grid .shop-card .shop-info .detailed-ratings .rating-item .rating-label[data-v-a63d647e]{width:40px;font-size:11px;color:#2c3e50;font-weight:500}.shops-grid .shop-card .shop-info .detailed-ratings .rating-item .rating-bar[data-v-a63d647e]{flex:1;height:4px;background:rgba(30,58,138,.1);border-radius:2px;overflow:hidden}.shops-grid .shop-card .shop-info .detailed-ratings .rating-item .rating-bar .rating-fill[data-v-a63d647e]{height:100%;background:var(--primary-gradient);border-radius:2px;transition:width .3s ease}.shops-grid .shop-card .shop-info .detailed-ratings .rating-item .rating-value[data-v-a63d647e]{width:28px;text-align:right;font-size:11px;color:var(--text-secondary);font-weight:500}.shops-grid .shop-card .shop-info .recommendation-reasons .reason-tags[data-v-a63d647e]{display:flex;flex-wrap:wrap;gap:4px}.shops-grid .shop-card .shop-info .recommendation-reasons .reason-tags .reason-tag[data-v-a63d647e]{font-size:10px;padding:2px 6px;border-radius:8px;height:auto;line-height:1.2}.shops-grid .shop-card .shop-info .shop-actions[data-v-a63d647e]{margin-top:auto}.shops-grid .shop-card .shop-info .shop-actions .evaluate-btn[data-v-a63d647e]{width:100%;background:var(--primary-gradient);border:none;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:600;box-shadow:0 4px 15px rgba(30,58,138,.2)}.shops-grid .shop-card .shop-info .shop-actions .evaluate-btn[data-v-a63d647e]:hover{background:linear-gradient(135deg,#1e40af,#1e3a8a);transform:translateY(-1px);box-shadow:0 6px 20px rgba(30,58,138,.3)}.footer-tip[data-v-a63d647e]{display:flex;align-items:center;justify-content:center;gap:6px;padding:12px;background:rgba(30,58,138,.1);border-radius:8px;font-size:12px;color:var(--text-secondary);margin-top:auto}.footer-tip .el-icon[data-v-a63d647e]{color:var(--primary-color)}@media(max-width:1200px){.shops-grid[data-v-a63d647e]{grid-template-columns:1fr;gap:16px}}@media(max-width:768px){.recommendations-content[data-v-a63d647e]{padding:16px}.top-nav[data-v-a63d647e]{padding:12px 16px}.top-nav .page-title[data-v-a63d647e]{font-size:16px}.top-nav .back-btn[data-v-a63d647e],.top-nav .refresh-btn[data-v-a63d647e]{font-size:14px}.recommendation-header .header-title[data-v-a63d647e]{font-size:20px}.recommendation-header .header-subtitle[data-v-a63d647e]{font-size:13px}.shops-grid[data-v-a63d647e]{gap:12px}.shops-grid .shop-card .shop-image[data-v-a63d647e]{height:100px}.shops-grid .shop-card .shop-info[data-v-a63d647e]{padding:12px;gap:10px}.shops-grid .shop-card .shop-info .shop-name[data-v-a63d647e]{font-size:15px}.shops-grid .shop-card .shop-info .shop-description[data-v-a63d647e]{font-size:11px}.shops-grid .shop-card .shop-info .rating-info .rating-score .score-number[data-v-a63d647e]{font-size:16px}.shops-grid .shop-card .shop-info .detailed-ratings .rating-item[data-v-a63d647e]{gap:4px}.shops-grid .shop-card .shop-info .detailed-ratings .rating-item .rating-label[data-v-a63d647e]{width:35px;font-size:10px}.shops-grid .shop-card .shop-info .detailed-ratings .rating-item .rating-value[data-v-a63d647e]{width:25px;font-size:10px}}@keyframes fadeInUp-a63d647e{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}:root{--primary-color:#1e3a8a;--primary-light:#3b82f6;--primary-dark:#1e40af;--primary-gradient:linear-gradient(135deg,#1e3a8a,#3b82f6);--accent-color:#1e3a8a;--secondary-color:#f8fafc;--text-primary:#1e293b;--text-secondary:#64748b;--text-light:#94a3b8;--background-light:#f8fafc;--background-white:#fff;--border-color:#e2e8f0;--shadow-color:rgba(30,58,138,.08);--success-color:#10b981;--warning-color:#f59e0b;--error-color:#ef4444}*{margin:0;padding:0;box-sizing:border-box}body,html{height:100%;font-family:Microsoft YaHei,微软雅黑,PingFang SC,Hiragino Sans GB,Helvetica Neue,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-primary);background-color:var(--background-light)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--primary-dark)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.flex{display:flex}.flex-center{justify-content:center}.flex-between,.flex-center{display:flex;align-items:center}.flex-between{justify-content:space-between}.flex-column{display:flex;flex-direction:column}.mb-10{margin-bottom:10px}.mb-20{margin-bottom:20px}.mb-30{margin-bottom:30px}.mt-10{margin-top:10px}.mt-20{margin-top:20px}.mt-30{margin-top:30px}@media(max-width:768px){.mobile-hidden{display:none!important}html{font-size:14px}*{-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-touch-callout:none}[contenteditable],button,input,textarea{-webkit-user-select:text;-moz-user-select:text;user-select:text}body,html{-webkit-overflow-scrolling:touch;overflow-scrolling:touch}#app,body,html{touch-action:pan-y pinch-zoom}#app{overflow-x:hidden;overflow-y:auto}}@media(min-width:769px){.desktop-hidden{display:none!important}}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}.slide-up-enter-active,.slide-up-leave-active{transition:all .3s ease}.slide-up-enter-from{transform:translateY(30px);opacity:0}.slide-up-leave-to{transform:translateY(-30px);opacity:0}