:root{color:#f4f7fb;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0b1020;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{background:#0b1020;min-width:320px;min-height:100vh;margin:0}#app{min-height:100vh}.page{padding:32px 20px 48px;position:relative;overflow:hidden}.bg-glow{filter:blur(80px);opacity:.35;pointer-events:none;z-index:0;border-radius:50%;position:fixed}.bg-glow-a{background:#4f7cff;width:420px;height:420px;top:-120px;left:-80px}.bg-glow-b{background:#9b5cff;width:360px;height:360px;bottom:-100px;right:-60px}.hero{z-index:1;text-align:center;max-width:1100px;margin:0 auto 28px;position:relative}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:#8ea8ff;margin:0 0 8px;font-size:13px}.hero h1{margin:0;font-size:clamp(28px,4vw,40px);font-weight:700}.subtitle{color:#a9b4cc;max-width:640px;margin:12px auto 0}.layout{z-index:1;grid-template-columns:1fr 1fr;gap:20px;max-width:1100px;margin:0 auto;display:grid;position:relative}.panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#12182cd1;border:1px solid #ffffff14;border-radius:20px;padding:20px;box-shadow:0 20px 60px #00000047}.dropzone{text-align:center;cursor:pointer;background:#ffffff05;border:1.5px dashed #8ea8ff73;border-radius:16px;place-items:center;min-height:280px;transition:border-color .25s,transform .25s,background .25s;display:grid;position:relative;overflow:hidden}.dropzone:hover,.dropzone.dragging{background:#4f7cff14;border-color:#8ea8ff;transform:translateY(-1px)}.dropzone.filled{padding:0}.hidden-input{display:none}.preview-image{object-fit:contain;background:#0d1328;width:100%;height:100%;min-height:280px}.dropzone-overlay{color:#dbe4ff;background:linear-gradient(#0000,#000000a6);padding:10px;font-size:13px;position:absolute;inset:auto 0 0}.dropzone-icon{margin-bottom:8px;font-size:42px}.dropzone-title{margin:0;font-size:18px;font-weight:600}.dropzone-hint{color:#93a0bc;margin:6px 0 0;font-size:13px}.style-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px;display:grid}.style-card{color:inherit;text-align:left;cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;padding:12px;transition:all .2s}.style-card:hover:not(:disabled){border-color:#8ea8ff80}.style-card.active{background:#4f7cff2e;border-color:#6f92ff;box-shadow:inset 0 0 0 1px #6f92ff59}.style-card:disabled{opacity:.6;cursor:not-allowed}.style-label{font-size:14px;font-weight:600;display:block}.style-desc{color:#9aa8c3;margin-top:4px;font-size:12px;display:block}.actions{gap:10px;margin-top:16px;display:flex}.btn{cursor:pointer;border:none;border-radius:12px;padding:12px 18px;font-size:14px;font-weight:600;transition:transform .15s,opacity .15s,background .15s}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.primary{color:#fff;background:linear-gradient(135deg,#4f7cff,#7b5cff);flex:1}.btn.primary:not(:disabled):hover{transform:translateY(-1px)}.btn.ghost{color:#c8d4ef;background:#ffffff0f;border:1px solid #ffffff14}.result-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.result-header h2{margin:0;font-size:18px}.badge{border-radius:999px;padding:4px 10px;font-size:12px}.badge.success{color:#6ee7b7;background:#34d39926}.badge.loading{color:#fcd34d;background:#fbbf2426}.result-stage{background:#0000002e;border-radius:16px;min-height:420px;overflow:hidden}.empty-state,.loading-state{text-align:center;color:#9aa8c3;place-items:center;min-height:420px;padding:24px;display:grid}.empty-state.error{color:#fca5a5}.result-image-wrap{background:#0d1328;place-items:center;min-height:420px;display:grid}.result-image{object-fit:contain;width:100%;max-height:520px;animation:.6s reveal}.loader{width:72px;height:72px;margin-bottom:18px;position:relative}.loader-ring{border:3px solid #8ea8ff33;border-top-color:#8ea8ff;border-radius:50%;animation:1s linear infinite spin;position:absolute;inset:0}.loader-core{background:radial-gradient(circle,#7b5cff80,#0000 70%);border-radius:50%;animation:1.6s ease-in-out infinite pulse;position:absolute;inset:18px}.loading-title{color:#e8eeff;margin:0;font-size:18px;font-weight:600}.loading-sub{color:#93a0bc;max-width:320px;margin:8px 0 18px;font-size:13px}.progress-bar{background:#ffffff14;border-radius:999px;width:min(320px,80vw);height:6px;overflow:hidden}.progress-bar-inner{border-radius:inherit;background:linear-gradient(90deg,#4f7cff,#9b5cff);width:40%;height:100%;animation:1.4s ease-in-out infinite slide}.fade-enter-active,.fade-leave-active{transition:opacity .35s,transform .35s}.fade-enter-from,.fade-leave-to{opacity:0;transform:translateY(8px)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.7;transform:scale(.92)}50%{opacity:1;transform:scale(1.05)}}@keyframes slide{0%{transform:translate(-120%)}to{transform:translate(320%)}}@keyframes reveal{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@media (width<=900px){.layout{grid-template-columns:1fr}.style-grid{grid-template-columns:repeat(2,1fr)}}.app-shell[data-v-75be1306]{min-height:100vh;position:relative}.top-nav[data-v-75be1306]{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0b1020d9;border-bottom:1px solid #ffffff14;align-items:center;gap:16px;padding:12px 20px;display:flex;position:sticky;top:0}.brand[data-v-75be1306]{color:#8ea8ff;font-weight:700}.nav-links[data-v-75be1306]{gap:12px;display:flex}.nav-links a[data-v-75be1306]{color:#c8d4ef;border-radius:8px;padding:6px 10px;text-decoration:none}.nav-links a.router-link-active[data-v-75be1306]{color:#fff;background:#4f7cff33}.user-box[data-v-75be1306]{align-items:center;gap:10px;margin-left:auto;display:flex}.coins[data-v-75be1306]{color:#fcd34d;font-size:13px;font-weight:600}.username[data-v-75be1306]{color:#9aa8c3;font-size:13px}.btn.small[data-v-75be1306]{padding:6px 10px;font-size:12px}
