:root{--bg-gradient:linear-gradient(145deg, #eef1fb 0%, #ece8f8 35%, #e6ecf8 65%, #eae7f5 100%);--bg-gradient-subtle:linear-gradient(145deg, #f2f4fc 0%, #f0edf9 35%, #f0f3fa 65%, #f1eff8 100%);--bg-content:#f1f0f7;--glass-bg:#ffffff8c;--glass-bg-strong:#ffffffc7;--glass-bg-card:#ffffffb8;--glass-bg-light:#ffffff59;--glass-border:#fff9;--glass-border-subtle:#ffffff59;--glass-inner-border:#fffc;--glass-blur:20px;--glass-blur-heavy:30px;--shadow-xs:0 1px 3px #6450a00a, 0 1px 2px #6450a008;--shadow-soft:0 4px 16px #6450a00f, 0 1px 3px #6450a00a;--shadow-medium:0 8px 32px #6450a014, 0 2px 8px #6450a00a;--shadow-elevated:0 16px 48px #6450a01f, 0 4px 16px #6450a00f;--shadow-float:0 2px 8px #6450a00a;--shadow-inset:inset 0 1px 0 #ffffffd9;--shadow-card:0 2px 12px #6450a00f, 0 8px 24px #6450a00a;--color-primary:#7c5cbf;--color-primary-light:#a78bda;--color-primary-dark:#5a3e96;--color-primary-pale:#f0ecf8;--color-accent:#f5923e;--color-accent-light:#f8b078;--color-accent-pale:#fef4ec;--color-success:#3cbf7c;--color-success-pale:#eafaf2;--color-danger:#ef5050;--color-danger-pale:#fef0f0;--color-info:#4a90e2;--color-info-pale:#ecf4fd;--color-warning:#e8a820;--color-warning-pale:#fdf8e8;--color-pink:#d96caa;--color-pink-pale:#faecf5;--color-cyan:#20b2c8;--color-cyan-pale:#e8f8fb;--text-primary:#1d1932;--text-secondary:#5c567a;--text-tertiary:#9490aa;--text-inverse:#fff;--font-family:-apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", sans-serif;--radius-xs:8px;--radius-sm:12px;--radius-md:16px;--radius-lg:20px;--radius-xl:24px;--radius-full:9999px;--transition-fast:.2s cubic-bezier(.25, .1, .25, 1);--transition-normal:.3s cubic-bezier(.25, .1, .25, 1);--transition-smooth:.4s cubic-bezier(.25, .1, .25, 1);--transition-bounce:.5s cubic-bezier(.34, 1.56, .64, 1);--z-float:10;--z-modal:100;--z-modal-top:200;--z-toast:300;--z-lock:9999}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden}body{font-family:var(--font-family);background:var(--bg-gradient);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-attachment:fixed;line-height:1.5}#app{height:100vh;overflow:hidden}button{cursor:pointer;transition:all var(--transition-normal);border:none;outline:none;font-family:inherit}button:focus-visible{outline:3px solid var(--color-primary-light);outline-offset:2px}input,textarea{transition:all var(--transition-normal);outline:none;font-family:inherit}input:focus,textarea:focus{box-shadow:0 0 0 4px #7c5cbf1f}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#7c5cbf26;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#7c5cbf47}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes bounceIn{0%{opacity:0;transform:scale(.8)}60%{opacity:1;transform:scale(1.05)}80%{transform:scale(.97)}to{transform:scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes floatUp{0%{opacity:0;transform:translateY(16px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scoreFlyUp{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-60px)scale(1.3)}}@keyframes starBurst{0%{opacity:1;transform:scale(0)rotate(0)}50%{opacity:.8;transform:scale(1.2)rotate(180deg)}to{opacity:0;transform:scale(0)rotate(360deg)}}@keyframes petIdle{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-8px)scale(1.03)}}@keyframes sparkle{0%,to{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1)}}@keyframes confettiFall{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(720deg)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 #7c5cbf40}50%{box-shadow:0 0 0 12px #7c5cbf00}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}@keyframes eggWobble{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}@keyframes scorePop{0%{transform:scale(1)}40%{transform:scale(1.25)}to{transform:scale(1)}}@keyframes progressGlow{0%,to{box-shadow:0 0 6px #3cbf7c40}50%{box-shadow:0 0 14px #3cbf7c80}}@keyframes gentleFloat{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-6px)scale(1.01)}}@keyframes jellyJump{0%{transform:scale(1)}10%{transform:scale(.85,1.15)}25%{transform:scale(1.1,.9)}40%{transform:scale(.95,1.05)}50%{transform:scale(1.02,.98)}65%{transform:scale(1)}80%{transform:scale(1.05,.95)}90%{transform:scale(.98,1.02)}to{transform:scale(1)}}@keyframes foodDrop{0%{opacity:1;transform:translateY(0)rotate(0)scale(1)}60%{opacity:1;transform:translateY(30px)rotate(15deg)scale(.9)}80%{opacity:.6;transform:translateY(50px)rotate(-5deg)scale(.7)}to{opacity:0;transform:translateY(70px)rotate(0)scale(.5)}}@keyframes floatUpFade{0%{opacity:0;transform:translateY(20px)scale(.8)}20%{opacity:1;transform:translateY(10px)scale(1)}80%{opacity:1;transform:translateY(-10px)scale(1)}to{opacity:0;transform:translateY(-30px)scale(.8)}}@keyframes dropDownFade{0%{opacity:0;transform:translateY(-20px)scale(.8)}20%{opacity:1;transform:translateY(-10px)scale(1)}80%{opacity:1;transform:translateY(10px)scale(1)}to{opacity:0;transform:translateY(30px)scale(.8)}}@keyframes cardShake{0%,to{transform:translate(0)rotate(0)}15%{transform:translate(-4px)rotate(-2deg)}30%{transform:translate(4px)rotate(2deg)}45%{transform:translate(-3px)rotate(-1deg)}60%{transform:translate(3px)rotate(1deg)}75%{transform:translate(-1px)}}@keyframes levelupTextPop{0%{opacity:0;transform:translateY(10px)scale(.5)}30%{opacity:1;transform:translateY(-5px)scale(1.15)}50%{transform:translateY(-8px)scale(1)}70%{opacity:1;transform:translateY(-12px)scale(1.05)}to{opacity:0;transform:translateY(-25px)scale(.8)}}@keyframes shellTopFly{0%{opacity:1;transform:translateY(0)rotate(0)scale(1)}50%{opacity:1;transform:translateY(-30px)rotate(-25deg)scale(1.1)}to{opacity:0;transform:translateY(-60px)rotate(-45deg)scale(.6)}}@keyframes shellLeftFly{0%{opacity:1;transform:rotate(-15deg)translate(0)translateY(0)scale(1)}50%{opacity:.8;transform:rotate(-35deg)translate(-25px)translateY(10px)scale(.9)}to{opacity:0;transform:rotate(-55deg)translate(-50px)translateY(30px)scale(.5)}}@keyframes shellRightFly{0%{opacity:1;transform:rotate(15deg)translate(0)translateY(0)scale(1)}50%{opacity:.8;transform:rotate(35deg)translate(25px)translateY(10px)scale(.9)}to{opacity:0;transform:rotate(55deg)translate(50px)translateY(30px)scale(.5)}}@keyframes hatchFlash{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)}30%{opacity:1;transform:translate(-50%,-50%)scale(.8)}to{opacity:0;transform:translate(-50%,-50%)scale(1.3)}}@keyframes hatchStarPop{0%{opacity:0;transform:scale(0)rotate(0)}30%{opacity:1;transform:scale(1.3)rotate(90deg)}60%{opacity:1;transform:scale(.9)rotate(180deg)}to{opacity:0;transform:scale(0)rotate(270deg)}}.student-card-wrapper[data-v-ba699f69]{position:relative}.student-card-wrapper.batch-selected .student-card[data-v-ba699f69]{border-color:var(--color-primary)!important;box-shadow:0 0 0 2px #7c5cbf4d, var(--shadow-card)!important}.batch-checkbox[data-v-ba699f69]{z-index:10;cursor:pointer;position:absolute;top:10px;left:10px}.checkbox-circle[data-v-ba699f69]{background:#ffffffeb;border:2px solid #9490aa73;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex;box-shadow:0 1px 4px #6450a01f}.checkbox-circle[data-v-ba699f69]:not(.checked):after{content:"";background:#9490aa2e;border-radius:50%;width:8px;height:8px}.checkbox-circle.checked[data-v-ba699f69]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.checkbox-circle.checked i[data-v-ba699f69]{color:#fff;font-size:12px}.student-card-wrapper.batch-mode .student-card .change-pet-icon[data-v-ba699f69],.student-card-wrapper.batch-mode .student-card.unadopted .adopt-hint[data-v-ba699f69],.student-card-wrapper.batch-mode .student-card.unadopted .adopt-btn[data-v-ba699f69]{display:none}.student-card[data-v-ba699f69]{background:var(--glass-bg-card);-webkit-backdrop-filter:blur(16px);box-shadow:var(--shadow-inset), var(--shadow-card);border:1px solid var(--glass-border);transition:all var(--transition-normal);cursor:pointer;border-radius:18px;flex-direction:column;display:flex;position:relative;overflow:hidden}.student-card[data-v-ba699f69]:hover{box-shadow:var(--shadow-inset), 0 0 20px #7c5cbf14, var(--shadow-medium);border-color:var(--glass-border);transform:translateY(-2px)}.student-card[data-v-ba699f69]:active{transform:translateY(0)scale(.98)}.student-card.jelly-jump[data-v-ba699f69]{animation:.8s jellyJump}.student-card.card-shake[data-v-ba699f69]{animation:.6s cardShake}.card-image[data-v-ba699f69]{aspect-ratio:1;background:var(--glass-bg-light);flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.main-img[data-v-ba699f69]{object-fit:contain;width:65%;height:60%;transition:transform var(--transition-normal)}.egg-img[data-v-ba699f69]{object-fit:contain;filter:drop-shadow(0 4px 12px #7c5cbf1f);animation:3s ease-in-out infinite eggWobble}.egg-img[data-v-ba699f69]:hover{transform:scale(1.08)rotate(-3deg)}.pet-img[data-v-ba699f69]{filter:drop-shadow(0 6px 16px #7c5cbf26);animation:4s ease-in-out infinite petIdle}.pet-img[data-v-ba699f69]:hover{animation-play-state:paused;transform:scale(1.1)}.main-emoji[data-v-ba699f69]{filter:drop-shadow(0 2px 6px #6450a014);font-size:52px;animation:4s ease-in-out infinite petIdle}.pet-name-tag[data-v-ba699f69]{color:var(--text-secondary);-webkit-backdrop-filter:blur(6px);border-radius:var(--radius-full);white-space:nowrap;z-index:2;background:#ffffffb3;padding:2px 10px;font-size:11px;font-weight:700;position:absolute;bottom:8px;left:50%;transform:translate(-50%);box-shadow:0 1px 4px #6450a00f}.adopt-hint[data-v-ba699f69]{color:#fff;opacity:0;background:linear-gradient(#0000,#1d193266);justify-content:center;align-items:center;gap:6px;padding:12px 8px;font-size:13px;font-weight:700;transition:opacity .2s;display:flex;position:absolute;bottom:0;left:0;right:0}.unadopted .card-image:hover .adopt-hint[data-v-ba699f69]{opacity:1}.adopt-hint i[data-v-ba699f69]{font-size:14px;animation:1.5s ease-in-out infinite wiggle}.badge-img-count[data-v-ba699f69]{background:var(--glass-bg-strong);border:1px solid var(--glass-border);color:var(--color-accent);border-radius:var(--radius-xs);z-index:5;box-shadow:var(--shadow-float);white-space:nowrap;align-items:center;gap:3px;padding:2px 7px;font-size:11px;font-weight:800;display:inline-flex;position:absolute;top:8px;right:8px}.level-badge[data-v-ba699f69]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border-radius:var(--radius-xs);z-index:2;padding:3px 8px;font-size:11px;font-weight:800;position:absolute;top:8px;right:8px;box-shadow:0 2px 8px #7c5cbf4d}.card-image:has(.level-badge)>.badge-img-count[data-v-ba699f69]{right:62px}.levelup-pop[data-v-ba699f69]{z-index:4;pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.levelup-text[data-v-ba699f69]{color:var(--color-accent);border-radius:var(--radius-full);white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe6;padding:4px 14px;font-size:18px;font-weight:900;animation:1.5s forwards levelupTextPop;display:inline-block;box-shadow:0 4px 16px #f5923e4d}.sparkle-container[data-v-ba699f69]{pointer-events:none;z-index:1;position:absolute;inset:0}.sparkle[data-v-ba699f69]{color:var(--color-accent);filter:drop-shadow(0 1px 4px #f5923e80);font-size:14px;animation:2s ease-in-out infinite sparkle;position:absolute}.change-pet-icon[data-v-ba699f69]{background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(6px);border:1px solid var(--glass-border);width:28px;height:28px;color:var(--text-tertiary);z-index:3;box-shadow:var(--shadow-float);cursor:pointer;opacity:0;transition:all var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:11px;display:flex;position:absolute;top:8px;left:8px}.student-card:hover .change-pet-icon[data-v-ba699f69]{opacity:1}.change-pet-icon[data-v-ba699f69]:hover{background:var(--glass-bg-strong);color:var(--color-primary);transform:scale(1.1)}.card-body[data-v-ba699f69]{flex-direction:column;flex:1;gap:8px;padding:10px 12px 14px;display:flex}.card-name[data-v-ba699f69]{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:14px;font-weight:800;line-height:1.3;overflow:hidden}.card-name-row[data-v-ba699f69]{align-items:center;gap:6px;min-width:0;display:flex}.student-id-tag[data-v-ba699f69]{color:var(--color-primary);background:var(--color-primary-pale);border-radius:var(--radius-full);white-space:nowrap;flex-shrink:0;padding:1px 7px;font-size:10px;font-weight:700}.growth-section[data-v-ba699f69]{flex-direction:column;gap:5px;display:flex}.growth-header[data-v-ba699f69]{justify-content:space-between;align-items:center;display:flex}.growth-label[data-v-ba699f69]{color:var(--text-tertiary);font-size:12px;font-weight:700}.growth-value[data-v-ba699f69]{color:var(--text-secondary);font-size:12px;font-weight:800;position:relative}.growth-value.growth-up[data-v-ba699f69]{animation:scorePop .4s var(--transition-bounce);color:var(--color-success)}.growth-value.growth-down[data-v-ba699f69]{color:var(--color-danger);animation:.4s cardShake}.growth-fly[data-v-ba699f69]{pointer-events:none;white-space:nowrap;font-size:12px;font-weight:800;position:absolute;top:-10px;right:-18px}.growth-fly.fly-up[data-v-ba699f69]{color:var(--color-success);animation:1s ease-out forwards floatUpFade}.growth-fly.fly-down[data-v-ba699f69]{color:var(--color-danger);animation:1s ease-out forwards dropDownFade}.progress-track[data-v-ba699f69]{background:#9490aa1f;border-radius:99px;height:10px;overflow:hidden;box-shadow:inset 0 1px 2px #6450a00f}.progress-fill[data-v-ba699f69]{background:linear-gradient(90deg, var(--color-accent), var(--color-accent-light));height:100%;transition:width .5s var(--transition-smooth);border-radius:99px;min-width:0;box-shadow:0 1px 4px #f5923e4d}.progress-fill.almost-full[data-v-ba699f69]{background:linear-gradient(90deg, var(--color-success), #5de0a0);animation:2s ease-in-out infinite progressGlow;box-shadow:0 0 8px #3cbf7c4d}.adopt-btn[data-v-ba699f69]{background:linear-gradient(135deg, var(--color-accent), var(--color-accent-light));color:#fff;border-radius:var(--radius-sm);text-align:center;transition:all var(--transition-normal);justify-content:center;align-items:center;gap:6px;padding:10px 0;font-size:14px;font-weight:800;display:flex;box-shadow:0 2px 10px #f5923e40}.adopt-btn[data-v-ba699f69]:hover{transform:translateY(-1px);box-shadow:0 4px 14px #f5923e59}.adopt-btn[data-v-ba699f69]:active{transform:scale(.97)}.student-card.unadopted[data-v-ba699f69]{border:1.5px dashed #9490aa59}.student-card.unadopted[data-v-ba699f69]:hover{border-color:var(--color-accent-light);border-style:solid}.egg-hatch-overlay[data-v-ba699f69]{z-index:5;pointer-events:none;position:absolute;inset:0;overflow:hidden}.egg-shell[data-v-ba699f69]{background:linear-gradient(135deg,#f8e8d0 0%,#f5ddb8 40%,#f0d0a0 100%);border-radius:40% 40% 45% 45%/50% 50% 40% 40%;position:absolute;box-shadow:inset 0 -2px 6px #c8a0644d}.egg-shell-top[data-v-ba699f69]{opacity:0;width:55%;height:35%;animation:.8s ease-out .2s forwards shellTopFly;top:5%;left:22.5%}.egg-shell-left[data-v-ba699f69]{opacity:0;width:30%;height:40%;animation:.7s ease-out .1s forwards shellLeftFly;top:30%;left:10%;transform:rotate(-15deg)}.egg-shell-right[data-v-ba699f69]{opacity:0;width:30%;height:40%;animation:.7s ease-out .15s forwards shellRightFly;top:30%;right:10%;transform:rotate(15deg)}.hatch-flash[data-v-ba699f69]{opacity:0;background:radial-gradient(circle,#fff0c8cc 0%,#ffdc9666 40%,#0000 70%);width:120%;height:120%;animation:.6s ease-out forwards hatchFlash;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hatch-stars[data-v-ba699f69]{position:absolute;inset:0}.hatch-star[data-v-ba699f69]{left:var(--sx);top:var(--sy);color:var(--color-accent);opacity:0;animation:hatchStarPop .8s var(--sd) ease-out forwards;filter:drop-shadow(0 1px 4px #f5923e80);font-size:18px;position:absolute}.max-level-badge[data-v-ba699f69]{color:#4a2800!important;background:linear-gradient(135deg,gold,#fa0)!important;box-shadow:0 2px 10px #fa06!important}.card-switch-wrapper[data-v-ba699f69]{position:relative}.card-face[data-v-ba699f69]{transition:opacity .35s,transform .35s}.card-face.face-hidden[data-v-ba699f69]{opacity:0;pointer-events:none;transform:scale(.95)}.card-grad-back[data-v-ba699f69]{cursor:pointer;opacity:0;pointer-events:none;z-index:5;background:linear-gradient(145deg,#fffdf5 0%,#fff8e8 40%,#fff3d6 100%);border:2px solid #ffc8324d;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;transition:opacity .35s,transform .35s;display:flex;position:absolute;inset:0;overflow:hidden;transform:scale(.95)}.card-grad-back[data-v-ba699f69]:before{content:"";pointer-events:none;background:radial-gradient(circle at 30% 20%,#ffd70014 0%,#0000 50%),radial-gradient(circle at 70% 80%,#ffaa000f 0%,#0000 50%);position:absolute;inset:0}.card-grad-back.face-show[data-v-ba699f69]{opacity:1;pointer-events:auto;transform:scale(1)}.grad-back-content[data-v-ba699f69]{z-index:1;flex-direction:column;align-items:center;gap:16px;padding:20px;display:flex}.grad-back-icon[data-v-ba699f69]{background:linear-gradient(135deg,gold,#fa0);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;animation:3s ease-in-out infinite iconFloat-ba699f69;display:flex;box-shadow:0 6px 20px #ffaa0059}.grad-back-icon i[data-v-ba699f69]{color:#fff;font-size:28px}.grad-back-text[data-v-ba699f69]{flex-direction:column;align-items:center;gap:4px;display:flex}.grad-congrats[data-v-ba699f69]{color:#4a2800;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:15px;font-weight:900;overflow:hidden}.grad-sub[data-v-ba699f69]{color:#b8860b;font-size:13px;font-weight:700}.grad-back-btn[data-v-ba699f69]{color:#4a2800;border-radius:var(--radius-full);transition:all var(--transition-normal);white-space:nowrap;background:linear-gradient(135deg,gold,#fa0);border:2px solid #fff6;justify-content:center;align-items:center;gap:6px;padding:8px 20px;font-size:13px;font-weight:800;display:flex;box-shadow:0 4px 16px #ffaa004d}.grad-back-btn[data-v-ba699f69]:hover{transform:scale(1.05);box-shadow:0 6px 24px #ffaa0073}.grad-back-btn[data-v-ba699f69]:active{transform:scale(.97)}@keyframes iconFloat-ba699f69{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.max-label[data-v-ba699f69]{font-weight:800;color:#d4940a!important}.max-label i[data-v-ba699f69]{color:#ffc107}.max-track[data-v-ba699f69]{background:#ffc10726!important}.max-fill[data-v-ba699f69]{background:linear-gradient(90deg,gold,#fa0)!important;width:100%!important;animation:2s ease-in-out infinite progressGlow!important;box-shadow:0 0 8px #fa06!important}.modal-overlay[data-v-8920f404]{-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal);background:#1e1b3a33;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-dialog[data-v-8920f404]{background:var(--glass-bg-card);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:92%;max-width:1600px;height:85vh;box-shadow:var(--shadow-inset), var(--shadow-elevated);flex-direction:column;display:flex;overflow:hidden}.modal-header[data-v-8920f404]{border-bottom:1px solid var(--glass-border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.modal-title[data-v-8920f404]{color:var(--text-primary);letter-spacing:-.2px;font-size:18px;font-weight:900}.close-btn[data-v-8920f404]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);width:44px;height:44px;color:var(--text-tertiary);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex}.close-btn[data-v-8920f404]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.modal-body[data-v-8920f404]{flex:1;display:flex;overflow:hidden}.left-panel[data-v-8920f404]{border-right:1px solid var(--glass-border-subtle);background:var(--glass-bg-light);width:240px;min-width:240px;padding:16px;overflow-y:auto}.panel-title[data-v-8920f404]{color:var(--text-primary);justify-content:space-between;align-items:center;margin-bottom:12px;font-size:14px;font-weight:800;display:flex}.panel-title-actions[data-v-8920f404]{align-items:center;gap:6px;display:flex}.manage-btn[data-v-8920f404]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);width:32px;height:32px;color:var(--text-tertiary);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:14px;display:flex}.manage-btn[data-v-8920f404]:hover{background:var(--glass-bg-strong);color:var(--text-secondary)}.manage-btn.active[data-v-8920f404]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border-color:#0000;box-shadow:0 2px 8px #7c5cbf40}.add-btn[data-v-8920f404]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;width:32px;height:32px;transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex;box-shadow:0 2px 8px #7c5cbf40}.add-btn[data-v-8920f404]:hover{box-shadow:0 4px 12px #7c5cbf59}.popup-overlay[data-v-8920f404]{-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal-top);background:#1e1b3a59;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.add-popup[data-v-8920f404]{background:var(--glass-bg-card);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:92%;max-width:560px;max-height:85vh;box-shadow:var(--shadow-inset), var(--shadow-elevated);flex-direction:column;animation:.3s popIn;display:flex;overflow:hidden}.add-popup-header[data-v-8920f404]{border-bottom:1px solid var(--glass-border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.add-popup-title[data-v-8920f404]{color:var(--text-primary);align-items:center;gap:10px;font-size:18px;font-weight:900;display:flex}.add-popup-title i[data-v-8920f404]{color:var(--color-primary)}.popup-close-btn[data-v-8920f404]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);width:36px;height:36px;color:var(--text-tertiary);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:flex}.popup-close-btn[data-v-8920f404]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.add-popup-body[data-v-8920f404]{flex-direction:column;flex:1;gap:18px;padding:20px 24px;display:flex;overflow-y:auto}.form-group[data-v-8920f404]{flex-direction:column;gap:8px;display:flex}.form-label[data-v-8920f404]{color:var(--text-secondary);font-size:13px;font-weight:800}.form-input[data-v-8920f404]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);width:100%;min-height:46px;color:var(--text-primary);box-sizing:border-box;transition:all var(--transition-normal);padding:10px 14px;font-size:15px}.form-input[data-v-8920f404]:focus{border-color:var(--color-primary-light);box-shadow:0 0 0 3px #7c5cbf1a}.class-type-cards[data-v-8920f404]{gap:10px;display:flex}.class-type-card[data-v-8920f404]{border:2px solid var(--glass-border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);flex:1;align-items:center;gap:10px;padding:14px;display:flex}.class-type-card[data-v-8920f404]:hover{border-color:var(--color-primary-light);background:var(--glass-bg-strong)}.class-type-card.active[data-v-8920f404]{border-color:var(--color-primary);background:var(--color-primary-pale);box-shadow:0 0 0 3px #7c5cbf14}.class-type-icon[data-v-8920f404]{color:var(--text-tertiary);transition:all var(--transition-normal);flex-shrink:0;font-size:22px}.class-type-card.active .class-type-icon[data-v-8920f404]{color:var(--color-primary)}.class-type-info[data-v-8920f404]{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.class-type-name[data-v-8920f404]{color:var(--text-primary);font-size:14px;font-weight:800}.class-type-desc[data-v-8920f404]{color:var(--text-tertiary);font-size:11px;font-weight:600;line-height:1.4}.class-type-card.active .class-type-desc[data-v-8920f404]{color:var(--color-primary)}.class-type-check[data-v-8920f404]{color:var(--color-primary);flex-shrink:0;font-size:20px;animation:.3s popIn}.source-cards[data-v-8920f404]{gap:10px;display:flex}.source-card[data-v-8920f404]{border:2px solid var(--glass-border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);text-align:center;flex-direction:column;flex:1;align-items:center;gap:6px;padding:16px 12px;display:flex}.source-card[data-v-8920f404]:hover{border-color:var(--color-primary-light);background:var(--glass-bg-strong)}.source-card.active[data-v-8920f404]{border-color:var(--color-primary);background:var(--color-primary-pale);box-shadow:0 0 0 3px #7c5cbf14}.source-icon[data-v-8920f404]{color:var(--text-tertiary);transition:all var(--transition-normal);font-size:24px}.source-card.active .source-icon[data-v-8920f404]{color:var(--color-primary)}.source-title[data-v-8920f404]{color:var(--text-primary);font-size:14px;font-weight:800}.source-desc[data-v-8920f404]{color:var(--text-tertiary);font-size:11px;font-weight:600;line-height:1.4}.source-card.active .source-desc[data-v-8920f404]{color:var(--color-primary)}.inherit-list[data-v-8920f404]{flex-direction:column;gap:6px;max-height:180px;display:flex;overflow-y:auto}.inherit-item[data-v-8920f404]{border:2px solid var(--glass-border-subtle);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.inherit-item[data-v-8920f404]:hover{background:var(--glass-bg-strong)}.inherit-item.selected[data-v-8920f404]{border-color:var(--color-primary);background:var(--color-primary-pale)}.inherit-info[data-v-8920f404]{flex-direction:column;gap:2px;display:flex}.inherit-name[data-v-8920f404]{color:var(--text-primary);font-size:14px;font-weight:700}.inherit-meta[data-v-8920f404]{color:var(--text-tertiary);font-size:12px;font-weight:600}.inherit-item.selected .inherit-meta[data-v-8920f404]{color:var(--color-primary)}.inherit-check[data-v-8920f404]{color:var(--color-primary);flex-shrink:0;font-size:20px}.style-cards[data-v-8920f404]{flex-direction:column;gap:12px;display:flex}.style-card[data-v-8920f404]{background:var(--glass-bg);border:2px solid var(--glass-border-subtle);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--shadow-inset), var(--shadow-float);padding:16px 18px}.style-card[data-v-8920f404]:hover{background:var(--glass-bg-strong);border-color:var(--color-primary-light);transform:translateY(-1px)}.style-card.selected[data-v-8920f404]{background:var(--color-primary-pale);border-color:var(--color-primary);box-shadow:0 0 0 3px #7c5cbf1a, var(--shadow-soft)}.style-card-header[data-v-8920f404]{align-items:center;gap:12px;display:flex}.style-card-icon[data-v-8920f404]{background:var(--glass-bg-light);border-radius:var(--radius-sm);width:40px;height:40px;color:var(--color-primary);transition:all var(--transition-normal);flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex}.style-card.selected .style-card-icon[data-v-8920f404]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff}.style-card-info[data-v-8920f404]{flex-direction:column;flex:1;gap:2px;display:flex}.style-card-name[data-v-8920f404]{color:var(--text-primary);font-size:15px;font-weight:800}.style-card-desc[data-v-8920f404]{color:var(--text-tertiary);font-size:12px;font-weight:600}.style-card-check[data-v-8920f404]{color:var(--color-primary);flex-shrink:0;font-size:22px;animation:.3s popIn}.style-card-preview[data-v-8920f404]{border-top:1px solid var(--glass-border-subtle);gap:8px;margin-top:12px;padding-top:12px;display:flex}.style-preview-item[data-v-8920f404]{flex:1;justify-content:center;align-items:center;display:flex}.style-preview-item img[data-v-8920f404]{object-fit:contain;width:52px;height:52px}.style-card.selected .style-preview-item img[data-v-8920f404]{animation:3s ease-in-out infinite petBreathe}.add-popup-footer[data-v-8920f404]{border-top:1px solid var(--glass-border-subtle);flex-shrink:0;justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}.popup-btn-cancel[data-v-8920f404]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-full);min-height:44px;color:var(--text-secondary);transition:all var(--transition-normal);padding:10px 22px;font-size:14px;font-weight:700}.popup-btn-cancel[data-v-8920f404]:hover{background:var(--glass-bg-strong)}.popup-btn-confirm[data-v-8920f404]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border-radius:var(--radius-full);min-height:44px;transition:all var(--transition-normal);align-items:center;gap:6px;padding:10px 24px;font-size:14px;font-weight:700;display:flex;box-shadow:0 2px 10px #7c5cbf40}.popup-btn-confirm[data-v-8920f404]:hover{transform:translateY(-1px);box-shadow:0 4px 16px #7c5cbf59}.popup-btn-confirm[data-v-8920f404]:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.class-list[data-v-8920f404]{flex-direction:column;gap:6px;display:flex}.class-item[data-v-8920f404]{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal);border:1px solid #0000;align-items:center;gap:6px;padding:12px 14px;display:flex}.class-item[data-v-8920f404]:hover{background:var(--glass-bg-strong)}.class-item.active[data-v-8920f404]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;box-shadow:0 4px 12px #7c5cbf40}.class-item.active .current-tag[data-v-8920f404]{color:#fff;background:#fff3}.class-name[data-v-8920f404]{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.current-tag[data-v-8920f404]{background:var(--color-accent-pale);color:var(--color-accent);border-radius:var(--radius-full);padding:2px 8px;font-size:11px;font-weight:700}.class-type-tag[data-v-8920f404]{background:var(--color-info-pale,#3b82f61a);color:var(--color-info,#3b82f6);border-radius:var(--radius-full);white-space:nowrap;padding:1px 6px;font-size:10px;font-weight:700}.class-item.active .class-type-tag[data-v-8920f404]{color:#fff;background:#fff3}.class-item-actions[data-v-8920f404]{flex-shrink:0;gap:2px;margin-left:auto;display:flex}.class-item-actions.visible[data-v-8920f404]{opacity:1}.class-op-btn[data-v-8920f404]{width:28px;height:28px;transition:all var(--transition-normal);color:var(--text-tertiary);border-radius:50%;justify-content:center;align-items:center;font-size:12px;display:flex}.class-item.active .class-op-btn[data-v-8920f404]{color:#ffffffd9;background:#00000026}.class-op-btn.edit[data-v-8920f404]:hover{color:var(--color-primary);background:#7c5cbf26}.class-item.active .class-op-btn.edit[data-v-8920f404]:hover{color:#fff;background:#00000040}.class-op-btn.delete[data-v-8920f404]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.class-item.active .class-op-btn.delete[data-v-8920f404]:hover{color:#fff;background:#00000040}.class-op-btn.save[data-v-8920f404]{color:var(--color-success)}.class-op-btn.save[data-v-8920f404]:hover{background:#22c55e26}.class-op-btn.cancel[data-v-8920f404]{color:var(--text-tertiary)}.class-op-btn.cancel[data-v-8920f404]:hover{background:var(--glass-bg-strong)}.class-item.editing[data-v-8920f404]{border-color:var(--color-primary-light);background:var(--color-primary-pale)}.class-edit-input[data-v-8920f404]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);min-width:0;min-height:32px;color:var(--text-primary);flex:1;padding:4px 10px;font-size:14px;font-weight:600}.class-edit-input[data-v-8920f404]:focus{border-color:var(--color-primary-light);outline:none;box-shadow:0 0 0 3px #7c5cbf1a}.confirm-popup[data-v-8920f404]{background:var(--glass-bg-card);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-xl);text-align:center;width:92%;max-width:400px;box-shadow:var(--shadow-inset), var(--shadow-elevated);padding:32px 28px 24px;animation:.3s popIn}.confirm-icon[data-v-8920f404]{color:var(--color-warning,#f59e0b);margin-bottom:16px;font-size:40px}.confirm-title[data-v-8920f404]{color:var(--text-primary);margin-bottom:8px;font-size:18px;font-weight:900}.confirm-desc[data-v-8920f404]{color:var(--text-tertiary);margin-bottom:24px;font-size:14px;line-height:1.5}.confirm-actions[data-v-8920f404]{justify-content:center;gap:12px;display:flex}.popup-btn-danger[data-v-8920f404]{background:var(--color-danger);color:#fff;border-radius:var(--radius-full);min-height:44px;transition:all var(--transition-normal);align-items:center;gap:6px;padding:10px 24px;font-size:14px;font-weight:700;display:flex;box-shadow:0 2px 10px #ef444440}.popup-btn-danger[data-v-8920f404]:hover{transform:translateY(-1px);box-shadow:0 4px 16px #ef444459}.right-panel[data-v-8920f404]{flex:1;padding:14px;overflow-y:auto}.panel-header[data-v-8920f404]{margin-bottom:14px}.panel-title-row[data-v-8920f404]{align-items:center;gap:8px;margin-bottom:8px;display:flex}.manage-class-name[data-v-8920f404]{color:var(--text-primary);font-size:17px;font-weight:900}.student-count[data-v-8920f404]{color:var(--text-tertiary);font-size:13px;font-weight:700}.panel-actions[data-v-8920f404]{gap:8px;display:flex}.set-current-btn[data-v-8920f404]{background:var(--color-accent-pale);color:var(--color-accent);border-radius:var(--radius-full);min-height:44px;transition:all var(--transition-normal);padding:8px 16px;font-size:14px;font-weight:700}.set-current-btn[data-v-8920f404]:hover{background:var(--color-accent);color:#fff}.action-btn[data-v-8920f404]{border-radius:var(--radius-full);min-height:44px;transition:all var(--transition-normal);padding:8px 16px;font-size:14px;font-weight:700}.action-btn.blue[data-v-8920f404]{background:var(--color-info);color:#fff;box-shadow:0 2px 8px #3b82f633}.action-btn.blue[data-v-8920f404]:hover{box-shadow:0 4px 12px #3b82f64d}.action-btn.green[data-v-8920f404]{background:var(--color-success);color:#fff;box-shadow:0 2px 8px #22c55e33}.action-btn.green[data-v-8920f404]:hover{box-shadow:0 4px 12px #22c55e4d}.add-student-form[data-v-8920f404]{gap:8px;margin-bottom:14px;display:flex}.add-student-form input[data-v-8920f404]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);min-height:44px;color:var(--text-primary);padding:8px 14px;font-size:14px}.add-student-form .name-input[data-v-8920f404]{flex:1;min-width:0}.add-student-form .number-input[data-v-8920f404]{flex-shrink:0;width:100px}.add-student-btn[data-v-8920f404]{background:linear-gradient(135deg, var(--color-success), #22c55e);color:#fff;border-radius:var(--radius-sm);min-height:44px;transition:all var(--transition-normal);padding:8px 20px;font-size:14px;font-weight:700;box-shadow:0 2px 8px #22c55e40}.add-student-btn[data-v-8920f404]:hover{box-shadow:0 4px 12px #22c55e59}.batch-import[data-v-8920f404]{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);border-radius:var(--radius-md);border:1px solid var(--glass-border);box-shadow:var(--shadow-inset), var(--shadow-float);margin-bottom:14px;padding:16px}.batch-header[data-v-8920f404]{color:var(--text-primary);justify-content:space-between;align-items:center;margin-bottom:12px;font-size:15px;font-weight:900;display:flex}.batch-import textarea[data-v-8920f404]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);resize:vertical;background:var(--glass-bg-strong);width:100%;color:var(--text-primary);padding:10px 14px;font-size:14px;line-height:1.6}.format-tip[data-v-8920f404]{color:var(--text-tertiary);margin:6px 0;font-size:13px;font-weight:600}.batch-actions[data-v-8920f404]{justify-content:flex-end;gap:8px;display:flex}.cancel-btn[data-v-8920f404]{background:var(--glass-bg-light);border-radius:var(--radius-full);min-height:44px;color:var(--text-secondary);border:1px solid var(--glass-border-subtle);transition:all var(--transition-normal);padding:8px 18px;font-size:14px;font-weight:700}.cancel-btn[data-v-8920f404]:hover{background:var(--glass-bg-strong)}.import-btn[data-v-8920f404]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border-radius:var(--radius-full);min-height:44px;transition:all var(--transition-normal);padding:8px 18px;font-size:14px;font-weight:700;box-shadow:0 4px 12px #7c5cbf33}.import-btn[data-v-8920f404]:hover{box-shadow:0 6px 16px #7c5cbf4d}.student-list[data-v-8920f404]{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.student-item[data-v-8920f404]{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);transition:background var(--transition-normal);box-shadow:var(--shadow-inset), var(--shadow-float);align-items:center;gap:10px;padding:12px 16px;display:flex}.student-item[data-v-8920f404]:hover{background:var(--glass-bg-strong)}.student-avatar-sm[data-v-8920f404]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;font-weight:800;display:flex}.student-detail[data-v-8920f404]{flex-direction:column;flex:1;gap:2px;display:flex}.student-detail .name[data-v-8920f404]{color:var(--text-primary);font-size:15px;font-weight:700}.student-detail .student-num[data-v-8920f404]{color:var(--text-tertiary);font-size:13px;font-weight:600}.delete-student-btn[data-v-8920f404]{width:32px;height:32px;color:var(--text-tertiary);transition:all var(--transition-normal);opacity:0;background:0 0;border-radius:50%;justify-content:center;align-items:center;font-size:14px;display:flex}.student-item:hover .delete-student-btn[data-v-8920f404]{opacity:1}.delete-student-btn[data-v-8920f404]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.edit-student-btn[data-v-8920f404]{width:32px;height:32px;color:var(--text-tertiary);transition:all var(--transition-normal);opacity:0;background:0 0;border-radius:50%;justify-content:center;align-items:center;font-size:13px;display:flex}.student-item:hover .edit-student-btn[data-v-8920f404]{opacity:1}.edit-student-btn[data-v-8920f404]:hover{background:var(--color-primary-pale);color:var(--color-primary)}.student-item.editing[data-v-8920f404]{border-color:var(--color-primary-light);background:var(--color-primary-pale)}.edit-form[data-v-8920f404]{align-items:center;gap:8px;width:100%;display:flex}.edit-input[data-v-8920f404]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);min-height:36px;color:var(--text-primary);padding:6px 10px;font-size:14px}.edit-input[data-v-8920f404]:focus{border-color:var(--color-primary-light);box-shadow:0 0 0 3px #7c5cbf1a}.edit-form .name-edit[data-v-8920f404]{flex:1;min-width:0}.edit-form .number-edit[data-v-8920f404]{flex-shrink:0;width:80px}.edit-save-btn[data-v-8920f404]{background:var(--color-success);color:#fff;width:32px;height:32px;transition:all var(--transition-normal);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;display:flex}.edit-save-btn[data-v-8920f404]:hover{transform:scale(1.08);box-shadow:0 2px 8px #22c55e4d}.edit-cancel-btn[data-v-8920f404]{background:var(--glass-bg-light);width:32px;height:32px;color:var(--text-tertiary);border:1px solid var(--glass-border-subtle);transition:all var(--transition-normal);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;display:flex}.edit-cancel-btn[data-v-8920f404]:hover{background:var(--glass-bg-strong);color:var(--text-secondary)}.empty-state[data-v-8920f404]{color:var(--text-tertiary);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:50px;display:flex}.empty-icon[data-v-8920f404]{opacity:.35;font-size:44px}@keyframes petBreathe{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-4px)scale(1.02)}}.modal-overlay[data-v-dfd36750]{-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal-top);background:#1e1b3a33;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pet-modal[data-v-dfd36750]{background:var(--glass-bg-card);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:92%;max-width:1600px;height:85vh;box-shadow:var(--shadow-inset), var(--shadow-elevated);flex-direction:column;display:flex;overflow:hidden}.pet-header[data-v-dfd36750]{border-bottom:1px solid var(--glass-border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 28px;display:flex}.header-left[data-v-dfd36750]{align-items:center;gap:12px;display:flex}.header-icon[data-v-dfd36750]{font-size:26px}.pet-title[data-v-dfd36750]{color:var(--text-primary);letter-spacing:-.2px;font-size:20px;font-weight:900}.close-btn[data-v-dfd36750]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);width:44px;height:44px;color:var(--text-tertiary);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex}.close-btn[data-v-dfd36750]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.pet-body[data-v-dfd36750]{flex:1;padding:24px 28px 28px;overflow-y:auto}.pet-tip[data-v-dfd36750]{text-align:center;color:var(--text-tertiary);margin-bottom:28px;font-size:15px;font-weight:600}.pet-grid[data-v-dfd36750]{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;display:grid}.pet-item[data-v-dfd36750]{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--shadow-inset), var(--shadow-float);flex-direction:column;align-items:center;gap:10px;padding:20px 12px 16px;display:flex}.pet-item[data-v-dfd36750]:hover{background:var(--glass-bg-strong);border-color:var(--color-primary-light);box-shadow:var(--shadow-soft), 0 0 20px #7c5cbf1a;transform:translateY(-4px)}.pet-item[data-v-dfd36750]:active{transform:scale(.98)}.pet-item.selected[data-v-dfd36750]{background:var(--color-primary-pale);border-color:var(--color-primary);box-shadow:var(--shadow-soft), 0 0 0 3px #7c5cbf1a}.pet-thumb[data-v-dfd36750]{flex-shrink:0;justify-content:center;align-items:center;width:100px;height:100px;display:flex;position:relative}.pet-img[data-v-dfd36750]{object-fit:contain;width:100%;height:100%;transition:transform var(--transition-normal);animation:3s ease-in-out infinite petBreathe}.pet-item:hover .pet-img[data-v-dfd36750]{animation:.6s ease-in-out infinite alternate petEagerBounce;transform:scale(1.1)}.pet-emoji[data-v-dfd36750]{filter:drop-shadow(0 2px 6px #0000000f);transition:transform var(--transition-normal);font-size:42px;animation:3s ease-in-out infinite petBreathe}.pet-item:hover .pet-emoji[data-v-dfd36750]{animation:.6s ease-in-out infinite alternate petEagerBounce;transform:scale(1.1)}.pet-eager-hearts[data-v-dfd36750]{pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%}.eager-heart[data-v-dfd36750]{opacity:0;font-size:14px;position:absolute;transform:translate(-50%,-50%)scale(0)}.pet-item:hover .eager-heart[data-v-dfd36750]{animation:eagerHeartFloat 1.2s ease-out var(--delay) infinite}.pet-label[data-v-dfd36750]{color:var(--text-secondary);text-align:center;-webkit-line-clamp:2;transition:color var(--transition-normal);-webkit-box-orient:vertical;font-size:13px;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.pet-item:hover .pet-label[data-v-dfd36750],.pet-item.selected .pet-label[data-v-dfd36750]{color:var(--color-primary)}@keyframes petEagerBounce{0%{transform:translateY(0)scale(1.08)rotate(-2deg)}to{transform:translateY(-10px)scale(1.15)rotate(2deg)}}@keyframes eagerHeartFloat{0%{opacity:0;transform:translate(-50%,-50%)translate(0)scale(0)rotate(0)}20%{opacity:1;transform:translate(-50%, -50%) translate(calc(var(--x) * .4), calc(var(--y) * .4)) scale(1.1) rotate(-10deg)}to{opacity:0;transform:translate(-50%, -50%) translate(var(--x), calc(var(--y) - 30px)) scale(.4) rotate(15deg)}}.modal-overlay[data-v-519deeb6]{-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal-top);background:#1e1b3a33;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.score-modal[data-v-519deeb6]{background:var(--glass-bg-card);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:92%;max-width:1600px;height:85vh;box-shadow:var(--shadow-inset), var(--shadow-elevated);flex-direction:column;display:flex;overflow:hidden}.score-header[data-v-519deeb6]{flex-direction:column;flex-shrink:0;align-items:stretch;padding:18px 28px 0;display:flex}.score-title-row[data-v-519deeb6]{border-bottom:1px solid var(--glass-border-subtle);justify-content:space-between;align-items:center;padding-bottom:16px;display:flex}.score-body[data-v-519deeb6]{flex:1;padding:20px 28px 28px;overflow-y:auto}.score-title[data-v-519deeb6]{color:var(--text-primary);letter-spacing:-.2px;font-size:20px;font-weight:900}.student-highlight[data-v-519deeb6]{color:var(--color-primary);font-weight:900}.close-btn[data-v-519deeb6]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);width:44px;height:44px;color:var(--text-tertiary);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex}.close-btn[data-v-519deeb6]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.tab-bar[data-v-519deeb6]{gap:8px;padding:14px 0;display:flex}.tab-btn[data-v-519deeb6]{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);min-height:40px;color:var(--text-secondary);transition:all var(--transition-normal);padding:8px 20px;font-size:13px;font-weight:700}.tab-btn[data-v-519deeb6]:hover{background:var(--glass-bg-strong);color:var(--text-primary)}.tab-btn.active[data-v-519deeb6]{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 2px 8px #7c5cbf40}.score-section[data-v-519deeb6]{margin-bottom:20px}.section-title[data-v-519deeb6]{color:var(--text-primary);align-items:center;gap:8px;margin-bottom:12px;font-size:16px;font-weight:900;display:flex}.section-dot[data-v-519deeb6]{border-radius:50%;width:10px;height:10px}.section-dot.add[data-v-519deeb6]{background:var(--color-success)}.section-dot.sub[data-v-519deeb6]{background:var(--color-danger)}.rule-grid[data-v-519deeb6]{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.rule-card[data-v-519deeb6]{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal);text-align:center;box-shadow:var(--shadow-inset), var(--shadow-float);flex-direction:column;align-items:center;gap:6px;padding:14px 8px;display:flex}.rule-card.add[data-v-519deeb6]:hover{border-color:var(--color-success);background:var(--color-success-pale);box-shadow:var(--shadow-soft)}.rule-card.sub[data-v-519deeb6]:hover{border-color:var(--color-danger);background:var(--color-danger-pale);box-shadow:var(--shadow-soft)}.rule-card[data-v-519deeb6]:active{transform:scale(.98)}.rule-icon[data-v-519deeb6]{filter:drop-shadow(0 2px 4px #0000000f);font-size:28px}.rule-name[data-v-519deeb6]{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.rule-score[data-v-519deeb6]{border-radius:var(--radius-full);padding:3px 10px;font-size:13px;font-weight:800}.add-score[data-v-519deeb6]{background:var(--color-success-pale);color:var(--color-success)}.sub-score[data-v-519deeb6]{background:var(--color-danger-pale);color:var(--color-danger)}.bottom-tip[data-v-519deeb6]{text-align:center;color:var(--text-tertiary);justify-content:center;align-items:center;gap:6px;margin-top:16px;font-size:14px;font-weight:600;display:flex}.modal-overlay[data-v-fc8e658b]{-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal);background:#1e1b3a33;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.rank-modal[data-v-fc8e658b]{background:var(--glass-bg-card);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:92%;max-width:760px;max-height:85vh;box-shadow:var(--shadow-inset), var(--shadow-elevated);flex-direction:column;display:flex;overflow:hidden}.rank-header[data-v-fc8e658b]{border-bottom:1px solid var(--glass-border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 28px;display:flex}.rank-title[data-v-fc8e658b]{color:var(--text-primary);letter-spacing:-.2px;align-items:center;gap:10px;font-size:20px;font-weight:900;display:flex}.rank-title i[data-v-fc8e658b]{color:var(--color-accent);font-size:22px}.close-btn[data-v-fc8e658b]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);width:44px;height:44px;color:var(--text-tertiary);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex}.close-btn[data-v-fc8e658b]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.rank-body[data-v-fc8e658b]{flex:1;min-height:0;overflow-y:auto}.rank-row[data-v-fc8e658b]{border-bottom:1px solid var(--glass-border-subtle);transition:background var(--transition-normal);align-items:center;padding:14px 28px;display:flex}.rank-row[data-v-fc8e658b]:last-child{border-bottom:none}.rank-row.header-row[data-v-fc8e658b]{background:var(--glass-bg-light);color:var(--text-tertiary);font-size:13px;font-weight:700}.rank-row.highlight .student-name[data-v-fc8e658b]{color:var(--color-accent)}.col[data-v-fc8e658b]{text-align:center}.rank-col[data-v-fc8e658b]{width:70px}.student-col[data-v-fc8e658b]{text-align:left;flex:1}.student-row[data-v-fc8e658b]{align-items:center;gap:10px;display:flex}.rank-avatar[data-v-fc8e658b]{object-fit:cover;border-radius:10px;flex-shrink:0;width:36px;height:36px}.student-text[data-v-fc8e658b]{min-width:0}.level-col[data-v-fc8e658b],.badge-col[data-v-fc8e658b]{width:80px}.rank-icon[data-v-fc8e658b]{font-size:24px}.student-name[data-v-fc8e658b]{color:var(--text-primary);font-size:16px;font-weight:800;display:block}.partner-name[data-v-fc8e658b]{color:var(--text-tertiary);font-size:13px;font-weight:600;display:block}.level-tag[data-v-fc8e658b]{color:var(--color-primary);font-size:14px;font-weight:800}.badge-count[data-v-fc8e658b]{color:var(--color-accent);justify-content:center;align-items:center;gap:4px;font-size:14px;font-weight:700;display:flex}.badge-info[data-v-fc8e658b]{background:var(--color-accent-pale);border-radius:var(--radius-md);border:1px solid #f973161f;margin:20px 28px 28px;padding:20px}.badge-info[data-v-fc8e658b]:last-child{border-bottom:none}.badge-info-title[data-v-fc8e658b]{color:var(--text-primary);align-items:center;gap:8px;margin-bottom:8px;font-size:16px;font-weight:900;display:flex}.badge-info-text[data-v-fc8e658b]{color:var(--text-secondary);font-size:13px;font-weight:600;line-height:1.8}.modal-overlay[data-v-45e5736e]{-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal);background:#1e1b3a33;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-modal[data-v-45e5736e]{background:var(--glass-bg-card);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:92%;max-width:1000px;height:85vh;box-shadow:var(--shadow-inset), var(--shadow-elevated);flex-direction:column;display:flex;overflow:hidden}.settings-header[data-v-45e5736e]{border-bottom:1px solid var(--glass-border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.settings-title[data-v-45e5736e]{color:var(--text-primary);font-size:18px;font-weight:900}.close-btn[data-v-45e5736e]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);width:44px;height:44px;color:var(--text-tertiary);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex}.close-btn[data-v-45e5736e]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.nav-tabs[data-v-45e5736e]{border-bottom:1px solid var(--glass-border-subtle);flex-shrink:0;gap:0;padding:0 24px;display:flex}.nav-tab[data-v-45e5736e]{min-height:44px;color:var(--text-tertiary);transition:all var(--transition-normal);background:0 0;border-bottom:2px solid #0000;padding:12px 20px;font-size:14px;font-weight:700}.nav-tab[data-v-45e5736e]:hover{color:var(--text-secondary)}.nav-tab.active[data-v-45e5736e]{color:var(--color-primary);border-bottom-color:var(--color-primary)}.settings-body[data-v-45e5736e]{flex:1;display:flex;overflow:hidden}.sidebar[data-v-45e5736e]{border-right:1px solid var(--glass-border-subtle);background:var(--glass-bg-light);flex-shrink:0;width:180px;padding:14px;overflow-y:auto}.sidebar-title[data-v-45e5736e]{color:var(--text-tertiary);letter-spacing:.5px;margin-bottom:10px;font-size:12px;font-weight:700}.category-item[data-v-45e5736e]{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal);border:1px solid #0000;align-items:center;gap:8px;margin-bottom:4px;padding:10px;display:flex}.category-item[data-v-45e5736e]:hover{background:var(--glass-bg-strong)}.category-item.active[data-v-45e5736e]{background:var(--glass-bg-strong);border-color:var(--glass-border)}.cat-dot[data-v-45e5736e]{border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 6px}.cat-name[data-v-45e5736e]{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.category-item.active .cat-name[data-v-45e5736e]{color:var(--text-primary)}.cat-stats[data-v-45e5736e]{flex-shrink:0;gap:5px;display:flex}.stat-add[data-v-45e5736e]{color:var(--color-success);background:var(--color-success-pale);border-radius:var(--radius-full);padding:1px 6px;font-size:11px;font-weight:700}.stat-sub[data-v-45e5736e]{color:var(--color-danger);background:var(--color-danger-pale);border-radius:var(--radius-full);padding:1px 6px;font-size:11px;font-weight:700}.rule-total[data-v-45e5736e]{border-top:1px solid var(--glass-border-subtle);flex-direction:column;gap:6px;margin-top:16px;padding-top:12px;display:flex}.total-add[data-v-45e5736e]{color:var(--color-success);align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.total-sub[data-v-45e5736e]{color:var(--color-danger);align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.rules-panel[data-v-45e5736e]{flex:1;padding:16px 20px;overflow-y:auto}.rules-header[data-v-45e5736e]{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.rules-title[data-v-45e5736e]{color:var(--text-primary);font-size:15px;font-weight:900}.rules-count[data-v-45e5736e]{color:var(--text-tertiary);font-size:13px;font-weight:700}.new-rule-btn[data-v-45e5736e]{background:linear-gradient(135deg, var(--color-info), #60a5fa);color:#fff;border-radius:var(--radius-full);min-height:38px;transition:all var(--transition-normal);align-items:center;gap:5px;margin-left:auto;padding:7px 16px;font-size:13px;font-weight:700;display:flex;box-shadow:0 2px 8px #3b82f633}.new-rule-btn[data-v-45e5736e]:hover{box-shadow:0 4px 12px #3b82f64d}.rules-section[data-v-45e5736e]{margin-bottom:16px}.section-label[data-v-45e5736e]{color:var(--text-tertiary);align-items:center;gap:6px;margin-bottom:8px;font-size:13px;font-weight:800;display:flex}.section-dot[data-v-45e5736e]{border-radius:50%;width:8px;height:8px}.section-dot.add[data-v-45e5736e]{background:var(--color-success)}.section-dot.sub[data-v-45e5736e]{background:var(--color-danger)}.rule-list[data-v-45e5736e]{flex-direction:column;gap:4px;display:flex}.rule-card[data-v-45e5736e]{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);transition:all var(--transition-normal);box-shadow:var(--shadow-inset), var(--shadow-float);align-items:center;gap:10px;padding:10px 14px;display:flex}.rule-card[data-v-45e5736e]:hover{background:var(--glass-bg-strong);border-color:var(--glass-border)}.rule-icon[data-v-45e5736e]{flex-shrink:0;font-size:18px}.rule-label[data-v-45e5736e]{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.rule-value[data-v-45e5736e]{border-radius:var(--radius-full);flex-shrink:0;padding:3px 10px;font-size:13px;font-weight:800}.rule-value.add[data-v-45e5736e]{background:var(--color-success-pale);color:var(--color-success)}.rule-value.sub[data-v-45e5736e]{background:var(--color-danger-pale);color:var(--color-danger)}.rule-actions[data-v-45e5736e]{flex-shrink:0;gap:2px;display:flex}.action-icon[data-v-45e5736e]{width:30px;height:30px;color:var(--text-tertiary);opacity:0;transition:all var(--transition-normal);background:0 0;border-radius:6px;justify-content:center;align-items:center;font-size:12px;display:flex}.rule-card:hover .action-icon[data-v-45e5736e]{opacity:1}.action-icon.edit[data-v-45e5736e]:hover{background:var(--color-primary-pale);color:var(--color-primary)}.action-icon.delete[data-v-45e5736e]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.no-rules[data-v-45e5736e]{text-align:center;color:var(--text-tertiary);padding:20px;font-size:13px;font-weight:600}.popup-overlay[data-v-45e5736e]{-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal-top);background:#1e1b3a59;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.popup-dialog[data-v-45e5736e]{background:var(--glass-bg-card);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:92%;max-width:440px;box-shadow:var(--shadow-inset), var(--shadow-elevated);animation:.3s popIn;overflow:hidden}.popup-dialog.small[data-v-45e5736e]{max-width:380px}.popup-header[data-v-45e5736e]{border-bottom:1px solid var(--glass-border-subtle);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.popup-header.danger[data-v-45e5736e]{border-bottom-color:#ef505033}.popup-title[data-v-45e5736e]{color:var(--text-primary);font-size:16px;font-weight:900}.popup-close[data-v-45e5736e]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);width:36px;height:36px;color:var(--text-tertiary);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:flex}.popup-close[data-v-45e5736e]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.popup-body[data-v-45e5736e]{padding:20px}.form-type-toggle[data-v-45e5736e]{background:var(--glass-bg-light);border-radius:var(--radius-full);gap:0;margin-bottom:16px;padding:3px;display:flex}.type-btn[data-v-45e5736e]{border-radius:var(--radius-full);color:var(--text-tertiary);transition:all var(--transition-normal);background:0 0;flex:1;justify-content:center;align-items:center;gap:5px;padding:9px 12px;font-size:13px;font-weight:700;display:flex}.type-btn.active.add[data-v-45e5736e],.type-btn:first-child.active[data-v-45e5736e]{background:var(--color-success);color:#fff;box-shadow:0 2px 6px #22c55e40}.type-btn.active.sub[data-v-45e5736e],.type-btn:last-child.active[data-v-45e5736e]{background:var(--color-danger);color:#fff;box-shadow:0 2px 6px #ef505040}.form-field[data-v-45e5736e]{margin-bottom:14px}.field-label[data-v-45e5736e]{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:700;display:block}.form-input[data-v-45e5736e]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);width:100%;min-height:44px;color:var(--text-primary);transition:all var(--transition-normal);padding:10px 14px;font-size:14px;font-weight:600}.form-input[data-v-45e5736e]:focus{border-color:var(--color-primary-light);outline:none;box-shadow:0 0 0 3px #7c5cbf1a}.icon-picker-trigger[data-v-45e5736e]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);cursor:pointer;min-height:44px;transition:all var(--transition-normal);justify-content:space-between;align-items:center;padding:8px 14px;display:flex}.icon-picker-trigger[data-v-45e5736e]:hover{border-color:var(--color-primary-light)}.icon-picker-trigger.active[data-v-45e5736e]{border-color:var(--color-primary-light);box-shadow:0 0 0 3px #7c5cbf1a}.icon-picker-selected[data-v-45e5736e]{font-size:22px;line-height:1}.icon-picker-arrow[data-v-45e5736e]{color:var(--text-tertiary);transition:transform var(--transition-normal);font-size:11px}.icon-picker-arrow.open[data-v-45e5736e]{transform:rotate(180deg)}.emoji-grid[data-v-45e5736e]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);grid-template-columns:repeat(8,1fr);gap:4px;max-height:200px;margin-top:8px;padding:10px;display:grid;overflow-y:auto}.emoji-item[data-v-45e5736e]{aspect-ratio:1;border-radius:var(--radius-sm);cursor:pointer;width:100%;transition:all var(--transition-fast);border:2px solid #0000;justify-content:center;align-items:center;font-size:22px;display:flex}.emoji-item[data-v-45e5736e]:hover{background:var(--glass-bg-strong);transform:scale(1.15)}.emoji-item.selected[data-v-45e5736e]{background:var(--color-primary-pale);border-color:var(--color-primary-light);transform:scale(1.1)}.score-input-wrap[data-v-45e5736e]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);align-items:center;display:flex;overflow:hidden}.score-adj[data-v-45e5736e]{width:44px;min-height:44px;color:var(--text-secondary);background:var(--glass-bg-light);transition:all var(--transition-normal);border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;display:flex}.score-adj[data-v-45e5736e]:hover{background:var(--glass-bg-strong);color:var(--color-primary)}.score-input[data-v-45e5736e]{text-align:center;-moz-appearance:textfield;flex:1;font-weight:800;background:0 0!important;border:none!important;border-radius:0!important}.score-input[data-v-45e5736e]::-webkit-inner-spin-button{-webkit-appearance:none}.score-input[data-v-45e5736e]::-webkit-outer-spin-button{-webkit-appearance:none}.score-preview-row[data-v-45e5736e]{justify-content:center;margin-bottom:8px;display:flex}.score-preview[data-v-45e5736e]{border-radius:var(--radius-full);padding:8px 24px;font-size:18px;font-weight:900;display:inline-block}.score-preview.add[data-v-45e5736e]{background:var(--color-success-pale);color:var(--color-success)}.score-preview.sub[data-v-45e5736e]{background:var(--color-danger-pale);color:var(--color-danger)}.popup-actions[data-v-45e5736e]{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.popup-cancel[data-v-45e5736e]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-full);min-height:40px;color:var(--text-secondary);transition:all var(--transition-normal);padding:9px 20px;font-size:14px;font-weight:700}.popup-cancel[data-v-45e5736e]:hover{background:var(--glass-bg-strong)}.popup-save[data-v-45e5736e]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border-radius:var(--radius-full);min-height:40px;transition:all var(--transition-normal);align-items:center;gap:6px;padding:9px 20px;font-size:14px;font-weight:700;display:flex;box-shadow:0 2px 8px #7c5cbf40}.popup-save[data-v-45e5736e]:hover{box-shadow:0 4px 14px #7c5cbf59}.popup-delete[data-v-45e5736e]{background:linear-gradient(135deg, var(--color-danger), #f87171);color:#fff;border-radius:var(--radius-full);min-height:40px;transition:all var(--transition-normal);align-items:center;gap:6px;padding:9px 20px;font-size:14px;font-weight:700;display:flex;box-shadow:0 2px 8px #ef505040}.popup-delete[data-v-45e5736e]:hover{box-shadow:0 4px 14px #ef505059}.confirm-content[data-v-45e5736e]{text-align:center;padding:10px 0}.confirm-icon[data-v-45e5736e]{color:var(--color-danger);margin-bottom:12px;font-size:36px;display:block}.confirm-content p[data-v-45e5736e]{color:var(--text-primary);font-size:15px;font-weight:700;line-height:1.6}.confirm-content strong[data-v-45e5736e]{color:var(--color-danger)}.confirm-sub[data-v-45e5736e]{margin-top:6px;color:var(--text-tertiary)!important;font-size:13px!important;font-weight:600!important}.growth-body[data-v-45e5736e]{flex:1;justify-content:center;padding:0 0 28px;display:flex;overflow-y:auto}.growth-panel[data-v-45e5736e]{width:100%;padding:28px 32px 0}.growth-header[data-v-45e5736e]{margin-bottom:20px}.growth-title-row[data-v-45e5736e]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.growth-title[data-v-45e5736e]{color:var(--text-primary);align-items:center;gap:10px;margin:0;font-size:20px;font-weight:900;display:flex}.growth-title i[data-v-45e5736e]{color:var(--color-primary);font-size:20px}.growth-desc[data-v-45e5736e]{color:var(--text-tertiary);margin:6px 0 0;font-size:14px;font-weight:600}.growth-actions[data-v-45e5736e]{flex-shrink:0;gap:8px;display:flex}.growth-reset-btn[data-v-45e5736e]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-full);min-height:40px;color:var(--text-secondary);transition:all var(--transition-normal);align-items:center;gap:6px;padding:9px 18px;font-size:14px;font-weight:700;display:flex}.growth-reset-btn[data-v-45e5736e]:hover{background:var(--glass-bg-strong);color:var(--text-primary)}.growth-save-btn[data-v-45e5736e]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border-radius:var(--radius-full);min-height:40px;transition:all var(--transition-normal);align-items:center;gap:6px;padding:9px 20px;font-size:14px;font-weight:700;display:flex;box-shadow:0 2px 8px #7c5cbf40}.growth-save-btn[data-v-45e5736e]:hover{box-shadow:0 4px 14px #7c5cbf59}.growth-save-btn.saved[data-v-45e5736e]{background:linear-gradient(135deg, var(--color-success), #4ade80);box-shadow:0 2px 8px #22c55e40}.growth-tip[data-v-45e5736e]{border-radius:var(--radius-sm);color:var(--text-secondary);background:#ffc10714;border:1px solid #ffc10733;align-items:flex-start;gap:10px;margin-bottom:24px;padding:14px 18px;font-size:13px;font-weight:600;line-height:1.6;display:flex}.growth-tip i[data-v-45e5736e]{color:#ffc107;flex-shrink:0;margin-top:2px;font-size:16px}.growth-grid[data-v-45e5736e]{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.growth-card[data-v-45e5736e]{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);box-shadow:var(--shadow-inset), var(--shadow-float);transition:all var(--transition-normal);justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.level-progression[data-v-45e5736e]{flex-shrink:0;align-items:center;gap:10px;display:flex}.points-input-area[data-v-45e5736e]{flex-shrink:0;align-items:center;gap:8px;display:flex}.growth-card[data-v-45e5736e]:hover{border-color:var(--glass-border);background:var(--glass-bg-strong)}.growth-card.max-level[data-v-45e5736e]{background:linear-gradient(135deg,#ffc1070f,#ff98000f);border-color:#ffc10733}.growth-card.max-level[data-v-45e5736e]:hover{background:linear-gradient(135deg,#ffc1071a,#ff98001a);border-color:#ffc1074d}.level-from[data-v-45e5736e],.level-to[data-v-45e5736e]{color:var(--text-primary);white-space:nowrap;font-size:15px;font-weight:900}.level-arrow[data-v-45e5736e]{color:var(--text-tertiary);flex-shrink:0;font-size:12px}.growth-input-wrap[data-v-45e5736e]{flex-shrink:0}.growth-input[data-v-45e5736e]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);text-align:center;background:var(--glass-bg-strong);width:80px;min-height:40px;color:var(--text-primary);transition:all var(--transition-normal);-moz-appearance:textfield;padding:8px 10px;font-size:16px;font-weight:800}.growth-input[data-v-45e5736e]::-webkit-inner-spin-button{-webkit-appearance:none}.growth-input[data-v-45e5736e]::-webkit-outer-spin-button{-webkit-appearance:none}.growth-input[data-v-45e5736e]:focus{border-color:var(--color-primary-light);outline:none;box-shadow:0 0 0 3px #7c5cbf1a}.growth-unit[data-v-45e5736e]{color:var(--text-tertiary);white-space:nowrap;min-width:36px;font-size:13px;font-weight:700}.max-level-text[data-v-45e5736e]{color:#f59e0b;white-space:nowrap;align-items:center;gap:6px;font-size:15px;font-weight:800;display:flex}.max-level-text i[data-v-45e5736e]{font-size:18px}.style-body[data-v-45e5736e]{flex:1;justify-content:center;padding:0 0 28px;display:flex;overflow-y:auto}.style-panel[data-v-45e5736e]{width:100%;padding:28px 32px 0}.style-header[data-v-45e5736e]{align-items:center;gap:16px;margin-bottom:24px;display:flex}.style-header-icon[data-v-45e5736e]{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:22px;display:flex;box-shadow:0 4px 14px #7c5cbf40}.style-header-title[data-v-45e5736e]{color:var(--text-primary);margin:0;font-size:20px;font-weight:900}.style-header-desc[data-v-45e5736e]{color:var(--text-tertiary);margin:4px 0 0;font-size:13px;font-weight:600}.pet-style-cards[data-v-45e5736e]{flex-direction:column;gap:14px;display:flex}.pet-style-card[data-v-45e5736e]{background:var(--glass-bg);border:2px solid var(--glass-border-subtle);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--shadow-inset), var(--shadow-float);padding:18px 20px}.pet-style-card[data-v-45e5736e]:hover{background:var(--glass-bg-strong);border-color:var(--color-primary-light);box-shadow:var(--shadow-soft);transform:translateY(-2px)}.pet-style-card.selected[data-v-45e5736e]{background:var(--color-primary-pale);border-color:var(--color-primary);box-shadow:0 0 0 3px #7c5cbf1a, var(--shadow-soft)}.pet-style-card-header[data-v-45e5736e]{align-items:center;gap:12px;display:flex}.pet-style-icon[data-v-45e5736e]{background:var(--glass-bg-light);border-radius:var(--radius-sm);width:44px;height:44px;color:var(--color-primary);transition:all var(--transition-normal);flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.pet-style-card.selected .pet-style-icon[data-v-45e5736e]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff}.pet-style-info[data-v-45e5736e]{flex-direction:column;flex:1;gap:2px;display:flex}.pet-style-name[data-v-45e5736e]{color:var(--text-primary);font-size:16px;font-weight:800}.pet-style-desc[data-v-45e5736e]{color:var(--text-tertiary);font-size:12px;font-weight:600}.pet-style-check[data-v-45e5736e]{color:var(--color-primary);flex-shrink:0;font-size:24px;animation:.3s popIn}.pet-style-preview[data-v-45e5736e]{border-top:1px solid var(--glass-border-subtle);gap:10px;margin-top:14px;padding-top:14px;display:flex}.pet-style-card.selected .pet-style-preview[data-v-45e5736e]{border-top-color:#7c5cbf26}.pet-preview-item[data-v-45e5736e]{flex-direction:column;flex:1;align-items:center;gap:4px;min-width:0;display:flex}.pet-preview-item img[data-v-45e5736e]{object-fit:contain;width:64px;height:64px;transition:transform var(--transition-normal)}.pet-style-card:hover .pet-preview-item img[data-v-45e5736e]{animation:3s ease-in-out infinite petBreathe}.pet-style-card.selected .pet-preview-item img[data-v-45e5736e]{animation:.6s ease-in-out infinite alternate petEagerBounce}.pet-preview-name[data-v-45e5736e]{color:var(--text-tertiary);text-align:center;font-size:10px;font-weight:700;line-height:1.2}.pet-style-card.selected .pet-preview-name[data-v-45e5736e]{color:var(--color-primary)}.system-body[data-v-45e5736e]{flex:1;justify-content:center;padding:0 0 28px;display:flex;overflow-y:auto}.system-panel[data-v-45e5736e]{flex-direction:column;gap:12px;width:100%;padding:24px 32px 0;display:flex}.system-section[data-v-45e5736e]{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-md);transition:all var(--transition-normal);justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.system-section[data-v-45e5736e]:hover{background:var(--glass-bg-strong);border-color:var(--glass-border)}.system-section-header[data-v-45e5736e]{flex:1;align-items:center;gap:14px;min-width:0;display:flex}.system-section-icon[data-v-45e5736e]{border-radius:var(--radius-sm);background:var(--color-primary-pale);width:40px;height:40px;color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex}.system-section-text[data-v-45e5736e]{flex-direction:column;gap:2px;min-width:0;display:flex}.system-section-title[data-v-45e5736e]{color:var(--text-primary);font-size:14px;font-weight:800}.system-section-desc[data-v-45e5736e]{color:var(--text-tertiary);font-size:12px;font-weight:600}.system-section-control[data-v-45e5736e]{flex-shrink:0}.columns-control[data-v-45e5736e]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-full);align-items:center;gap:4px;padding:3px;display:flex}.col-adj[data-v-45e5736e]{width:32px;height:32px;color:var(--text-secondary);background:var(--glass-bg-strong);border:1px solid var(--glass-border-subtle);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:12px;display:flex}.col-adj[data-v-45e5736e]:hover{background:var(--color-primary-pale);color:var(--color-primary);border-color:var(--color-primary-light)}.col-value[data-v-45e5736e]{text-align:center;width:36px;color:var(--text-primary);font-size:18px;font-weight:900}.toggle-switch[data-v-45e5736e]{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:flex}.toggle-track[data-v-45e5736e]{background:#9490aa40;border-radius:14px;flex-shrink:0;width:48px;height:28px;transition:all .3s;position:relative}.toggle-switch.active .toggle-track[data-v-45e5736e]{background:var(--color-primary)}.toggle-thumb[data-v-45e5736e]{background:#fff;border-radius:50%;width:22px;height:22px;transition:all .3s cubic-bezier(.34,1.56,.64,1);position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #00000026}.toggle-switch.active .toggle-thumb[data-v-45e5736e]{left:23px}.toggle-label[data-v-45e5736e]{color:var(--text-tertiary);white-space:nowrap;font-size:13px;font-weight:700}.toggle-switch.active .toggle-label[data-v-45e5736e]{color:var(--color-primary)}.system-section.danger-zone[data-v-45e5736e]{background:#ef444408;border-color:#ef444426}.system-section.danger-zone[data-v-45e5736e]:hover{background:#ef44440f;border-color:#ef44444d}.system-section.danger-zone .system-section-icon[data-v-45e5736e]{background:var(--color-danger-pale);color:var(--color-danger)}.danger-zone-btn[data-v-45e5736e]{border-radius:var(--radius-full);min-height:36px;color:var(--color-danger);cursor:pointer;transition:all var(--transition-normal);white-space:nowrap;background:0 0;border:1px solid #ef44444d;padding:8px 18px;font-size:13px;font-weight:700}.danger-zone-btn[data-v-45e5736e]:hover{background:var(--color-danger);color:#fff;border-color:var(--color-danger);box-shadow:0 2px 8px #ef44444d}.help-body[data-v-45e5736e]{padding:24px;overflow-y:auto}.help-panel[data-v-45e5736e]{flex-direction:column;gap:20px;width:100%;margin:0 auto;display:flex}.help-panel[data-v-45e5736e]:after{content:"";flex-shrink:0;height:4px;display:block}.help-section[data-v-45e5736e]{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);padding:24px}.help-section-brand[data-v-45e5736e]{justify-content:center;align-items:center;display:flex}.help-section-intro[data-v-45e5736e]{flex-direction:column;gap:16px;display:flex}.help-section-contact[data-v-45e5736e]{text-align:center;justify-content:center;align-items:center;display:flex}.help-header-block[data-v-45e5736e]{align-items:center;gap:16px;width:100%;display:flex}.help-logo[data-v-45e5736e]{border-radius:var(--radius-sm);flex-shrink:0;width:56px;height:56px}.help-app-info[data-v-45e5736e]{flex-direction:column;gap:2px;display:flex}.help-app-name[data-v-45e5736e]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:20px;font-weight:900}.help-app-link[data-v-45e5736e]{color:var(--color-primary);font-size:13px;font-weight:600;text-decoration:none}.help-app-link[data-v-45e5736e]:hover{text-decoration:underline}.help-intro[data-v-45e5736e]{color:var(--text-secondary);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-md);background:#7c5cbf0a;margin:0;padding:14px 18px;font-size:14px;font-weight:600;line-height:1.8}.help-values[data-v-45e5736e]{grid-template-columns:1fr 1fr;gap:10px;display:grid}.help-value-item[data-v-45e5736e]{border:1px solid var(--glass-border-subtle);border-radius:var(--radius-md);transition:all var(--transition-normal);background:#ffffff80;align-items:center;gap:12px;padding:12px 16px;display:flex}.help-value-item[data-v-45e5736e]:hover{background:var(--glass-bg-strong);border-color:var(--glass-border)}.help-value-item>i[data-v-45e5736e]{background:var(--color-primary-pale);width:34px;height:34px;color:var(--color-primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;display:flex}.help-value-item strong[data-v-45e5736e]{color:var(--text-primary);font-size:13px;font-weight:800;display:block}.help-value-item span[data-v-45e5736e]{color:var(--text-tertiary);font-size:12px;font-weight:600}.help-quote[data-v-45e5736e]{border-left:3px solid var(--color-primary);border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--color-primary);background:linear-gradient(135deg,#7c5cbf0f,#a78bfa0f);margin:0;padding:14px 20px;font-size:14px;font-style:italic;font-weight:700;line-height:1.6}.help-contact[data-v-45e5736e]{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.help-contact-label[data-v-45e5736e]{color:var(--text-tertiary);font-size:13px;font-weight:600}.help-contact-name[data-v-45e5736e]{color:var(--text-primary);font-size:15px;font-weight:800}.help-qrcode[data-v-45e5736e]{border-radius:var(--radius-sm);border:1px solid var(--glass-border-subtle);flex-shrink:0;width:140px;height:140px;margin-top:4px}.lock-overlay[data-v-62ad0bc0]{z-index:10000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.lock-bg[data-v-62ad0bc0]{background:linear-gradient(160deg,#0f0c29 0%,#1a1145 25%,#302b63 55%,#24243e 100%);position:absolute;inset:0}.lock-bg[data-v-62ad0bc0]:before{content:"";background:radial-gradient(at 25% 35%,#7c5cbf26 0%,#0000 55%),radial-gradient(at 75% 65%,#3b82f61a 0%,#0000 55%);width:160%;height:160%;animation:25s ease-in-out infinite bgDrift-62ad0bc0;position:absolute;top:-30%;left:-30%}@keyframes bgDrift-62ad0bc0{0%,to{transform:translate(0)}50%{transform:translate(-30px,-20px)}}.lock-content[data-v-62ad0bc0]{color:#fff;z-index:1;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:720px;height:100%;padding:40px;display:flex;position:relative}.lock-clock[data-v-62ad0bc0]{flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.lock-time[data-v-62ad0bc0]{letter-spacing:6px;text-shadow:0 4px 30px #7c5cbf40;font-size:128px;font-weight:200;line-height:1}.lock-date[data-v-62ad0bc0]{color:#ffffff8c;letter-spacing:2px;margin-top:16px;font-size:22px;font-weight:400}.lock-pin-area[data-v-62ad0bc0]{flex-direction:column;flex-shrink:0;align-items:center;gap:16px;width:100%;max-width:680px;display:flex}.lock-icon-ring[data-v-62ad0bc0]{color:#ffffffb3;background:#ffffff14;border:1px solid #ffffff1f;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:4px;font-size:22px;display:flex}.pin-section[data-v-62ad0bc0]{flex-direction:column;align-items:center;gap:16px;width:100%;transition:transform .3s;display:flex}.pin-section.shake[data-v-62ad0bc0]{animation:.5s shake-62ad0bc0}@keyframes shake-62ad0bc0{0%,to{transform:translate(0)}20%{transform:translate(-12px)}40%{transform:translate(12px)}60%{transform:translate(-8px)}80%{transform:translate(8px)}}.pin-title[data-v-62ad0bc0]{color:#ffffffd9;font-size:20px;font-weight:600}.pin-dots[data-v-62ad0bc0]{justify-content:center;gap:22px;height:22px;display:flex}.pin-dot[data-v-62ad0bc0]{border:2px solid #ffffff59;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;transition:all .15s;display:flex}.dot-inner[data-v-62ad0bc0]{background:#fff;border-radius:50%;width:12px;height:12px;animation:.15s dotPop-62ad0bc0}@keyframes dotPop-62ad0bc0{0%{transform:scale(0)}70%{transform:scale(1.2)}to{transform:scale(1)}}.pin-hint[data-v-62ad0bc0]{color:#ffffff73;height:22px;font-size:15px;font-weight:400}.numpad[data-v-62ad0bc0]{grid-template-columns:repeat(6,1fr);gap:14px;width:100%;max-width:660px;margin-top:8px;display:grid}.num-key[data-v-62ad0bc0]{color:#fff;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;cursor:pointer;background:#ffffff14;border:none;border-radius:20px;justify-content:center;align-items:center;height:72px;transition:all .1s;display:flex}.num-key[data-v-62ad0bc0]:hover:not(:disabled){background:#ffffff29}.num-key[data-v-62ad0bc0]:active:not(:disabled){background:#ffffff47;transform:scale(.95)}.num-main[data-v-62ad0bc0]{font-size:32px;font-weight:300;line-height:1}.num-empty[data-v-62ad0bc0]{visibility:hidden}.num-delete[data-v-62ad0bc0]{color:#fff9;font-size:24px}.pin-bottom[data-v-62ad0bc0]{justify-content:center;align-items:center;height:44px;margin-top:20px;display:flex}.pin-link[data-v-62ad0bc0]{color:#ffffff80;cursor:pointer;background:0 0;border:none;padding:8px 20px;font-size:16px;font-weight:500;transition:color .2s}.pin-link[data-v-62ad0bc0]:hover{color:#ffffffbf}.forgot-section[data-v-62ad0bc0]{flex-direction:column;align-items:center;gap:24px;width:100%;animation:.3s fadeUp-62ad0bc0;display:flex}@keyframes fadeUp-62ad0bc0{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.forgot-title[data-v-62ad0bc0]{color:#ffffffe6;font-size:22px;font-weight:700}.qr-area[data-v-62ad0bc0]{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:20px;flex-direction:column;align-items:center;gap:14px;width:100%;padding:28px 24px;display:flex}.qr-placeholder[data-v-62ad0bc0]{color:#ffffff40;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:16px;justify-content:center;align-items:center;width:140px;height:140px;font-size:60px;display:flex}.qr-text[data-v-62ad0bc0]{color:#ffffffb3;font-size:15px;font-weight:600}.qr-sub[data-v-62ad0bc0]{color:#fff6;font-size:13px;font-weight:400}.forgot-actions[data-v-62ad0bc0]{flex-direction:column;gap:10px;width:100%;display:flex}.forgot-btn[data-v-62ad0bc0]{cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px 24px;font-size:15px;font-weight:700;transition:all .2s;display:flex}.reset-btn[data-v-62ad0bc0]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border:none;box-shadow:0 4px 16px #7c5cbf4d}.reset-btn[data-v-62ad0bc0]:hover{transform:translateY(-1px);box-shadow:0 6px 24px #7c5cbf73}.reset-btn[data-v-62ad0bc0]:active{transform:scale(.98)}.back-btn[data-v-62ad0bc0]{color:#ffffffa6;background:#ffffff0f;border:1px solid #ffffff1a}.back-btn[data-v-62ad0bc0]:hover{color:#ffffffd9;background:#ffffff1a}.lock-fade-enter-active[data-v-62ad0bc0]{transition:opacity .35s}.lock-fade-leave-active[data-v-62ad0bc0]{transition:opacity .4s}.lock-fade-enter-from[data-v-62ad0bc0],.lock-fade-leave-to[data-v-62ad0bc0]{opacity:0}@media (width<=768px){.lock-content[data-v-62ad0bc0]{max-width:560px;padding:24px}.lock-time[data-v-62ad0bc0]{letter-spacing:4px;font-size:96px}.lock-date[data-v-62ad0bc0]{font-size:18px}.lock-pin-area[data-v-62ad0bc0]{max-width:520px}.numpad[data-v-62ad0bc0]{gap:12px;max-width:520px}.num-key[data-v-62ad0bc0]{height:64px}.num-main[data-v-62ad0bc0]{font-size:28px}}@media (width<=480px){.lock-content[data-v-62ad0bc0]{padding:16px}.lock-time[data-v-62ad0bc0]{letter-spacing:2px;font-size:64px}.lock-date[data-v-62ad0bc0]{margin-top:8px;font-size:14px}.numpad[data-v-62ad0bc0]{gap:8px}.num-key[data-v-62ad0bc0]{border-radius:16px;height:56px}.num-main[data-v-62ad0bc0]{font-size:24px}.pin-dots[data-v-62ad0bc0]{gap:14px}.pin-dot[data-v-62ad0bc0]{width:16px;height:16px}.dot-inner[data-v-62ad0bc0]{width:10px;height:10px}}.modal-overlay[data-v-691f6592]{-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal);background:#1e1b3a33;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.log-modal[data-v-691f6592]{background:var(--glass-bg-card);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:92%;max-width:620px;max-height:85vh;box-shadow:var(--shadow-inset), var(--shadow-elevated);flex-direction:column;display:flex;overflow:hidden}.log-header[data-v-691f6592]{border-bottom:1px solid var(--glass-border-subtle);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.log-title[data-v-691f6592]{color:var(--text-primary);align-items:center;gap:10px;font-size:20px;font-weight:900;display:flex}.log-title i[data-v-691f6592]{color:var(--color-primary);font-size:20px}.header-actions[data-v-691f6592]{align-items:center;gap:10px;display:flex}.clear-btn[data-v-691f6592]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-full);min-height:44px;color:var(--text-tertiary);transition:all var(--transition-normal);align-items:center;gap:6px;padding:8px 18px;font-size:14px;font-weight:700;display:flex}.clear-btn[data-v-691f6592]:hover{background:var(--color-danger-pale);color:var(--color-danger);border-color:#ef444426}.close-btn[data-v-691f6592]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);width:44px;height:44px;color:var(--text-tertiary);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex}.close-btn[data-v-691f6592]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.filter-bar[data-v-691f6592]{border-bottom:1px solid var(--glass-border-subtle);gap:8px;padding:12px 24px;display:flex}.filter-btn[data-v-691f6592]{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);min-height:44px;color:var(--text-secondary);transition:all var(--transition-normal);padding:8px 20px;font-size:14px;font-weight:700}.filter-btn[data-v-691f6592]:hover{background:var(--glass-bg-strong);color:var(--text-primary)}.filter-btn.active[data-v-691f6592]{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 2px 8px #7c5cbf40}.log-list[data-v-691f6592]{flex-direction:column;flex:1;gap:8px;padding:14px 24px;display:flex;overflow-y:auto}.log-row[data-v-691f6592]{align-items:stretch;transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .35s;display:flex}.log-row.undoing[data-v-691f6592]{opacity:0;transform:translate(110%)}.log-item[data-v-691f6592]{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);box-shadow:var(--shadow-inset), var(--shadow-float);flex:1;align-items:center;gap:14px;padding:14px 16px;transition:background .2s;display:flex}.log-item[data-v-691f6592]:hover{background:var(--glass-bg-strong)}.log-item.has-undo[data-v-691f6592]{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.undo-btn[data-v-691f6592]{color:#fff;border-radius:0 var(--radius-sm) var(--radius-sm) 0;white-space:nowrap;background:linear-gradient(135deg,#ef4444,#dc2626);border:1px solid #dc26264d;flex-shrink:0;justify-content:center;align-items:center;gap:4px;width:0;min-width:0;margin-left:-1px;padding:0;font-size:13px;font-weight:700;transition:width .25s cubic-bezier(.4,0,.2,1),padding .25s cubic-bezier(.4,0,.2,1),min-width .25s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.log-row:hover .undo-btn[data-v-691f6592]{width:72px;min-width:72px;padding:0 12px}.undo-btn[data-v-691f6592]:hover{background:linear-gradient(135deg,#dc2626,#b91c1c)}.log-icon[data-v-691f6592]{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:17px;display:flex}.log-info[data-v-691f6592]{flex:1;min-width:0}.log-message[data-v-691f6592]{color:var(--text-primary);font-size:14px;font-weight:700;line-height:1.4}.log-detail[data-v-691f6592]{color:var(--text-tertiary);margin-top:2px;font-size:13px;font-weight:600}.log-time[data-v-691f6592]{flex-direction:column;flex-shrink:0;align-items:flex-end;display:flex}.log-date[data-v-691f6592]{color:var(--text-tertiary);font-size:13px;font-weight:600}.log-clock[data-v-691f6592]{color:var(--text-secondary);font-size:14px;font-weight:700}.empty-state[data-v-691f6592]{color:var(--text-tertiary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:80px;display:flex}.empty-state i[data-v-691f6592]{opacity:.25;font-size:52px}.empty-state span[data-v-691f6592]{font-size:15px;font-weight:700}.popup-overlay[data-v-691f6592]{-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal-top);background:#1e1b3a59;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.popup-dialog[data-v-691f6592]{background:var(--glass-bg-card);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:92%;max-width:440px;box-shadow:var(--shadow-inset), var(--shadow-elevated);animation:.3s popIn;overflow:hidden}.popup-dialog.small[data-v-691f6592]{max-width:380px}.popup-header[data-v-691f6592]{border-bottom:1px solid var(--glass-border-subtle);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.popup-header.danger[data-v-691f6592]{border-bottom-color:#ef505033}.popup-title[data-v-691f6592]{color:var(--text-primary);font-size:16px;font-weight:900}.popup-close[data-v-691f6592]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);width:36px;height:36px;color:var(--text-tertiary);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:flex}.popup-close[data-v-691f6592]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.popup-body[data-v-691f6592]{padding:20px}.confirm-content[data-v-691f6592]{text-align:center;padding:10px 0}.confirm-icon[data-v-691f6592]{color:var(--color-danger);margin-bottom:12px;font-size:36px;display:block}.confirm-content p[data-v-691f6592]{color:var(--text-primary);font-size:15px;font-weight:700;line-height:1.6}.confirm-content strong[data-v-691f6592]{color:var(--color-danger)}.confirm-sub[data-v-691f6592]{margin-top:6px;color:var(--text-tertiary)!important;font-size:13px!important;font-weight:600!important}.popup-actions[data-v-691f6592]{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.popup-cancel[data-v-691f6592]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-full);min-height:40px;color:var(--text-secondary);transition:all var(--transition-normal);padding:9px 20px;font-size:14px;font-weight:700}.popup-cancel[data-v-691f6592]:hover{background:var(--glass-bg-strong)}.popup-delete[data-v-691f6592]{color:#fff;border-radius:var(--radius-full);min-height:40px;transition:all var(--transition-normal);background:linear-gradient(135deg,#ef4444,#dc2626);align-items:center;gap:6px;padding:9px 20px;font-size:14px;font-weight:700;display:flex;box-shadow:0 2px 8px #ef505040}.popup-delete[data-v-691f6592]:hover{box-shadow:0 4px 14px #ef505059}.modal-overlay[data-v-538b66c7]{-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal);background:#1e1b3a33;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-modal[data-v-538b66c7]{background:var(--glass-bg-card);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:92%;max-width:1000px;height:85vh;box-shadow:var(--shadow-inset), var(--shadow-elevated);flex-direction:column;display:flex;position:relative;overflow:hidden}.settings-header[data-v-538b66c7]{border-bottom:1px solid var(--glass-border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.settings-title[data-v-538b66c7]{color:var(--text-primary);font-size:18px;font-weight:900}.close-btn[data-v-538b66c7]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);width:44px;height:44px;color:var(--text-tertiary);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex}.close-btn[data-v-538b66c7]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.nav-tabs[data-v-538b66c7]{border-bottom:1px solid var(--glass-border-subtle);flex-shrink:0;gap:0;padding:0 24px;display:flex}.nav-tab[data-v-538b66c7]{min-height:44px;color:var(--text-tertiary);transition:all var(--transition-normal);background:0 0;border-bottom:2px solid #0000;padding:12px 20px;font-size:14px;font-weight:700}.nav-tab[data-v-538b66c7]:hover{color:var(--text-secondary)}.nav-tab.active[data-v-538b66c7]{color:var(--color-primary);border-bottom-color:var(--color-primary)}.settings-body[data-v-538b66c7]{flex:1;overflow:hidden}.shop-panel[data-v-538b66c7]{flex:1;padding:16px 20px;overflow-y:auto}.category-bar[data-v-538b66c7]{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.cat-btn[data-v-538b66c7]{color:var(--text-tertiary);background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-full);transition:all var(--transition-normal);padding:7px 16px;font-size:13px;font-weight:700}.cat-btn[data-v-538b66c7]:hover{background:var(--glass-bg-strong);color:var(--text-secondary)}.cat-btn.active[data-v-538b66c7]{background:var(--color-primary-pale);color:var(--color-primary);border-color:var(--color-primary-light)}.shop-grid[data-v-538b66c7]{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.shop-card[data-v-538b66c7]{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--shadow-inset), var(--shadow-float);flex-direction:column;padding:16px;display:flex}.shop-card[data-v-538b66c7]:hover{background:var(--glass-bg-strong);border-color:var(--glass-border)}.card-icon[data-v-538b66c7]{border-radius:var(--radius-sm);background:var(--color-primary-pale);width:44px;height:44px;color:var(--color-primary);justify-content:center;align-items:center;margin-bottom:12px;font-size:18px;display:flex}.card-info[data-v-538b66c7]{flex:1;margin-bottom:12px}.card-name[data-v-538b66c7]{color:var(--text-primary);margin-bottom:4px;font-size:14px;font-weight:800;display:block}.card-desc[data-v-538b66c7]{color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;display:block;overflow:hidden}.card-bottom[data-v-538b66c7]{justify-content:space-between;align-items:center;display:flex}.card-price[data-v-538b66c7]{color:var(--color-accent);align-items:center;gap:4px;font-size:14px;font-weight:800;display:flex}.card-buy[data-v-538b66c7]{color:#fff;background:linear-gradient(135deg, var(--color-accent), var(--color-accent-light));border-radius:var(--radius-full);transition:all var(--transition-normal);padding:5px 14px;font-size:12px;font-weight:700;box-shadow:0 2px 6px #f9731633}.card-buy[data-v-538b66c7]:hover{box-shadow:0 4px 12px #f973164d}.no-rules[data-v-538b66c7]{text-align:center;color:var(--text-tertiary);padding:40px 20px;font-size:13px;font-weight:600}.record-panel[data-v-538b66c7]{flex:1;padding:16px 20px;overflow-y:auto}.rule-list[data-v-538b66c7]{flex-direction:column;gap:4px;display:flex}.rule-card[data-v-538b66c7]{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-sm);transition:all var(--transition-normal);box-shadow:var(--shadow-inset), var(--shadow-float);align-items:center;gap:10px;padding:10px 14px;display:flex}.rule-card[data-v-538b66c7]:hover{background:var(--glass-bg-strong);border-color:var(--glass-border)}.rule-icon[data-v-538b66c7]{background:var(--color-accent-pale);width:36px;height:36px;color:var(--color-accent);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;display:flex}.rule-main[data-v-538b66c7]{min-width:0;color:var(--text-primary);flex:1;font-size:14px;font-weight:600}.record-student[data-v-538b66c7]{color:var(--color-primary);font-weight:800}.record-action[data-v-538b66c7]{color:var(--text-tertiary);margin:0 4px}.record-item-name[data-v-538b66c7]{color:var(--color-accent);font-weight:800}.record-time[data-v-538b66c7]{color:var(--text-tertiary);white-space:nowrap;flex-shrink:0;font-size:12px;font-weight:600}.rule-label[data-v-538b66c7]{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.rule-value[data-v-538b66c7]{border-radius:var(--radius-full);flex-shrink:0;padding:3px 10px;font-size:12px;font-weight:800}.rule-value.price[data-v-538b66c7]{background:var(--color-accent-pale);color:var(--color-accent);align-items:center;gap:4px;display:flex}.rule-value.cat[data-v-538b66c7]{background:var(--color-primary-pale);color:var(--color-primary)}.rule-actions[data-v-538b66c7]{flex-shrink:0;gap:2px;display:flex}.action-icon[data-v-538b66c7]{width:30px;height:30px;color:var(--text-tertiary);opacity:0;transition:all var(--transition-normal);background:0 0;border-radius:6px;justify-content:center;align-items:center;font-size:12px;display:flex}.rule-card:hover .action-icon[data-v-538b66c7]{opacity:1}.action-icon.edit[data-v-538b66c7]:hover{background:var(--color-primary-pale);color:var(--color-primary)}.action-icon.delete[data-v-538b66c7]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.action-icon.save[data-v-538b66c7]:hover{background:var(--color-success-pale);color:var(--color-success)}.action-icon.cancel[data-v-538b66c7]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.edit-form-inline[data-v-538b66c7]{align-items:center;gap:10px;width:100%;display:flex}.edit-input[data-v-538b66c7]{background:var(--glass-bg-strong);border:1px solid var(--glass-border);border-radius:var(--radius-sm);min-width:80px;color:var(--text-primary);flex:1;min-height:30px;padding:6px 10px;font-size:13px;font-weight:600}.edit-input-sm[data-v-538b66c7]{background:var(--glass-bg-strong);border:1px solid var(--glass-border);border-radius:var(--radius-sm);width:60px;color:var(--text-primary);text-align:center;min-height:30px;padding:6px 10px;font-size:13px;font-weight:600}.edit-select[data-v-538b66c7]{text-align:center;appearance:none;width:80px;padding-right:6px}.edit-actions[data-v-538b66c7]{gap:2px;display:flex}.edit-actions .action-icon[data-v-538b66c7]{opacity:1}.manage-panel[data-v-538b66c7]{flex:1;padding:16px 20px;overflow-y:auto}.rules-header[data-v-538b66c7]{align-items:center;gap:10px;margin-bottom:16px;display:flex}.rules-title[data-v-538b66c7]{color:var(--text-primary);font-size:15px;font-weight:900}.rules-count[data-v-538b66c7]{color:var(--text-tertiary);font-size:13px;font-weight:700}.new-rule-btn[data-v-538b66c7]{background:linear-gradient(135deg, var(--color-info), #60a5fa);color:#fff;border-radius:var(--radius-full);min-height:38px;transition:all var(--transition-normal);align-items:center;gap:5px;margin-left:auto;padding:7px 16px;font-size:13px;font-weight:700;display:flex;box-shadow:0 2px 8px #3b82f633}.new-rule-btn[data-v-538b66c7]:hover{box-shadow:0 4px 12px #3b82f64d}.new-rule-btn[data-v-538b66c7]:disabled{opacity:.5;cursor:not-allowed}.category-add-row[data-v-538b66c7]{gap:10px;margin-bottom:12px;display:flex}.category-add-input[data-v-538b66c7]{flex:1;min-height:38px!important}.category-add-row .new-rule-btn[data-v-538b66c7]{flex-shrink:0;margin-left:0}.category-error[data-v-538b66c7]{background:var(--color-danger-pale);color:var(--color-danger);border-radius:var(--radius-sm);margin-bottom:10px;padding:8px 14px;font-size:13px;font-weight:600;animation:.4s shake-538b66c7}.category-card[data-v-538b66c7]{gap:12px}.category-dot[data-v-538b66c7]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));border-radius:50%;flex-shrink:0;width:10px;height:10px;box-shadow:0 0 8px #7c5cbf4d}.category-count[data-v-538b66c7]{color:var(--text-tertiary);white-space:nowrap;flex-shrink:0;font-size:12px;font-weight:700}.category-list .edit-form-inline[data-v-538b66c7]{gap:12px}.success-toast[data-v-538b66c7]{-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-xl);z-index:100;background:linear-gradient(135deg,#22c55ef2,#16a34af2);align-items:center;gap:14px;min-width:320px;max-width:480px;padding:16px 24px;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #22c55e59,0 0 0 1px #ffffff1a}.toast-icon[data-v-538b66c7]{color:#fff;background:#fff3;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.toast-content[data-v-538b66c7]{color:#fff;flex-direction:column;gap:2px;display:flex}.toast-title[data-v-538b66c7]{font-size:15px;font-weight:800}.toast-detail[data-v-538b66c7]{opacity:.9;font-size:13px;font-weight:600}.toast-price[data-v-538b66c7]{opacity:.8;align-items:center;gap:4px;font-size:12px;font-weight:700;display:flex}.toast-enter-active[data-v-538b66c7]{animation:.4s toastIn-538b66c7}.toast-leave-active[data-v-538b66c7]{animation:.3s toastOut-538b66c7}@keyframes toastIn-538b66c7{0%{opacity:0;transform:translate(-50%)translateY(20px)scale(.9)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes toastOut-538b66c7{0%{opacity:1;transform:translate(-50%)translateY(0)scale(1)}to{opacity:0;transform:translate(-50%)translateY(10px)scale(.95)}}@keyframes shake-538b66c7{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.popup-overlay[data-v-538b66c7]{-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal-top);background:#1e1b3a59;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.popup-dialog[data-v-538b66c7]{background:var(--glass-bg-card);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:92%;max-width:440px;box-shadow:var(--shadow-inset), var(--shadow-elevated);animation:.3s popIn;overflow:hidden}.popup-header[data-v-538b66c7]{border-bottom:1px solid var(--glass-border-subtle);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.popup-title[data-v-538b66c7]{color:var(--text-primary);font-size:16px;font-weight:900}.popup-close[data-v-538b66c7]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);width:36px;height:36px;color:var(--text-tertiary);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:flex}.popup-close[data-v-538b66c7]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.popup-body[data-v-538b66c7]{padding:20px}.form-field[data-v-538b66c7]{margin-bottom:14px}.field-label[data-v-538b66c7]{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:700;display:block}.form-input[data-v-538b66c7]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);width:100%;min-height:44px;color:var(--text-primary);transition:all var(--transition-normal);padding:10px 14px;font-size:14px;font-weight:600}.form-input[data-v-538b66c7]:focus{border-color:var(--color-primary-light);outline:none;box-shadow:0 0 0 3px #7c5cbf1a}.form-row-inline[data-v-538b66c7]{gap:14px;display:flex}.form-field.half[data-v-538b66c7]{flex:1}.score-input-wrap[data-v-538b66c7]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);align-items:center;display:flex;overflow:hidden}.score-adj[data-v-538b66c7]{width:44px;min-height:44px;color:var(--text-secondary);background:var(--glass-bg-light);transition:all var(--transition-normal);border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;display:flex}.score-adj[data-v-538b66c7]:hover{background:var(--glass-bg-strong);color:var(--color-primary)}.score-input[data-v-538b66c7]{text-align:center;-moz-appearance:textfield;flex:1;font-weight:800;background:0 0!important;border:none!important;border-radius:0!important}.score-input[data-v-538b66c7]::-webkit-inner-spin-button{-webkit-appearance:none}.score-input[data-v-538b66c7]::-webkit-outer-spin-button{-webkit-appearance:none}.icon-grid[data-v-538b66c7]{grid-template-columns:repeat(8,1fr);gap:4px;display:grid}.icon-item[data-v-538b66c7]{aspect-ratio:1;color:var(--text-tertiary);background:var(--glass-bg-light);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);border:2px solid #0000;justify-content:center;align-items:center;font-size:15px;display:flex}.icon-item[data-v-538b66c7]:hover{background:var(--glass-bg-strong);color:var(--text-primary);transform:scale(1.1)}.icon-item.selected[data-v-538b66c7]{background:var(--color-primary-pale);border-color:var(--color-primary-light);color:var(--color-primary)}.popup-actions[data-v-538b66c7]{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.popup-cancel[data-v-538b66c7]{background:var(--glass-bg-light);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-full);min-height:40px;color:var(--text-secondary);transition:all var(--transition-normal);padding:9px 20px;font-size:14px;font-weight:700}.popup-cancel[data-v-538b66c7]:hover{background:var(--glass-bg-strong)}.popup-save[data-v-538b66c7]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border-radius:var(--radius-full);min-height:40px;transition:all var(--transition-normal);align-items:center;gap:6px;padding:9px 20px;font-size:14px;font-weight:700;display:flex;box-shadow:0 2px 8px #7c5cbf40}.popup-save[data-v-538b66c7]:hover{box-shadow:0 4px 14px #7c5cbf59}.popup-save[data-v-538b66c7]:disabled{opacity:.5;cursor:not-allowed}.redeem-price-info[data-v-538b66c7]{background:var(--color-accent-pale);border-radius:var(--radius-sm);color:var(--color-accent);align-items:center;gap:8px;margin-bottom:16px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.redeem-price-info strong[data-v-538b66c7]{font-size:18px}.search-input-wrap[data-v-538b66c7]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);min-height:44px;color:var(--text-tertiary);transition:all var(--transition-normal);align-items:center;gap:8px;padding:0 14px;display:flex}.search-input-wrap[data-v-538b66c7]:focus-within{border-color:var(--color-primary-light);box-shadow:0 0 0 3px #7c5cbf1a}.search-input-wrap input[data-v-538b66c7]{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;padding:0;font-size:14px;font-weight:600}.search-input-wrap input[data-v-538b66c7]::placeholder{color:var(--text-tertiary)}.student-list[data-v-538b66c7]{flex-direction:column;gap:2px;max-height:260px;margin-top:8px;display:flex;overflow-y:auto}.student-row[data-v-538b66c7]{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-normal);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.student-row[data-v-538b66c7]:hover:not(.disabled){background:var(--color-primary-pale)}.student-row.disabled[data-v-538b66c7]{opacity:.35;cursor:not-allowed}.student-name[data-v-538b66c7]{color:var(--text-primary);font-size:14px;font-weight:800}.student-badges[data-v-538b66c7]{color:var(--text-tertiary);align-items:center;gap:4px;font-size:13px;font-weight:700;display:flex}.student-badges.enough[data-v-538b66c7]{color:var(--color-accent)}.celebration-overlay[data-v-3dd0d464]{z-index:9999;background:radial-gradient(#1e1932eb 0%,#0f0c1ef7 100%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.golden-rays[data-v-3dd0d464]{pointer-events:none;width:200vmax;height:200vmax;animation:30s linear infinite raysRotate;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ray[data-v-3dd0d464]{transform-origin:0;background:linear-gradient(90deg,#ffc83266 0%,#ffc8321a 40%,#0000 100%);width:50%;height:2px;position:absolute;top:50%;left:0}.celebration-particles[data-v-3dd0d464]{pointer-events:none;position:absolute;inset:0}.particle[data-v-3dd0d464]{color:gold;opacity:0;animation:2s ease-in-out infinite particleTwinkle;position:absolute}.star-particle[data-v-3dd0d464]{filter:drop-shadow(0 0 4px #ffd70099)}.moon-particle[data-v-3dd0d464]{color:#ffeaa7;filter:drop-shadow(0 0 6px #ffeaa780)}.celebration-center[data-v-3dd0d464]{z-index:2;opacity:0;flex-direction:column;align-items:center;gap:24px;transition:all .6s cubic-bezier(.34,1.56,.64,1);display:flex;transform:scale(.6)}.celebration-center.show[data-v-3dd0d464]{opacity:1;transform:scale(1)}.pet-circle-frame[data-v-3dd0d464]{width:200px;height:200px;position:relative}.pet-circle-ring[data-v-3dd0d464]{border:3px solid #ffc83299;border-radius:50%;animation:2s ease-in-out infinite ringPulse;position:absolute;inset:-8px}.pet-circle-inner[data-v-3dd0d464]{background:radial-gradient(circle,#fff0c826 0%,#ffdc960d 100%);border:2px solid #ffc8324d;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;display:flex;overflow:hidden;box-shadow:0 0 40px #ffc83226,inset 0 0 30px #ffc8320d}.celebration-pet-img[data-v-3dd0d464]{object-fit:contain;filter:drop-shadow(0 4px 12px #0003);width:75%;height:75%;animation:3s ease-in-out infinite celebrationPetFloat}.celebration-pet-emoji[data-v-3dd0d464]{font-size:80px;animation:3s ease-in-out infinite celebrationPetFloat}.celebration-level-badge[data-v-3dd0d464]{color:#4a2800;background:linear-gradient(135deg,gold,#fa0);border:2px solid #ffffff4d;border-radius:20px;padding:6px 14px;font-size:15px;font-weight:900;animation:.5s .3s both badgePop;position:absolute;bottom:-4px;right:-4px;box-shadow:0 4px 12px #fa06}.levelup-title[data-v-3dd0d464]{align-items:center;gap:12px;display:flex}.levelup-text[data-v-3dd0d464]{background:linear-gradient(135deg,gold,#fa0,#ff8c00);-webkit-text-fill-color:transparent;letter-spacing:4px;text-shadow:none;filter:drop-shadow(0 2px 8px #fa06);white-space:nowrap;-webkit-background-clip:text;background-clip:text;font-size:42px;font-weight:900;animation:2s ease-in-out infinite levelupGlow}.multi-center .levelup-text[data-v-3dd0d464]{font-size:36px}.levelup-star[data-v-3dd0d464]{color:gold;filter:drop-shadow(0 0 8px #ffd70099);font-size:28px;animation:3s linear infinite starSpin}.celebration-message[data-v-3dd0d464]{color:#fff0dce6;text-align:center;flex-direction:column;align-items:center;gap:8px;font-size:18px;font-weight:700;display:flex}.sub-message[data-v-3dd0d464]{color:#ffdcb4b3;font-size:15px;font-weight:600}.multi-students-grid[data-v-3dd0d464]{flex-wrap:wrap;justify-content:center;gap:16px;max-width:600px;display:flex}.multi-students-grid.few[data-v-3dd0d464]{gap:20px}.multi-students-grid.many[data-v-3dd0d464]{gap:10px;max-width:700px}.multi-student-card[data-v-3dd0d464]{flex-direction:column;align-items:center;gap:8px;animation:.5s both multiCardPop;display:flex}.multi-students-grid.few .multi-student-card[data-v-3dd0d464]{width:130px}.multi-students-grid.many .multi-student-card[data-v-3dd0d464]{width:90px}.multi-pet-frame[data-v-3dd0d464]{aspect-ratio:1;background:radial-gradient(circle,#fff0c81f 0%,#ffdc960a 100%);border:2px solid #ffc83240;border-radius:50%;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden;box-shadow:0 0 24px #ffc8321a}.multi-pet-img[data-v-3dd0d464]{object-fit:contain;filter:drop-shadow(0 2px 8px #0003);width:70%;height:70%}.multi-pet-emoji[data-v-3dd0d464]{font-size:36px}.multi-students-grid.many .multi-pet-emoji[data-v-3dd0d464]{font-size:28px}.multi-level-badge[data-v-3dd0d464]{color:#4a2800;white-space:nowrap;background:linear-gradient(135deg,gold,#fa0);border:1px solid #ffffff4d;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:900;position:absolute;bottom:-2px;left:50%;transform:translate(-50%);box-shadow:0 2px 6px #ffaa0059}.multi-students-grid.many .multi-level-badge[data-v-3dd0d464]{padding:1px 6px;font-size:9px}.multi-student-name[data-v-3dd0d464]{color:#fff0dce6;text-align:center;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:13px;font-weight:800;overflow:hidden}.multi-students-grid.many .multi-student-name[data-v-3dd0d464]{font-size:11px}.celebration-fade-enter-active[data-v-3dd0d464]{transition:opacity .4s}.celebration-fade-leave-active[data-v-3dd0d464]{transition:opacity .5s}.celebration-fade-enter-from[data-v-3dd0d464],.celebration-fade-leave-to[data-v-3dd0d464]{opacity:0}@keyframes raysRotate{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}@keyframes particleTwinkle{0%,to{opacity:0;transform:scale(.5)rotate(0)}50%{opacity:1;transform:scale(1.2)rotate(180deg)}}@keyframes ringPulse{0%,to{border-color:#ffc83299;box-shadow:0 0 20px #ffc8321a}50%{border-color:#ffc832e6;box-shadow:0 0 40px #ffc83240}}@keyframes celebrationPetFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes badgePop{0%{opacity:0;transform:scale(0)}60%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes levelupGlow{0%,to{filter:drop-shadow(0 2px 8px #fa06)}50%{filter:drop-shadow(0 2px 16px #ffaa00b3)}}@keyframes starSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes multiCardPop{0%{opacity:0;transform:scale(.3)translateY(20px)}70%{transform:scale(1.08)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}.grad-overlay[data-v-8ccc7c9a]{z-index:9999;background:radial-gradient(#1e1932ed 0%,#0f0c1ef7 100%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.fireworks[data-v-8ccc7c9a]{pointer-events:none;position:absolute;inset:0}.firework-dot[data-v-8ccc7c9a]{background:var(--fw-color);opacity:0;width:8px;height:8px;filter:drop-shadow(0 0 6px var(--fw-color));border-radius:50%;animation:2.5s ease-in-out infinite fireworkPop;position:absolute}.ribbons[data-v-8ccc7c9a]{pointer-events:none;position:absolute;inset:0}.ribbon[data-v-8ccc7c9a]{background:var(--rb-color);opacity:0;border-radius:3px;width:6px;height:40px;animation:3s ease-in-out infinite ribbonFall;position:absolute;top:-20px}.grad-center[data-v-8ccc7c9a]{z-index:2;opacity:0;flex-direction:column;align-items:center;gap:20px;transition:all .7s cubic-bezier(.34,1.56,.64,1);display:flex;transform:scale(.6)translateY(20px)}.grad-center.show[data-v-8ccc7c9a]{opacity:1;transform:scale(1)translateY(0)}.pet-frame[data-v-8ccc7c9a]{width:180px;height:180px;position:relative}.pet-ring[data-v-8ccc7c9a]{border:3px solid #ffc83299;border-radius:50%;animation:2s ease-in-out infinite ringPulse;position:absolute;inset:-10px}.pet-inner[data-v-8ccc7c9a]{background:radial-gradient(circle,#fff0c826 0%,#ffdc960d 100%);border:2px solid #ffc8324d;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;display:flex;overflow:hidden;box-shadow:0 0 40px #ffc83226,inset 0 0 30px #ffc8320d}.pet-img[data-v-8ccc7c9a]{object-fit:contain;filter:drop-shadow(0 4px 12px #0003);width:75%;height:75%;animation:3s ease-in-out infinite petFloat}.pet-emoji[data-v-8ccc7c9a]{font-size:72px;animation:3s ease-in-out infinite petFloat}.level-tag[data-v-8ccc7c9a]{color:#4a2800;background:linear-gradient(135deg,gold,#fa0);border:2px solid #ffffff4d;border-radius:20px;padding:5px 12px;font-size:14px;font-weight:900;position:absolute;bottom:-4px;right:-4px;box-shadow:0 4px 12px #fa06}.grad-title[data-v-8ccc7c9a]{align-items:center;gap:14px;display:flex}.grad-text[data-v-8ccc7c9a]{background:linear-gradient(135deg,gold,#fa0,#ff8c00);-webkit-text-fill-color:transparent;letter-spacing:6px;filter:drop-shadow(0 2px 8px #fa06);-webkit-background-clip:text;background-clip:text;font-size:36px;font-weight:900;animation:2s ease-in-out infinite titleGlow}.grad-star[data-v-8ccc7c9a]{color:gold;filter:drop-shadow(0 0 8px #ffd70099);font-size:24px;animation:3s linear infinite starSpin}.grad-message[data-v-8ccc7c9a]{flex-direction:column;align-items:center;gap:6px;display:flex}.main-msg[data-v-8ccc7c9a]{color:#fff0dcf2;font-size:18px;font-weight:700}.sub-msg[data-v-8ccc7c9a]{color:#ffdcb4a6;font-size:14px;font-weight:600}.badge-display[data-v-8ccc7c9a]{border-radius:var(--radius-full);background:#ffffff14;border:1px solid #ffc83240;justify-content:center;align-items:center;padding:8px 16px;transition:all .4s;display:flex}.badge-display.claimed[data-v-8ccc7c9a]{background:#ffc83226;border-color:#ffc83280}.badge-icon-wrap[data-v-8ccc7c9a]{align-items:center;gap:6px;display:flex}.badge-medal[data-v-8ccc7c9a]{color:gold;filter:drop-shadow(0 0 8px #ffd70080);font-size:28px;animation:2s ease-in-out infinite medalShine}.badge-display.claimed .badge-medal[data-v-8ccc7c9a]{animation:1s ease-in-out infinite medalPulse}.badge-num[data-v-8ccc7c9a]{color:gold;filter:drop-shadow(0 0 4px #ffd70066);font-size:18px;font-weight:900}.claim-btn[data-v-8ccc7c9a]{color:#4a2800;border-radius:var(--radius-full);background:linear-gradient(135deg,gold,#fa0);border:2px solid #ffffff4d;justify-content:center;align-items:center;gap:10px;padding:14px 40px;font-size:18px;font-weight:900;animation:2s ease-in-out infinite claimPulse;display:flex;box-shadow:0 6px 24px #fa06}.claim-btn[data-v-8ccc7c9a]:hover{transform:translateY(-2px)scale(1.03);box-shadow:0 8px 32px #ffaa008c}.claim-btn[data-v-8ccc7c9a]:active{transform:scale(.97)}.claim-btn i[data-v-8ccc7c9a]{font-size:20px}.claim-effect[data-v-8ccc7c9a]{z-index:10;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.claim-ring[data-v-8ccc7c9a]{border:3px solid #ffc83299;border-radius:50%;width:80px;height:80px;animation:1s ease-out forwards ringExpand;position:absolute}.claim-check[data-v-8ccc7c9a]{color:gold;filter:drop-shadow(0 0 12px #ffd70099);font-size:32px;animation:.5s .2s both checkPop}.grad-fade-enter-active[data-v-8ccc7c9a]{transition:opacity .4s}.grad-fade-leave-active[data-v-8ccc7c9a]{transition:opacity .5s}.grad-fade-enter-from[data-v-8ccc7c9a],.grad-fade-leave-to[data-v-8ccc7c9a]{opacity:0}.claim-pop-enter-active[data-v-8ccc7c9a]{transition:all .4s cubic-bezier(.34,1.56,.64,1)}.claim-pop-leave-active[data-v-8ccc7c9a]{transition:opacity .3s}.claim-pop-enter-from[data-v-8ccc7c9a]{opacity:0;transform:scale(0)}.claim-pop-leave-to[data-v-8ccc7c9a]{opacity:0}@keyframes fireworkPop{0%,to{opacity:0;transform:scale(0)}30%{opacity:1;transform:scale(1.5)}60%{opacity:.8;transform:scale(.8)}80%{opacity:.4;transform:scale(1.2)}}@keyframes ribbonFall{0%{opacity:0;transform:translateY(0)rotate(0)}20%{opacity:.8}to{opacity:0;transform:translateY(100vh)rotate(360deg)}}@keyframes petFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes titleGlow{0%,to{filter:drop-shadow(0 2px 8px #fa06)}50%{filter:drop-shadow(0 2px 16px #ffaa00b3)}}@keyframes medalShine{0%,to{filter:drop-shadow(0 0 8px #ffd70080)}50%{filter:drop-shadow(0 0 16px #ffd700cc)}}@keyframes medalPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@keyframes claimPulse{0%,to{box-shadow:0 6px 24px #fa06}50%{box-shadow:0 6px 32px #fa09}}@keyframes ringExpand{0%{opacity:1;transform:scale(0)}to{opacity:0;transform:scale(3)}}@keyframes checkPop{0%{opacity:0;transform:scale(0)rotate(-90deg)}60%{transform:scale(1.3)rotate(10deg)}to{opacity:1;transform:scale(1)rotate(0)}}.onboarding-overlay[data-v-516a71d3]{background:var(--bg-gradient);z-index:var(--z-lock);flex-direction:column;justify-content:center;align-items:center;animation:.4s fadeIn;display:flex;position:fixed;inset:0}.onboarding-container[data-v-516a71d3]{background:var(--glass-bg-card);width:92%;max-width:680px;max-height:85vh;-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-inset), var(--shadow-elevated);flex-direction:column;animation:.5s cubic-bezier(.34,1.56,.64,1) slideUp;display:flex;overflow:hidden}.stepper-outside[data-v-516a71d3]{justify-content:center;width:92%;max-width:680px;padding-bottom:20px;display:flex}.stepper[data-v-516a71d3]{align-items:flex-start;display:flex}.stepper-step[data-v-516a71d3]{flex-direction:column;align-items:center;gap:8px;display:flex}.stepper-pill[data-v-516a71d3]{background:var(--glass-bg-strong);border:1.5px solid var(--glass-border);border-radius:999px;align-items:center;gap:6px;padding:8px 16px;transition:all .4s cubic-bezier(.34,1.56,.64,1);display:flex}.stepper-pill-icon[data-v-516a71d3]{color:var(--text-tertiary);font-size:15px;transition:all .3s}.stepper-pill-num[data-v-516a71d3]{color:var(--text-tertiary);font-size:13px;font-weight:800;transition:all .3s}.stepper-pill-check[data-v-516a71d3]{color:#4ade80;font-size:13px}.stepper-step.active .stepper-pill[data-v-516a71d3]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));border-color:#0000;transform:scale(1.05);box-shadow:0 4px 16px #7c5cbf73}.stepper-step.active .stepper-pill-icon[data-v-516a71d3],.stepper-step.active .stepper-pill-num[data-v-516a71d3]{color:#fff}.stepper-step.completed .stepper-pill[data-v-516a71d3]{background:#22c55e1f;border-color:#22c55e59}.stepper-step.completed .stepper-pill-icon[data-v-516a71d3]{color:#4ade80}.stepper-pill-label[data-v-516a71d3]{color:var(--text-tertiary);white-space:nowrap;font-size:11px;font-weight:700;transition:all .3s}.stepper-step.active .stepper-pill-label[data-v-516a71d3]{color:var(--color-primary);font-weight:800}.stepper-step.completed .stepper-pill-label[data-v-516a71d3]{color:var(--text-secondary)}.stepper-connector[data-v-516a71d3]{background:var(--glass-border);border-radius:1px;flex-shrink:0;width:32px;height:2px;margin:16px 6px 0;transition:all .5s cubic-bezier(.34,1.56,.64,1)}.stepper-connector.filled[data-v-516a71d3]{background:#22c55e66}.step-content[data-v-516a71d3]{flex:1;padding:20px 32px;overflow-y:auto}.step-panel[data-v-516a71d3]{animation:.4s floatUp}.step-hero[data-v-516a71d3]{text-align:center;margin-bottom:24px}.hero-emoji[data-v-516a71d3]{margin-bottom:12px;font-size:52px;animation:3s ease-in-out infinite gentleFloat}.step-title[data-v-516a71d3]{color:var(--text-primary);letter-spacing:-.3px;margin-bottom:6px;font-size:22px;font-weight:900}.step-desc[data-v-516a71d3]{color:var(--text-tertiary);font-size:14px;font-weight:600}.onboarding-type-cards[data-v-516a71d3]{gap:10px;display:flex}.onboarding-type-card[data-v-516a71d3]{border:2px solid var(--glass-border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);flex:1;align-items:center;gap:10px;padding:14px;display:flex}.onboarding-type-card[data-v-516a71d3]:hover{border-color:var(--color-primary-light);background:var(--glass-bg-strong)}.onboarding-type-card.active[data-v-516a71d3]{border-color:var(--color-primary);background:var(--color-primary-pale);box-shadow:0 0 0 3px #7c5cbf14}.type-card-icon[data-v-516a71d3]{color:var(--text-tertiary);transition:all var(--transition-normal);flex-shrink:0;font-size:22px}.onboarding-type-card.active .type-card-icon[data-v-516a71d3]{color:var(--color-primary)}.type-card-info[data-v-516a71d3]{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.type-card-name[data-v-516a71d3]{color:var(--text-primary);font-size:14px;font-weight:800}.type-card-desc[data-v-516a71d3]{color:var(--text-tertiary);font-size:11px;font-weight:600;line-height:1.4}.onboarding-type-card.active .type-card-desc[data-v-516a71d3]{color:var(--color-primary)}.type-card-check[data-v-516a71d3]{color:var(--color-primary);flex-shrink:0;font-size:20px;animation:.3s popIn}.form-card[data-v-516a71d3]{background:var(--glass-bg);border:1px solid var(--glass-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-inset), var(--shadow-float);padding:20px}.form-label[data-v-516a71d3]{color:var(--text-secondary);letter-spacing:.3px;margin-bottom:8px;font-size:13px;font-weight:800;display:block}.input-row[data-v-516a71d3]{gap:8px;display:flex}.guide-input[data-v-516a71d3]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);min-height:48px;color:var(--text-primary);flex:1;padding:12px 16px;font-size:16px;font-weight:600}.guide-input[data-v-516a71d3]:focus{border-color:var(--color-primary-light);box-shadow:0 0 0 3px #7c5cbf1a}.form-hint[data-v-516a71d3]{color:var(--text-tertiary);align-items:center;gap:6px;margin-top:10px;font-size:12px;font-weight:600;display:flex}.form-hint i[data-v-516a71d3]{color:var(--color-accent);font-size:11px}.import-header[data-v-516a71d3]{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.example-btn[data-v-516a71d3]{background:var(--color-accent-pale);color:var(--color-accent);border-radius:var(--radius-full);transition:all var(--transition-normal);padding:4px 12px;font-size:12px;font-weight:700}.example-btn[data-v-516a71d3]:hover{background:var(--color-accent);color:#fff}.guide-textarea[data-v-516a71d3]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);width:100%;color:var(--text-primary);resize:vertical;padding:12px 16px;font-size:14px;line-height:1.7}.guide-textarea[data-v-516a71d3]:focus{border-color:var(--color-primary-light);box-shadow:0 0 0 3px #7c5cbf1a}.action-btn[data-v-516a71d3]{border-radius:var(--radius-full);width:100%;min-height:48px;transition:all var(--transition-normal);justify-content:center;align-items:center;gap:8px;margin-top:14px;padding:12px 20px;font-size:15px;font-weight:700;display:flex}.action-btn.primary[data-v-516a71d3]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;box-shadow:0 4px 14px #7c5cbf40}.action-btn.primary[data-v-516a71d3]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #7c5cbf59}.action-btn.primary[data-v-516a71d3]:disabled{opacity:.5;cursor:not-allowed}.result-card[data-v-516a71d3]{border-radius:var(--radius-lg);align-items:center;gap:16px;padding:24px;animation:.5s bounceIn;display:flex}.result-card.success[data-v-516a71d3]{background:var(--color-success-pale);border:1px solid #3cbf7c33}.result-icon[data-v-516a71d3]{color:var(--color-success);flex-shrink:0;font-size:36px}.result-text[data-v-516a71d3]{color:var(--text-primary);font-size:18px;font-weight:800}.result-num[data-v-516a71d3]{color:var(--color-primary);font-size:24px;font-weight:900}.style-cards[data-v-516a71d3]{flex-direction:column;gap:14px;display:flex}.style-card[data-v-516a71d3]{background:var(--glass-bg);border:2px solid var(--glass-border-subtle);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--shadow-inset), var(--shadow-float);padding:18px 20px}.style-card[data-v-516a71d3]:hover{background:var(--glass-bg-strong);border-color:var(--color-primary-light);box-shadow:var(--shadow-soft);transform:translateY(-2px)}.style-card.selected[data-v-516a71d3]{background:var(--color-primary-pale);border-color:var(--color-primary);box-shadow:0 0 0 3px #7c5cbf1a, var(--shadow-soft)}.style-card-header[data-v-516a71d3]{align-items:center;gap:12px;margin-bottom:14px;display:flex}.style-icon[data-v-516a71d3]{background:var(--glass-bg-light);border-radius:var(--radius-sm);width:44px;height:44px;color:var(--color-primary);transition:all var(--transition-normal);flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.style-card.selected .style-icon[data-v-516a71d3]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff}.style-info[data-v-516a71d3]{flex-direction:column;flex:1;gap:2px;display:flex}.style-name[data-v-516a71d3]{color:var(--text-primary);font-size:16px;font-weight:800}.style-desc[data-v-516a71d3]{color:var(--text-tertiary);font-size:12px;font-weight:600}.style-check[data-v-516a71d3]{color:var(--color-primary);flex-shrink:0;font-size:22px;animation:.3s popIn}.style-preview[data-v-516a71d3]{border-top:1px solid var(--glass-border-subtle);gap:10px;padding-top:12px;display:flex}.style-card.selected .style-preview[data-v-516a71d3]{border-top-color:#7c5cbf26}.preview-pet[data-v-516a71d3]{flex-direction:column;flex:1;align-items:center;gap:4px;min-width:0;display:flex}.preview-pet img[data-v-516a71d3]{object-fit:contain;width:64px;height:64px;transition:transform var(--transition-normal)}.style-card:hover .preview-pet img[data-v-516a71d3]{animation:3s ease-in-out infinite petBreathe}.style-card.selected .preview-pet img[data-v-516a71d3]{animation:.6s ease-in-out infinite alternate petEagerBounce}.preview-name[data-v-516a71d3]{color:var(--text-tertiary);text-align:center;font-size:10px;font-weight:700;line-height:1.2}.style-card.selected .preview-name[data-v-516a71d3]{color:var(--color-primary)}.style-hint[data-v-516a71d3]{color:var(--text-tertiary);justify-content:center;align-items:center;gap:6px;margin-top:16px;font-size:12px;font-weight:600;display:flex}.style-hint i[data-v-516a71d3]{color:var(--color-accent);font-size:11px}.step-footer[data-v-516a71d3]{border-top:1px solid var(--glass-border-subtle);justify-content:space-between;align-items:center;padding:16px 32px 24px;display:flex}.footer-left[data-v-516a71d3]{display:flex}.footer-right[data-v-516a71d3]{gap:10px;display:flex}.footer-btn[data-v-516a71d3]{border-radius:var(--radius-full);min-height:44px;transition:all var(--transition-normal);align-items:center;gap:6px;padding:10px 22px;font-size:14px;font-weight:700;display:flex}.footer-btn.skip-all[data-v-516a71d3]{color:var(--text-tertiary);background:0 0;border:none;padding:10px 14px;font-size:13px}.footer-btn.skip-all[data-v-516a71d3]:hover{color:var(--text-secondary)}.footer-btn.skip[data-v-516a71d3]{background:var(--glass-bg-light);color:var(--text-tertiary);border:1px solid var(--glass-border-subtle)}.footer-btn.skip[data-v-516a71d3]:hover{background:var(--glass-bg-strong);color:var(--text-secondary)}.footer-btn.next[data-v-516a71d3]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border:none;box-shadow:0 4px 14px #7c5cbf40}.footer-btn.next[data-v-516a71d3]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #7c5cbf59}.footer-btn.next[data-v-516a71d3]:disabled{opacity:.5;cursor:not-allowed}@media (width<=768px){.onboarding-container[data-v-516a71d3]{width:96%;max-width:none}.stepper-outside[data-v-516a71d3]{width:96%;padding-bottom:14px}.stepper-pill[data-v-516a71d3]{gap:4px;padding:6px 12px}.stepper-pill-icon[data-v-516a71d3]{font-size:13px}.stepper-pill-num[data-v-516a71d3],.stepper-pill-check[data-v-516a71d3]{font-size:11px}.stepper-pill-label[data-v-516a71d3]{font-size:10px}.stepper-connector[data-v-516a71d3]{width:20px;margin-top:12px}.step-content[data-v-516a71d3]{padding:16px 20px}.step-footer[data-v-516a71d3]{padding:12px 20px 18px}.hero-emoji[data-v-516a71d3]{font-size:40px}.step-title[data-v-516a71d3]{font-size:18px}.style-card[data-v-516a71d3]{padding:14px 16px}.preview-pet img[data-v-516a71d3]{width:48px;height:48px}.style-icon[data-v-516a71d3]{width:36px;height:36px;font-size:15px}.style-name[data-v-516a71d3]{font-size:14px}.onboarding-type-cards[data-v-516a71d3]{flex-direction:column;gap:8px}}@media (width<=480px){.style-preview[data-v-516a71d3]{gap:6px}.preview-pet img[data-v-516a71d3]{width:40px;height:40px}.preview-name[data-v-516a71d3]{font-size:9px}}.login-overlay[data-v-4c04a65c]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:var(--z-lock);background:#28233c66;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.login-card[data-v-4c04a65c]{background:var(--glass-bg-strong);width:100%;max-width:400px;-webkit-backdrop-filter:blur(var(--glass-blur-heavy));backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-elevated);padding:40px;animation:.4s cubic-bezier(.2,.8,.2,1) floatUp}.login-header[data-v-4c04a65c]{text-align:center;margin-bottom:32px}.logo-circle[data-v-4c04a65c]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 20px;font-size:28px;display:flex;box-shadow:0 8px 16px #7c5cbf4d}.login-header h2[data-v-4c04a65c]{color:var(--text-primary);margin-bottom:8px;font-size:24px;font-weight:800}.login-header p[data-v-4c04a65c]{color:var(--text-tertiary);font-size:14px}.login-body[data-v-4c04a65c]{min-height:240px}.form-step[data-v-4c04a65c]{flex-direction:column;gap:16px;display:flex}.input-group[data-v-4c04a65c]{align-items:center;display:flex;position:relative}.input-icon[data-v-4c04a65c]{color:var(--text-tertiary);font-size:18px;position:absolute;left:16px}.input-group input[data-v-4c04a65c]{background:var(--glass-bg-light);border:1px solid var(--glass-border);border-radius:var(--radius-md);width:100%;height:52px;color:var(--text-primary);padding:0 16px 0 48px;font-size:15px;font-weight:600;transition:all .2s}.input-group input[data-v-4c04a65c]:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-pale);background:#fff}.resend-btn[data-v-4c04a65c]{background:var(--color-primary-pale);height:32px;color:var(--color-primary);border-radius:var(--radius-xs);padding:0 12px;font-size:12px;font-weight:700;position:absolute;right:12px}.resend-btn[data-v-4c04a65c]:disabled{opacity:.6;cursor:not-allowed}.pwd-toggle[data-v-4c04a65c]{width:32px;height:32px;color:var(--text-tertiary);border-radius:var(--radius-xs);justify-content:center;align-items:center;font-size:16px;transition:all .2s;display:flex;position:absolute;right:12px}.pwd-toggle[data-v-4c04a65c]:hover{color:var(--color-primary);background:var(--color-primary-pale)}.btn-primary[data-v-4c04a65c]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border-radius:var(--radius-md);width:100%;height:52px;margin-top:8px;font-size:17px;font-weight:800;box-shadow:0 4px 12px #7c5cbf40}.btn-primary[data-v-4c04a65c]:active{transform:scale(.98)}.btn-primary[data-v-4c04a65c]:disabled{opacity:.5;box-shadow:none;transform:none!important}.switch-link[data-v-4c04a65c]{text-align:center;color:var(--text-tertiary);margin-top:8px;font-size:14px}.switch-link span[data-v-4c04a65c]{color:var(--color-primary);cursor:pointer;margin-left:4px;font-weight:700}.button-row[data-v-4c04a65c]{align-items:stretch;gap:12px;display:flex}.button-row .btn-ghost[data-v-4c04a65c]{flex-shrink:0;width:auto;min-width:88px;margin-top:8px}.button-row .btn-primary[data-v-4c04a65c]{flex:1;width:auto;min-width:0}.btn-ghost[data-v-4c04a65c]{background:var(--glass-bg-light);height:52px;color:var(--text-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-md);margin-top:8px;padding:0 20px;font-size:16px;font-weight:700}.error-text[data-v-4c04a65c]{color:var(--color-danger);text-align:center;margin:-4px 0;font-size:13px;font-weight:600}.login-footer[data-v-4c04a65c]{text-align:center;color:var(--text-tertiary);margin-top:32px;font-size:12px}.login-footer a[data-v-4c04a65c]{color:var(--color-primary);font-weight:700;text-decoration:none;transition:opacity .2s}.login-footer a[data-v-4c04a65c]:hover{opacity:.7}.fade-enter-active[data-v-4c04a65c],.fade-leave-active[data-v-4c04a65c]{transition:opacity .3s}.fade-enter-from[data-v-4c04a65c],.fade-leave-to[data-v-4c04a65c]{opacity:0}.slide-fade-enter-active[data-v-4c04a65c]{transition:all .3s ease-out}.slide-fade-leave-active[data-v-4c04a65c]{transition:all .2s cubic-bezier(1,.5,.8,1)}.slide-fade-enter-from[data-v-4c04a65c]{opacity:0;transform:translate(20px)}.slide-fade-leave-to[data-v-4c04a65c]{opacity:0;transform:translate(-20px)}.app-container[data-v-5b102338]{flex-direction:column;height:100vh;display:flex;overflow:hidden}.top-nav[data-v-5b102338]{background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border-bottom:1px solid var(--glass-border);z-index:50;height:64px;box-shadow:var(--shadow-xs);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 24px;display:flex}.nav-left[data-v-5b102338]{flex-shrink:0;align-items:center;gap:16px;display:flex}.app-logo[data-v-5b102338]{align-items:center;gap:8px;display:flex}.app-logo .logo-icon[data-v-5b102338]{filter:drop-shadow(0 2px 4px #7c5cbf33);width:28px;height:28px}.app-title[data-v-5b102338]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));-webkit-text-fill-color:transparent;white-space:nowrap;-webkit-background-clip:text;background-clip:text;font-size:18px;font-weight:900}.class-selector[data-v-5b102338]{background:var(--glass-bg);border-radius:var(--radius-full);cursor:pointer;color:var(--text-secondary);border:1px solid var(--glass-border);transition:all var(--transition-normal);white-space:nowrap;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:700;display:flex}.class-selector[data-v-5b102338]:hover{background:var(--glass-bg-strong);border-color:var(--color-primary-light);color:var(--color-primary)}.class-count[data-v-5b102338]{opacity:.7;font-size:12px;font-weight:600}.selector-arrow[data-v-5b102338]{opacity:.5;transition:transform var(--transition-fast);font-size:10px}.search-input[data-v-5b102338]{background:var(--glass-bg);border-radius:var(--radius-full);border:1px solid var(--glass-border);transition:all var(--transition-normal);align-items:center;gap:6px;padding:6px 12px;display:flex;position:relative}.search-input[data-v-5b102338]:focus-within{border-color:var(--color-primary-light);box-shadow:0 0 0 3px #7c5cbf14}.search-icon[data-v-5b102338]{color:var(--text-tertiary);flex-shrink:0;font-size:12px}.search-input input[data-v-5b102338]{color:var(--text-primary);background:0 0;border:none;width:140px;padding:0;font-size:13px}.search-input input[data-v-5b102338]::placeholder{color:var(--text-tertiary)}.search-clear[data-v-5b102338]{background:var(--glass-bg-light);width:18px;height:18px;color:var(--text-tertiary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:10px;display:flex}.search-clear[data-v-5b102338]:hover{background:var(--color-danger-pale);color:var(--color-danger)}.sort-wrapper[data-v-5b102338]{position:relative}.sort-btn[data-v-5b102338]{background:var(--glass-bg);border-radius:var(--radius-full);color:var(--text-secondary);border:1px solid var(--glass-border);white-space:nowrap;transition:all var(--transition-normal);align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:700;display:flex}.sort-btn[data-v-5b102338]:hover{background:var(--glass-bg-strong);border-color:var(--color-primary-light);color:var(--color-primary)}.sort-arrow[data-v-5b102338]{opacity:.5;transition:transform var(--transition-fast);font-size:10px}.sort-arrow.open[data-v-5b102338]{transform:rotate(180deg)}.sort-dropdown[data-v-5b102338]{background:var(--glass-bg-strong);min-width:180px;-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--shadow-elevated);z-index:100;padding:6px;animation:.2s floatUp;position:absolute;top:calc(100% + 8px);right:0}.sort-option[data-v-5b102338]{color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:10px;padding:8px 12px;font-size:13px;font-weight:600;display:flex}.sort-option[data-v-5b102338]:hover{background:var(--color-primary-pale);color:var(--color-primary)}.sort-option.active[data-v-5b102338]{color:var(--color-primary);font-weight:700}.sort-option .check-icon[data-v-5b102338]{color:var(--color-primary);margin-left:auto;font-size:11px}.user-profile[data-v-5b102338]{align-items:center;height:44px;margin-left:8px;display:flex;position:relative}.user-avatar[data-v-5b102338]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;cursor:pointer;border:2px solid var(--glass-border);width:36px;height:36px;transition:all var(--transition-normal);box-shadow:var(--shadow-xs);border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:flex}.user-profile:hover .user-avatar[data-v-5b102338]{border-color:var(--color-primary-light);transform:scale(1.05)}.user-dropdown[data-v-5b102338]{background:var(--glass-bg-strong);width:220px;-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--shadow-elevated);opacity:0;visibility:hidden;transition:all var(--transition-normal);z-index:1000;padding:16px;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(10px)}.user-profile:hover .user-dropdown[data-v-5b102338]{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-header[data-v-5b102338]{flex-direction:column;margin-bottom:12px;display:flex}.dropdown-name[data-v-5b102338]{color:var(--text-primary);font-size:15px;font-weight:800}.dropdown-email[data-v-5b102338]{color:var(--text-tertiary);font-size:12px}.dropdown-divider[data-v-5b102338]{background:var(--glass-border);height:1px;margin:12px 0}.dropdown-info[data-v-5b102338]{flex-direction:column;gap:10px;display:flex}.info-item[data-v-5b102338]{justify-content:space-between;align-items:center;font-size:13px;display:flex}.info-item .label[data-v-5b102338]{color:var(--text-tertiary)}.info-item .value[data-v-5b102338]{color:var(--text-secondary);font-weight:600}.plan-badge[data-v-5b102338]{background:var(--color-primary-pale);border-radius:var(--radius-xs);padding:2px 8px;font-size:11px;color:var(--color-primary)!important}.logout-btn[data-v-5b102338]{border-radius:var(--radius-sm);background:var(--color-danger-pale);width:100%;color:var(--color-danger);justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:10px;font-size:14px;font-weight:700;display:flex}.logout-btn[data-v-5b102338]:hover{background:var(--color-danger);color:#fff}.nav-right[data-v-5b102338]{flex-shrink:0;align-items:center;gap:8px;display:flex}.nav-btn[data-v-5b102338]{border-radius:var(--radius-full);min-height:44px;color:var(--text-secondary);background:var(--glass-bg);border:1px solid var(--glass-border);transition:all var(--transition-normal);white-space:nowrap;align-items:center;gap:6px;padding:10px 18px;font-size:15px;font-weight:700;display:flex}.nav-btn[data-v-5b102338]:hover{background:var(--glass-bg-strong);border-color:var(--color-primary-light);color:var(--color-primary)}.nav-btn.primary[data-v-5b102338]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border-color:#0000;box-shadow:0 2px 10px #7c5cbf40}.nav-btn.primary[data-v-5b102338]:hover{transform:translateY(-1px);box-shadow:0 4px 14px #7c5cbf59}.exit-batch-btn[data-v-5b102338]{background:var(--color-danger-pale)!important;color:var(--color-danger)!important;border-color:#ef505033!important}.exit-batch-btn[data-v-5b102338]:hover{background:var(--color-danger)!important;color:#fff!important}.student-grid-wrapper[data-v-5b102338]{flex:1;padding:20px;overflow:hidden auto}.student-grid[data-v-5b102338]{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;max-width:1600px;margin:0 auto;display:grid}.empty-search[data-v-5b102338]{color:var(--text-tertiary);flex-direction:column;grid-column:1/-1;align-items:center;gap:12px;padding:60px 20px;font-size:14px;font-weight:600;display:flex}.empty-search i[data-v-5b102338]{opacity:.4;font-size:40px}.batch-bottom-bar[data-v-5b102338]{background:var(--glass-bg-strong);height:72px;-webkit-backdrop-filter:blur(var(--glass-blur-heavy));border-top:1px solid var(--glass-border);z-index:50;justify-content:space-between;align-items:center;padding:0 24px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #6450a00f}.batch-bar-info[data-v-5b102338]{color:var(--text-secondary);font-size:16px;font-weight:600}.batch-bar-info strong[data-v-5b102338]{color:var(--color-primary);font-size:18px}.batch-bar-actions[data-v-5b102338]{align-items:center;gap:10px;display:flex}.batch-bar-btn[data-v-5b102338]{border-radius:var(--radius-full);min-height:44px;color:var(--text-secondary);background:var(--glass-bg);border:1px solid var(--glass-border);transition:all var(--transition-normal);white-space:nowrap;align-items:center;gap:6px;padding:10px 20px;font-size:15px;font-weight:700;display:flex}.batch-bar-btn[data-v-5b102338]:hover{background:var(--glass-bg-strong);border-color:var(--color-primary-light);color:var(--color-primary)}.batch-bar-btn.clear-btn[data-v-5b102338]:hover{background:var(--color-danger-pale);color:var(--color-danger);border-color:#ef505033}.batch-bar-btn.primary[data-v-5b102338]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-light));color:#fff;border-color:#0000;box-shadow:0 2px 10px #7c5cbf40}.batch-bar-btn.primary[data-v-5b102338]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 14px #7c5cbf59}.batch-bar-btn.primary[data-v-5b102338]:disabled{opacity:.5;cursor:not-allowed}.float-actions[data-v-5b102338]{z-index:var(--z-float);flex-direction:column;gap:12px;display:flex;position:fixed;bottom:24px;right:24px}.float-btn[data-v-5b102338]{background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);width:60px;height:60px;color:var(--text-secondary);box-shadow:var(--shadow-soft);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;font-size:22px;display:flex;position:relative}.float-btn[data-v-5b102338]:hover{box-shadow:var(--shadow-medium);color:var(--color-primary);border-color:var(--color-primary-light);transform:translateY(-3px)}.lock-btn[data-v-5b102338]:hover{color:var(--color-danger);border-color:#ef505033}.float-badge[data-v-5b102338]{background:var(--color-accent);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:800;display:flex;position:absolute;top:-4px;right:-4px;box-shadow:0 2px 6px #f5923e4d}@media (width<=1200px){.nav-btn span[data-v-5b102338]{display:none}.nav-btn[data-v-5b102338]{min-height:44px;padding:10px 12px}}@media (width<=768px){.top-nav[data-v-5b102338]{gap:8px;height:56px;padding:0 12px}.app-title[data-v-5b102338]{display:none}.nav-left[data-v-5b102338]{gap:8px}.class-selector[data-v-5b102338]{padding:5px 10px;font-size:12px}.search-input[data-v-5b102338]{padding:5px 8px}.search-input input[data-v-5b102338]{width:100px}.sort-btn span[data-v-5b102338]{display:none}.sort-btn[data-v-5b102338]{padding:6px 8px}.nav-btn span[data-v-5b102338]{display:none}.nav-btn[data-v-5b102338]{min-height:44px;padding:9px 10px}.student-grid-wrapper[data-v-5b102338]{padding:12px}.student-grid[data-v-5b102338]{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}}@media (width<=480px){.search-input[data-v-5b102338],.sort-wrapper[data-v-5b102338]{display:none}.student-grid[data-v-5b102338]{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}}
