:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.card{padding:2em}#app{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.login-container[data-v-e8c5709e]{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;background:#0a0a0c;overflow:hidden;position:relative;font-family:Inter,sans-serif}.bg-blur[data-v-e8c5709e]{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.circle[data-v-e8c5709e]{position:absolute;border-radius:50%;filter:blur(80px);opacity:.4}.c1[data-v-e8c5709e]{width:300px;height:300px;background:#0ea5e9;top:10%;left:10%;animation:move-1-e8c5709e 15s infinite alternate}.c2[data-v-e8c5709e]{width:400px;height:400px;background:#14b8a6;bottom:10%;right:10%;animation:move-2-e8c5709e 20s infinite alternate}@keyframes move-1-e8c5709e{0%{transform:translate(0)}to{transform:translate(100px,150px)}}@keyframes move-2-e8c5709e{0%{transform:translate(0)}to{transform:translate(-120px,-80px)}}.glass-card[data-v-e8c5709e]{width:90%;max-width:400px;padding:40px;background:rgba(255,255,255,.05);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:24px;z-index:10;box-shadow:0 25px 50px -12px #00000080}.logo-section[data-v-e8c5709e]{text-align:center;margin-bottom:30px}.scanner-icon[data-v-e8c5709e]{width:64px;height:64px;background:linear-gradient(135deg,#0ea5e9,#14b8a6);border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:#fff;box-shadow:0 10px 20px -5px #0ea5e980}.scanner-icon svg[data-v-e8c5709e]{width:32px;height:32px}h1[data-v-e8c5709e]{color:#fff;margin:0;font-size:28px;font-weight:700;letter-spacing:-.5px}h1 span[data-v-e8c5709e]{background:linear-gradient(to right,#38bdf8,#2dd4bf);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}p[data-v-e8c5709e]{color:#9ca3af;margin:8px 0 0;font-size:14px}.auth-form[data-v-e8c5709e]{display:flex;flex-direction:column;gap:20px}.input-group[data-v-e8c5709e]{display:flex;flex-direction:column;gap:8px}.input-group label[data-v-e8c5709e]{color:#d1d5db;font-size:13px;font-weight:500;margin-left:4px}.input-group input[data-v-e8c5709e]{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:14px 16px;color:#fff;font-size:15px;transition:all .2s}.input-group input[data-v-e8c5709e]:focus{outline:none;border-color:#14b8a6;background:rgba(255,255,255,.06);box-shadow:0 0 0 4px #14b8a61a}.center-input[data-v-e8c5709e]{text-align:center;letter-spacing:4px;font-weight:700;font-size:18px!important}.activation-info[data-v-e8c5709e]{background:rgba(20,184,166,.1);border:1px solid rgba(20,184,166,.2);border-radius:12px;padding:12px;color:#99f6e4;font-size:13px;text-align:center;line-height:1.5}.switch-mode[data-v-e8c5709e]{text-align:center;color:#6b7280;font-size:14px;margin-top:10px}.switch-mode a[data-v-e8c5709e]{color:#14b8a6;text-decoration:none;font-weight:500;cursor:pointer}.auth-btn[data-v-e8c5709e]{background:#0d9488;color:#fff;border:none;border-radius:12px;padding:16px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;margin-top:10px;display:flex;align-items:center;justify-content:center}.auth-btn[data-v-e8c5709e]:hover:not(:disabled){background:#0f766e}.spinner[data-v-e8c5709e]{width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-e8c5709e .8s linear infinite}@keyframes spin-e8c5709e{to{transform:rotate(360deg)}}.footer[data-v-e8c5709e]{text-align:center;margin-top:30px;border-top:1px solid rgba(255,255,255,.05);padding-top:20px}.footer p[data-v-e8c5709e]{font-size:12px;color:#4b5563}.toast[data-v-e8c5709e]{position:fixed;bottom:30px;left:50%;transform:translate(-50%);padding:12px 24px;border-radius:100px;font-size:14px;font-weight:600;display:flex;align-items:center;gap:10px;z-index:1000}.toast.success[data-v-e8c5709e]{background:#10b981;color:#fff}.toast.error[data-v-e8c5709e]{background:#ef4444;color:#fff}.slide-up-enter-active[data-v-e8c5709e],.slide-up-leave-active[data-v-e8c5709e]{transition:all .3s ease}.slide-up-enter-from[data-v-e8c5709e],.slide-up-leave-to[data-v-e8c5709e]{opacity:0;transform:translate(-50%,20px)}.dashboard-container[data-v-7a6193a1]{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0a0a0c;color:#fff;padding:24px;box-sizing:border-box;overflow-y:auto;font-family:Inter,sans-serif}.header[data-v-7a6193a1]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px}.user-info h2[data-v-7a6193a1]{margin:0;font-size:24px;font-weight:700;background:linear-gradient(to right,#fff,#9ca3af);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.user-info p[data-v-7a6193a1]{margin:5px 0 0;color:#6b7280;font-size:14px}.logout-btn[data-v-7a6193a1]{background:rgba(255,255,255,.1);border:none;width:40px;height:40px;border-radius:12px;color:#9ca3af;display:flex;align-items:center;justify-content:center;cursor:pointer}.grade-selector[data-v-7a6193a1]{display:flex;gap:12px;margin-bottom:30px;overflow-x:auto;padding-bottom:8px}.grade-pill[data-v-7a6193a1]{padding:8px 16px;background:rgba(255,255,255,.05);border-radius:100px;font-size:14px;color:#9ca3af;cursor:pointer;white-space:nowrap;border:1px solid transparent;transition:all .2s}.grade-pill.active[data-v-7a6193a1]{background:rgba(20,184,166,.1);color:#2dd4bf;border-color:#14b8a633}.subjects-grid[data-v-7a6193a1]{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;padding-bottom:80px}.subject-card[data-v-7a6193a1]{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);border-radius:20px;padding:20px;position:relative;cursor:pointer;transition:all .2s;overflow:hidden}.subject-card[data-v-7a6193a1]:active{transform:scale(.98)}.icon-wrapper[data-v-7a6193a1]{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:16px;box-shadow:0 4px 12px #0003}.icon-wrapper svg[data-v-7a6193a1]{width:24px;height:24px}.card-content h3[data-v-7a6193a1]{margin:0;font-size:16px;font-weight:600;color:#e5e7eb}.card-content p[data-v-7a6193a1]{margin:4px 0 0;font-size:12px;color:#6b7280}.delete-subject-btn[data-v-7a6193a1]{position:absolute;top:10px;right:10px;background:rgba(0,0,0,.2);border:none;padding:8px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.delete-subject-btn[data-v-7a6193a1]:hover{background:rgba(239,68,68,.2)}.fab[data-v-7a6193a1]{position:fixed;bottom:30px;right:30px;width:56px;height:56px;background:#14b8a6;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 24px #14b8a666;cursor:pointer;z-index:100;transition:transform .2s}.fab[data-v-7a6193a1]:active{transform:scale(.95)}.detail-container[data-v-29007d7a]{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0a0a0c;color:#fff;display:flex;flex-direction:column}.header[data-v-29007d7a]{padding:20px;display:flex;align-items:center;gap:16px;background:rgba(255,255,255,.02);border-bottom:1px solid rgba(255,255,255,.05)}.actions[data-v-29007d7a]{display:flex;gap:12px}.back-btn[data-v-29007d7a],.action-btn[data-v-29007d7a]{background:white;border:1px solid rgba(255,255,255,.1);width:40px;height:40px;border-radius:12px;color:#000;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #0000004d}.back-btn svg[data-v-29007d7a],.action-btn svg[data-v-29007d7a]{fill:#000}.back-btn[data-v-29007d7a]:active,.action-btn[data-v-29007d7a]:active{background:rgba(255,255,255,.2);transform:scale(.95)}.pdf-btn[data-v-29007d7a]{background:#14b8a6;color:#fff;position:relative;width:auto;padding:0 16px;gap:8px}.pdf-btn .count[data-v-29007d7a]{background:rgba(0,0,0,.2);padding:2px 6px;border-radius:10px;font-size:12px}.header-title[data-v-29007d7a]{flex:1}.header-title h2[data-v-29007d7a]{margin:0;font-size:18px;font-weight:600}.header-title p[data-v-29007d7a]{margin:2px 0 0;font-size:12px;color:#9ca3af}.loading-state[data-v-29007d7a],.empty-state[data-v-29007d7a]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#6b7280}.empty-icon[data-v-29007d7a]{margin-bottom:16px;opacity:.5}.start-btn[data-v-29007d7a]{margin-top:20px;background:#14b8a6;color:#fff;border:none;padding:12px 24px;border-radius:100px;font-weight:600;cursor:pointer}.problems-grid[data-v-29007d7a]{flex:1;padding:20px;overflow-y:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.problem-card[data-v-29007d7a]{background:rgba(255,255,255,.03);border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.05);cursor:pointer;position:relative;transition:all .2s}.problem-card.selected[data-v-29007d7a]{border-color:#14b8a6;box-shadow:0 0 0 2px #14b8a64d}.img-wrapper[data-v-29007d7a]{position:relative;aspect-ratio:3/4}.img-wrapper img[data-v-29007d7a]{width:100%;height:100%;object-fit:cover}.overlay[data-v-29007d7a]{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(20,184,166,.2);display:flex;align-items:center;justify-content:center}.check-circle[data-v-29007d7a]{width:40px;height:40px;background:#14b8a6;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 12px #0003}.delete-btn[data-v-29007d7a]{position:absolute;top:8px;right:8px;background:rgba(0,0,0,.5);border:none;width:28px;height:28px;border-radius:8px;color:#fff;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;z-index:10}.problem-meta[data-v-29007d7a]{padding:12px;display:flex;justify-content:space-between;font-size:12px;color:#9ca3af}.spinner[data-v-29007d7a]{width:30px;height:30px;border:3px solid rgba(255,255,255,.1);border-top-color:#14b8a6;border-radius:50%;animation:spin-29007d7a .8s linear infinite}@keyframes spin-29007d7a{to{transform:rotate(360deg)}}.fab[data-v-29007d7a]{position:fixed;bottom:30px;right:30px;width:56px;height:56px;background:#14b8a6;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 24px #14b8a666;cursor:pointer;z-index:100;transition:transform .2s}.fab[data-v-29007d7a]:active{transform:scale(.95)}.result-preview[data-v-7327ebd5]{position:absolute;top:0;left:0;width:100%;height:100%;background:black;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;touch-action:none}.image-container[data-v-7327ebd5]{flex:1;display:flex;align-items:center;justify-content:center;width:100%;overflow:hidden;position:relative}img[data-v-7327ebd5]{max-width:100%;max-height:100%;object-fit:contain}.crop-container[data-v-7327ebd5]{position:relative;width:100%;height:100%;display:flex;justify-content:center;align-items:center}.crop-overlay[data-v-7327ebd5]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.overlay-wrapper[data-v-7327ebd5]{position:absolute;pointer-events:none}.overlay-wrapper[data-v-7327ebd5]>*{pointer-events:auto}.crop-svg[data-v-7327ebd5]{pointer-events:none}.corner-handle[data-v-7327ebd5]{position:absolute;width:30px;height:30px;background:rgba(0,255,0,.5);border:2px solid #fff;border-radius:50%;transform:translate(-50%,-50%);cursor:grab;z-index:100}.corner-handle[data-v-7327ebd5]:active{cursor:grabbing;background:rgba(0,255,0,.8);transform:translate(-50%,-50%) scale(1.2)}.filter-controls[data-v-7327ebd5]{padding:20px;padding-bottom:calc(80px + env(safe-area-inset-bottom));display:flex;gap:10px;background:rgba(0,0,0,.8);width:100%;justify-content:center}button[data-v-7327ebd5]{padding:12px 20px;border-radius:100px;border:none;background:#ffffff;color:#000!important;cursor:pointer;font-weight:600;font-size:14px;box-shadow:0 2px 8px #0003;transition:all .2s;white-space:nowrap}button[data-v-7327ebd5]:active{transform:scale(.95);opacity:.9}.retake-btn[data-v-7327ebd5]{background:#f59e0b!important;color:#fff!important}.cancel-btn[data-v-7327ebd5]{background:#6b7280!important;color:#fff!important}.confirm-btn[data-v-7327ebd5]{background:#14b8a6!important;color:#fff!important}.crop-btn[data-v-7327ebd5]{background:#8b5cf6!important;color:#fff!important}.scanner-container[data-v-83a30a25]{position:fixed;top:0;left:0;width:100%;height:100vh;background:#000;display:flex;justify-content:center;align-items:center}.hidden-video[data-v-83a30a25]{display:none}.display-canvas[data-v-83a30a25]{max-width:100%;max-height:100%}.controls[data-v-83a30a25]{position:absolute;bottom:40px;left:50%;transform:translate(-50%);padding-bottom:env(safe-area-inset-bottom);display:flex;flex-direction:column;align-items:center;gap:12px;z-index:10}button[data-v-83a30a25]{padding:12px 24px;border-radius:12px;border:none;background:rgba(255,255,255,.9);color:#000;cursor:pointer;font-size:14px;font-weight:600;box-shadow:0 4px 12px #0000004d;transition:all .2s}button[data-v-83a30a25]:active{transform:scale(.95)}.auto-btn[data-v-83a30a25]{padding:8px 16px;font-size:12px}button.active[data-v-83a30a25]{background:#4caf50;color:#fff}.capture-btn-large[data-v-83a30a25]{background:#14b8a6;color:#fff;font-weight:700;font-size:18px;padding:16px 48px;border-radius:100px;box-shadow:0 8px 24px #14b8a666}.countdown[data-v-83a30a25]{background:rgba(255,193,7,.9);color:#000;padding:8px 16px;border-radius:8px;font-weight:600;font-size:14px}.scanner-cancel-btn[data-v-83a30a25]{position:absolute;top:20px;left:20px;z-index:20;width:40px;height:40px;padding:0;border-radius:50%;background:rgba(0,0,0,.5);color:#fff;border:2px solid rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}*{margin:0;padding:0;box-sizing:border-box}html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden}#app{position:fixed;top:0;left:0;width:100vw;height:100vh;margin:0;padding:0}
