:root{font-family:Inter,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#000;background-color:#fff;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;min-width:320px}#app{padding-top:4px}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}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.godot-connection-status[data-v-0f97b003]{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;font-size:.8rem;font-weight:500;transition:all .3s ease}.connection-icon[data-v-0f97b003]{width:24px;height:24px;display:inline-block}.godot-connection-status.connected[data-v-0f97b003]{background:#e8f5e8;color:#2e7d32}.godot-connection-status.disconnected[data-v-0f97b003]{background:#ffebee;color:#c62828}.godot-connection-status.connecting[data-v-0f97b003],.godot-connection-status.error[data-v-0f97b003]{background:#fff3e0;color:#f57c00}.header-bar[data-v-f5b1343e]{display:flex;align-items:center;justify-content:space-between;box-shadow:0 2px 16px #0000000f;border-bottom:1px solid #ececec;padding:0 32px;height:72px;position:fixed;top:0;left:0;width:100%;z-index:1100;background-color:#fff}.header-bar-left[data-v-f5b1343e],.header-bar-center[data-v-f5b1343e],.header-bar-right[data-v-f5b1343e]{display:flex;align-items:center;gap:16px;margin-right:40px}.header-bar-center[data-v-f5b1343e]{flex:1;justify-content:center}.header-nav[data-v-f5b1343e]{display:flex;align-items:center;gap:.25rem}.nav-link[data-v-f5b1343e]{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .9rem;border-radius:8px;text-decoration:none;font-size:.875rem;font-weight:600;color:#555;transition:background .15s,color .15s}.nav-link .material-icons[data-v-f5b1343e]{font-size:1.1rem;pointer-events:none}.nav-link[data-v-f5b1343e]:hover{background:#f0f1f5;color:#213547}.nav-link.router-link-active[data-v-f5b1343e]{background:#ebebff;color:#646cff}.cs-brand[data-v-f5b1343e],.cs-page-title[data-v-f5b1343e]{font-size:1.4rem;font-weight:700}.cs-brand[data-v-f5b1343e]{cursor:pointer}.cs-logo[data-v-f5b1343e],.cs-user-img[data-v-f5b1343e]{border-radius:50%;border:2px solid #493d55;width:40px;height:40px;object-fit:cover;object-position:center}.cs-coins[data-v-f5b1343e]{display:flex;align-items:center;gap:8px;font-size:1.5rem;font-weight:700;color:#ffb800}.header-bar-separator[data-v-f5b1343e]{width:2px;height:36px;background:#000;margin:0;border-radius:2px}.material-icons[data-v-f5b1343e]{font-size:2rem;pointer-events:none}.header-bar-user-dropdown[data-v-f5b1343e]{display:flex;align-items:center;gap:8px;position:relative}.dropdown-menu[data-v-f5b1343e]{position:absolute;top:100%;right:0;background:#fff;border:1px solid #ececec;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:8px;display:flex;flex-direction:column;gap:8px}.logout-button[data-v-f5b1343e]{background-color:#e57373;color:#fff;border:none;border-radius:4px;padding:8px 16px;cursor:pointer;font-size:1rem}.logout-button[data-v-f5b1343e]:hover{background-color:#ef5350}.change-password-button[data-v-f5b1343e]{background-color:#9575cd;color:#fff;border:none;border-radius:4px;padding:8px 16px;cursor:pointer;font-size:1rem}.change-password-button[data-v-f5b1343e]:hover{background-color:#7e57c2}.notification-wrapper[data-v-f5b1343e]{position:relative;display:inline-block}.notification-badge[data-v-f5b1343e]{position:absolute;top:-8px;right:-8px;background-color:red;color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;box-shadow:0 2px 4px #0003}.reward-overlay[data-v-403b7040]{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:2000}.reward-screen[data-v-403b7040]{background:#fff;border:none;border-radius:8px;padding:2rem;max-width:500px;width:90%;max-height:80vh;overflow-y:auto;color:#000}.reward-header[data-v-403b7040]{text-align:center;margin-bottom:2rem;border-bottom:2px solid #e0e0e0;padding-bottom:1rem}.congratulations[data-v-403b7040]{font-size:1.8rem;margin:0 0 .5rem;font-weight:600;color:#000}.subtitle[data-v-403b7040]{font-size:1rem;margin:0;color:#666}.level-section[data-v-403b7040]{display:flex;align-items:center;gap:1.5rem;margin-bottom:1.5rem;padding:1rem;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:4px}.level-badge[data-v-403b7040]{display:flex;flex-direction:column;align-items:center;background:#a855f7;border:none;border-radius:4px;width:70px;height:70px;justify-content:center;flex-shrink:0}.level-number[data-v-403b7040]{font-size:1.5rem;font-weight:700;color:#fff}.level-label[data-v-403b7040]{font-size:.7rem;font-weight:600;color:#f3e8ff;text-transform:uppercase}.exp-container[data-v-403b7040]{flex:1}.exp-info[data-v-403b7040]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.9rem}.exp-text[data-v-403b7040]{color:#555}.exp-gained[data-v-403b7040]{font-weight:600;color:#a855f7}.exp-bar[data-v-403b7040]{height:8px;background:#e0e0e0;border:1px solid #d0d0d0;border-radius:2px;overflow:hidden}.exp-fill[data-v-403b7040]{height:100%;background:#a855f7;transition:width .5s ease}.credits-section[data-v-403b7040]{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem;background:#fffbf0;border:1px solid #ffe599;border-radius:4px}.credits-earned[data-v-403b7040]{font-size:1.2rem;font-weight:600;color:#ffb800}.achievements-section[data-v-403b7040]{margin-bottom:1.5rem}.achievements-section h3[data-v-403b7040]{margin:0 0 1rem;font-size:1.1rem;font-weight:600;color:#000}.achievements-grid[data-v-403b7040]{display:flex;flex-direction:column;gap:.75rem}.achievement-item[data-v-403b7040]{display:flex;align-items:center;gap:1rem;background:#f5f5f5;border:1px solid #e0e0e0;padding:.75rem;border-radius:4px}.achievement-icon[data-v-403b7040]{font-size:1.3rem;width:40px;height:40px;min-width:40px;display:flex;align-items:center;justify-content:center;background:#a855f7;color:#fff;border:none;border-radius:4px;flex-shrink:0;font-family:Material Icons;font-weight:400;font-style:normal;line-height:1;overflow:hidden;text-align:center;box-sizing:border-box}.achievement-info[data-v-403b7040]{display:flex;flex-direction:column;gap:.25rem}.achievement-name[data-v-403b7040]{font-weight:600;font-size:.95rem;color:#000}.achievement-desc[data-v-403b7040]{font-size:.85rem;color:#555}.no-achievements[data-v-403b7040]{text-align:center;color:#999;padding:1rem;font-style:italic}.actions[data-v-403b7040]{text-align:center;padding-top:1rem;border-top:2px solid #e0e0e0}.continue-btn[data-v-403b7040]{background:#a855f7;color:#fff;border:none;padding:.75rem 2rem;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;min-width:150px}.continue-btn[data-v-403b7040]:hover{background:#9333ea}.godot-block-overlay[data-v-456676c2]{position:fixed;top:var(--header-height, 0px);left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1400;color:#fff}.block-content[data-v-456676c2]{max-width:520px;max-height:calc(100% - 2rem);overflow-y:auto;text-align:center;padding:2rem;background:#2d2d2d;border-radius:16px;box-shadow:0 20px 60px #00000080;margin:1rem}.block-icon[data-v-456676c2]{margin-bottom:1.5rem}.block-icon img[data-v-456676c2]{width:80px;height:80px;filter:grayscale(100%) opacity(.7)}.block-content h2[data-v-456676c2]{margin:0 0 1rem;font-size:2rem;font-weight:600;color:#fff}.block-content>p[data-v-456676c2]{margin:0 0 2rem;font-size:1.1rem;color:#ccc}.connection-info[data-v-456676c2]{background:#ffffff1a;padding:1.5rem;border-radius:8px;margin:2rem 0;text-align:left}.connection-info p[data-v-456676c2]{margin:0 0 1rem;font-weight:600;color:#fff}.connection-info ol[data-v-456676c2]{margin:0;padding-left:1.5rem;color:#ccc}.connection-info li[data-v-456676c2]{margin-bottom:.5rem}.download-link[data-v-456676c2]{color:#9575cd!important;text-decoration:underline;font-weight:600;transition:all .3s ease;background:none;border:none;padding:0;cursor:pointer;font-size:inherit;font-family:inherit}.download-loading[data-v-456676c2]{color:#888;font-style:italic}.download-error[data-v-456676c2]{color:#ef5350;font-style:italic}.download-error-detail[data-v-456676c2]{color:#e57373;font-size:.75rem;font-style:italic}.version-badge[data-v-456676c2]{display:inline-block;background:#9575cd33;color:#b39ddb;font-size:.75rem;padding:2px 8px;border-radius:4px;margin-left:6px;font-weight:500;vertical-align:middle}.version-selector[data-v-456676c2]{margin-top:1.25rem;border-top:1px solid rgba(255,255,255,.1);padding-top:1rem}.version-selector-header[data-v-456676c2]{display:flex;align-items:center;gap:8px;margin-bottom:.75rem;font-size:.85rem;color:#aaa;font-weight:600}.dev-badge[data-v-456676c2]{background:#ff9800;color:#000;font-size:.65rem;font-weight:800;padding:2px 6px;border-radius:3px;letter-spacing:.5px}.version-list[data-v-456676c2]{display:flex;flex-wrap:wrap;gap:6px;max-height:180px;overflow-y:auto}.version-item[data-v-456676c2]{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:8px 14px;cursor:pointer;transition:all .15s ease;color:#ccc;font-size:.8rem;text-align:center;min-width:0;flex:0 0 auto}.version-item[data-v-456676c2]:hover{background:#ffffff1a;border-color:#9575cd66}.version-item.active[data-v-456676c2]{background:#9575cd26;border-color:#9575cd;color:#fff}.version-item-label[data-v-456676c2]{font-weight:600;white-space:nowrap}.version-item-file[data-v-456676c2]{display:none}.version-item.variant-production .version-item-label[data-v-456676c2]:before{content:"●";color:#4caf50;margin-right:6px;font-size:.6rem;vertical-align:middle}.version-item.variant-development .version-item-label[data-v-456676c2]:before{content:"●";color:#ff9800;margin-right:6px;font-size:.6rem;vertical-align:middle}.version-item.variant-pull-request .version-item-label[data-v-456676c2]:before{content:"●";color:#42a5f5;margin-right:6px;font-size:.6rem;vertical-align:middle}.retry-button[data-v-456676c2]{background:#9575cd;color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:48px;min-height:48px;box-shadow:0 2px 8px #9575cd14;margin-top:.5rem;display:inline-flex;align-items:center;justify-content:center}.retry-button[data-v-456676c2]:hover:not(:disabled){background:#7e57c2;transform:translateY(-1px)}.retry-button[data-v-456676c2]:disabled{opacity:.6;cursor:not-allowed;transform:none}.content[data-v-9b867f22]{margin-top:72px}.fullscreen[data-v-9b867f22]{margin-top:0}.reset-profile-btn[data-v-9b867f22]{position:fixed;bottom:20px;right:20px;padding:10px 16px;background:#ff5252;border:none;color:#fff;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;z-index:9999}.reset-profile-btn[data-v-9b867f22]:hover:not(:disabled){background:#ff1744}.reset-profile-btn[data-v-9b867f22]:disabled{opacity:.5;cursor:not-allowed}.page-fade-enter-active[data-v-9b867f22],.page-fade-leave-active[data-v-9b867f22]{transition:opacity .2s ease,transform .2s ease}.page-fade-enter-from[data-v-9b867f22]{opacity:0;transform:translate(12px)}.page-fade-leave-to[data-v-9b867f22]{opacity:0;transform:translate(-12px)}form[data-v-2f8ea8ed]{display:flex;justify-content:center;align-items:center;height:80vh;margin:0}.row[data-v-2f8ea8ed]{display:flex;flex-direction:column;align-items:center}.col-6[data-v-2f8ea8ed]{width:100%;max-width:400px;text-align:center}.inputField[data-v-2f8ea8ed]{width:100%;padding:12px;border:1px solid #eaeaea;border-radius:4px;margin-bottom:16px}.button[data-v-2f8ea8ed]{width:100%;padding:12px;border:none;border-radius:4px;background-color:#9575cd;color:#fff;font-size:1rem;cursor:pointer;margin-top:8px}.button[data-v-2f8ea8ed]:disabled{background-color:#ccc;cursor:not-allowed}.quest[data-v-1bad4418]{display:flex;align-items:center;gap:10px}.quest-icon[data-v-1bad4418]{font-size:2rem}.quest-icon.blue[data-v-1bad4418]{color:#3498db}.quest-icon.yellow[data-v-1bad4418]{color:#ffb800}.quest-icon.gold[data-v-1bad4418]{color:#ffd81c}.quest-details[data-v-1bad4418]{flex:1;font-size:.9rem}.quest-title[data-v-1bad4418]{margin:0 0 2px;font-weight:500}.quest-description[data-v-1bad4418]{margin:0 0 6px;font-size:.75rem;color:#666;line-height:1.3}[data-v-1242d43e]{font-family:Inter,sans-serif}.dashboard[data-v-1242d43e]{width:100%;min-height:100%;display:flex;justify-content:flex-start;align-items:flex-start;position:relative}.content-area[data-v-1242d43e]{width:100%;max-width:calc(100vw - 380px);min-height:calc(100vh - 76px);position:relative;padding:40px 20px 40px 40px}.loading-container[data-v-1242d43e]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;z-index:100}.loading-spinner[data-v-1242d43e]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #9575cd;border-radius:50%;animation:spin-1242d43e 1s linear infinite;margin:0 auto 20px}@keyframes spin-1242d43e{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.coursebook-library[data-v-1242d43e]{max-width:1400px;margin:0 auto}.difficulty-divider[data-v-1242d43e]{width:100%;text-align:center;margin:32px 0 24px;position:relative;font-size:1rem;font-weight:500;text-transform:lowercase}.difficulty-divider[data-v-1242d43e]:first-child{margin-top:0}.difficulty-divider[data-v-1242d43e]:before{content:"";position:absolute;left:0;top:50%;width:100%;height:1px;background:#ddd;z-index:0}.difficulty-divider span[data-v-1242d43e]{position:relative;z-index:1;padding:4px 16px;border-radius:16px;font-size:.9rem;background:#ddd;color:#555}.coursebook-row[data-v-1242d43e]{display:flex;flex-wrap:wrap;gap:32px;margin-bottom:16px}.coursebook-card[data-v-1242d43e]{cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;text-align:center;width:200px;flex-shrink:0}.coursebook-card[data-v-1242d43e]:hover:not(.disabled){transform:translateY(-8px)}.coursebook-card.disabled[data-v-1242d43e]{opacity:.4;cursor:not-allowed;filter:grayscale(100%)}.coursebook-card.disabled[data-v-1242d43e]:hover{transform:none}.coursebook-card.completed[data-v-1242d43e]{cursor:pointer}.coursebook-card.completed[data-v-1242d43e]:hover{transform:translateY(-8px)}.coursebook-card.completed .coursebook-book-image[data-v-1242d43e]{opacity:.4;filter:saturate(1) brightness(.95)}.coursebook-card.completed:hover .coursebook-book-image[data-v-1242d43e]{opacity:.4;filter:saturate(1) brightness(.95)!important}.coursebook-completed-checkmark[data-v-1242d43e]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.coursebook-completed-checkmark .checkmark[data-v-1242d43e]{color:#fff;font-size:4rem;font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.5);-webkit-text-stroke:3px white;paint-order:stroke fill}.coursebook-card.completed .coursebook-info h3[data-v-1242d43e],.coursebook-card.completed .coursebook-description[data-v-1242d43e]{opacity:.8}.coursebook-image-container[data-v-1242d43e]{width:100%;aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;margin-bottom:12px;position:relative}.coursebook-book-image[data-v-1242d43e]{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.15));transition:filter .3s ease}.coursebook-card:hover:not(.disabled) .coursebook-book-image[data-v-1242d43e]{filter:drop-shadow(0 8px 16px rgba(0,0,0,.25))}.coursebook-info[data-v-1242d43e]{width:100%;display:flex;flex-direction:column;gap:8px}.coursebook-info h3[data-v-1242d43e]{margin:0;font-size:1.1rem;font-weight:600;color:#333}.coursebook-description[data-v-1242d43e]{font-size:.85rem;color:#666;line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.coursebook-meta[data-v-1242d43e]{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap}.difficulty-badge[data-v-1242d43e]{padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.difficulty-badge.beginner[data-v-1242d43e]{background:#e8f5e9;color:#2e7d32}.difficulty-badge.intermediate[data-v-1242d43e]{background:#fff3e0;color:#e65100}.difficulty-badge.advanced[data-v-1242d43e]{background:#fce4ec;color:#c2185b}.level-requirement[data-v-1242d43e]{padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;background:#f5f5f5;color:#666}.dashboard[data-v-1242d43e]{width:100%;min-height:100%;display:flex;justify-content:flex-start;align-items:flex-start;position:relative;overflow:hidden}.roadmap-dropdown-container[data-v-1242d43e]{max-width:1400px;margin:0 auto 30px;text-align:center}.roadmap-dropdown[data-v-1242d43e]{padding:10px 36px 10px 20px;border:2px solid #e0e0e0;background:#fff;border-radius:25px;font-size:.9rem;font-weight:500;color:#333;cursor:pointer;min-width:180px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;transition:all .3s ease;display:inline-block}.roadmap-dropdown[data-v-1242d43e]:hover{border-color:#9575cd}.roadmap-dropdown[data-v-1242d43e]:focus{outline:none;border-color:#e0e0e0}.floating-cards-container[data-v-1242d43e]{position:fixed;top:90px;left:calc(100vw - 310px);display:flex;flex-direction:column;gap:20px;align-items:flex-start;width:280px;z-index:1000}.floating-card[data-v-1242d43e]{width:250px;background:#fff;padding:20px 20px 16px;border-radius:10px;box-shadow:0 4px 16px #00000026}.user-avatar[data-v-1242d43e]{display:block;width:105px;height:105px;border-radius:50%;border:3px solid #2d3844;margin-left:auto;margin-right:auto;object-fit:fill;object-position:center}.progress-container[data-v-1242d43e]{width:100%;background:#e0e0e0;border-radius:5px;overflow:hidden;height:8px}.progress-bar[data-v-1242d43e]{height:8px;background:#9575cd;border-radius:5px}.badges[data-v-1242d43e]{text-align:left;min-height:40px;padding:0;margin:0}.achievement-icons[data-v-1242d43e]{display:flex;align-items:center;justify-content:flex-start;gap:4px;padding:0;margin:0}.badge-icon[data-v-1242d43e]{display:inline-block;width:40px;height:40px;margin:0;font-family:Material Icons;font-weight:400;font-style:normal;font-size:32px!important;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;position:relative;cursor:pointer;transition:transform .2s ease;text-align:center;vertical-align:middle}.badge-icon.achievement[data-v-1242d43e]:nth-child(1){color:gold}.badge-icon.achievement[data-v-1242d43e]:nth-child(2){color:#ff6b6b}.badge-icon.achievement[data-v-1242d43e]:nth-child(3){color:#4ecdc4}.badge-icon.achievement[data-v-1242d43e]:nth-child(4){color:#95e1d3}.badge-icon.achievement[data-v-1242d43e]:nth-child(5){color:#f38181}.badge-icon[data-tooltip][data-v-1242d43e]:hover:after{content:attr(data-tooltip);position:absolute;bottom:120%;left:50%;transform:translate(-50%);background:#000000e6;color:#fff;padding:8px 12px;border-radius:6px;font-size:.75rem;font-family:Inter,sans-serif;white-space:nowrap;z-index:1000;box-shadow:0 4px 12px #0000004d;animation:tooltipFadeIn-1242d43e .2s ease-out}@keyframes tooltipFadeIn-1242d43e{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.badge-icon.placeholder[data-v-1242d43e]{color:#ccc}.loading-achievements[data-v-1242d43e]{font-size:.8em;color:#666;font-style:italic}.no-achievements[data-v-1242d43e]{opacity:.5}.card-header[data-v-1242d43e]{display:flex;justify-content:space-between;align-items:center}.card-header h4[data-v-1242d43e]{text-decoration:underline;color:#3498db;cursor:pointer;font-size:.9em}.user-info h3[data-v-1242d43e]{text-align:center;font-size:medium}.user-info p[data-v-1242d43e]{padding-top:0;text-align:center;font-size:2.5rem}.no-quests[data-v-1242d43e]{text-align:center;color:#999;font-size:.85rem;font-style:italic;margin-top:8px}.quests-list[data-v-1242d43e]{display:flex;flex-direction:column;gap:12px}.floating-card h3[data-v-1242d43e]{font-size:.9rem}.floating-card h4[data-v-1242d43e],.floating-card p[data-v-1242d43e],.floating-card span[data-v-1242d43e]{font-size:.8rem}.coursebook-page[data-v-e17c3f9a]{width:100vw;height:calc(100vh - 76px);display:flex;justify-content:center;align-items:center;overflow:hidden;position:relative}.back-btn[data-v-e17c3f9a]{position:absolute;top:20px;left:20px;display:flex;align-items:center;gap:.4rem;padding:.6rem 1.2rem;background:#fff;color:#555;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease;z-index:1450;font-family:Inter,sans-serif}.back-btn[data-v-e17c3f9a]:hover{border-color:#9575cd;color:#9575cd;background:#f5f0ff}.back-btn .material-icons[data-v-e17c3f9a]{font-size:1.1rem}.coursebook-container[data-v-e17c3f9a]{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:40px;width:100%;height:100%}.chapter-selector[data-v-e17c3f9a]{display:flex;flex-direction:column;gap:15px;padding:20px;background:#ffffffe6;border-radius:10px;box-shadow:0 2px 8px #0000001a;max-height:80vh;overflow-y:auto}.chapter-selector button[data-v-e17c3f9a]{padding:12px 24px;border:2px solid #ddd;background:#fff;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .3s ease;white-space:nowrap;min-width:150px}.chapter-selector button[data-v-e17c3f9a]:hover{border-color:#9575cd;background:#f5f5f5}.chapter-selector button.active[data-v-e17c3f9a]{border-color:#9575cd;background:#9575cd;color:#fff}.book-backdrop[data-v-e17c3f9a]{position:relative;display:flex;justify-content:center;align-items:center}.book-image[data-v-e17c3f9a]{max-width:80vw;max-height:80vh;width:auto;height:auto}.chip-buttons[data-v-e17c3f9a]{position:absolute;display:grid;grid-template-columns:repeat(3,1fr);gap:1vw 3.5vw;top:50%;left:50%;transform:translate(-50%,-50%);max-width:90%}.chip-button[data-v-e17c3f9a]{background:none;border:none;cursor:default;display:flex;flex-direction:column;align-items:center;gap:.3vw;padding:.7vw;border-radius:15px;width:clamp(60px,8.5vw,110px)}.chip-container[data-v-e17c3f9a]{position:relative;display:inline-block;cursor:pointer;transition:transform .3s ease}.chip-container[data-v-e17c3f9a]:hover{transform:scale(1.1)}.chip-container[data-v-e17c3f9a]:active{transform:scale(.95)}.chip-container.completed[data-v-e17c3f9a]{cursor:not-allowed;transition:none}.chip-container.completed[data-v-e17c3f9a]:hover,.chip-container.completed[data-v-e17c3f9a]:active{transform:scale(1)}.chip-container.completed .chip-image[data-v-e17c3f9a],.chip-container.completed .chip-icon[data-v-e17c3f9a]{opacity:.55;filter:saturate(1) brightness(.95)}.chip-image[data-v-e17c3f9a]{width:7vw;height:auto;aspect-ratio:1 / 1;object-fit:contain;margin:0 auto}.chip-icon[data-v-e17c3f9a]{position:absolute;top:50%;left:50%;transform:translate(-79%,-65%);width:2.8vw;height:auto;object-fit:contain;pointer-events:none}.chip-icon-dumbbell[data-v-e17c3f9a]{width:3.4vw;transform:translate(-75%,-65%)}.chip-label[data-v-e17c3f9a]{color:#fff;font-size:1vw;font-weight:600;text-shadow:0 2px 4px rgba(0,0,0,.5);background:#0000004d;padding:.3vw .8vw;border-radius:20px;text-align:center;white-space:nowrap;max-width:14vw;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;display:inline-block}.chip-label.faded[data-v-e17c3f9a]{opacity:.5}.completed-checkmark[data-v-e17c3f9a]{position:absolute;top:50%;left:50%;transform:translate(-90%,-60%);pointer-events:none}.checkmark[data-v-e17c3f9a]{color:#fff;font-size:3vw;font-weight:900;text-shadow:0 2px 8px rgba(0,0,0,.5);-webkit-text-stroke:.15vw white;paint-order:stroke fill}@media (max-width: 768px){.book-image[data-v-e17c3f9a]{max-width:90vw;max-height:70vh}.chip-buttons[data-v-e17c3f9a]{gap:30px}.chip-image[data-v-e17c3f9a]{width:80px;height:auto;aspect-ratio:1 / 1;object-fit:contain}.chip-icon[data-v-e17c3f9a]{width:32px;height:auto;max-width:32px;max-height:32px;object-fit:contain}.chip-icon-dumbbell[data-v-e17c3f9a]{width:37px;max-width:37px}.coursebook-title[data-v-e17c3f9a]{font-size:2rem}}@media (max-width: 480px){.chip-buttons[data-v-e17c3f9a]{flex-direction:column;gap:20px}.chip-image[data-v-e17c3f9a]{width:70px;height:auto;aspect-ratio:1 / 1;object-fit:contain}.chip-icon[data-v-e17c3f9a]{width:28px;height:auto;max-width:28px;max-height:28px;object-fit:contain}.chip-icon-dumbbell[data-v-e17c3f9a]{width:32px;max-width:32px}.coursebook-title[data-v-e17c3f9a]{font-size:1.5rem}}.lesson-progress[data-v-b77eb6d2]{margin-right:1.5rem;font-weight:700;font-size:1.1rem}.module-page[data-v-b77eb6d2]{width:100vw;height:100vh;background:#f5f5f5;color:#333;display:flex;flex-direction:column;overflow:hidden}.module-nav[data-v-b77eb6d2]{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:1rem 2rem;background:#fff;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000001a;z-index:100;flex-shrink:0}.nav-btn[data-v-b77eb6d2]{justify-self:start}.left-section[data-v-b77eb6d2]{justify-self:start;display:flex;align-items:center;gap:.5rem}.back-to-coursebook-btn[data-v-b77eb6d2]{background:#fff;color:#555;border:2px solid #e0e0e0}.back-to-coursebook-btn[data-v-b77eb6d2]:hover{background:#f5f0ff;border-color:#9575cd;color:#9575cd}.progress-boxes[data-v-b77eb6d2]{justify-self:center}.right-section[data-v-b77eb6d2]{justify-self:end;display:flex;align-items:center;gap:1rem}.nav-btn[data-v-b77eb6d2]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#9575cd;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;font-size:.9rem;font-weight:500}.nav-btn[data-v-b77eb6d2]:hover:not(:disabled){background:#7e57c2}.nav-btn[data-v-b77eb6d2]:disabled{opacity:.5;cursor:not-allowed;background:#ccc}.nav-btn .material-icons[data-v-b77eb6d2]{font-size:1.2rem}.progress-boxes[data-v-b77eb6d2]{display:flex;gap:.5rem;align-items:center}.progress-box[data-v-b77eb6d2]{min-width:80px;height:50px;padding:0 12px;border-radius:10px;background:#fff;border:2px solid #000;transition:all .3s ease;box-sizing:border-box;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;color:#000}.progress-box.active[data-v-b77eb6d2]{background:#9575cd;border-color:#9575cd;color:#fff}.progress-box.completed[data-v-b77eb6d2]{background:#d1c4e9;border-color:#d1c4e9;color:#333}.loading[data-v-b77eb6d2]{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:1rem;color:#666}.loading-spinner[data-v-b77eb6d2]{width:40px;height:40px;border:4px solid #e0e0e0;border-top:4px solid #9575cd;border-radius:50%;animation:spin-b77eb6d2 1s linear infinite}@keyframes spin-b77eb6d2{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.no-items[data-v-b77eb6d2]{display:flex;align-items:center;justify-content:center;flex:1;font-size:1.2rem;color:#666}.theater-container[data-v-b77eb6d2]{flex:1;display:flex;flex-direction:column;height:100%;min-height:0}.content-header[data-v-b77eb6d2]{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:#f8f9fa;border-bottom:1px solid #e0e0e0}.content-header h2[data-v-b77eb6d2]{margin:0;font-size:1.5rem;font-weight:600}.item-counter[data-v-b77eb6d2]{color:#999;font-size:.9rem}.content-area[data-v-b77eb6d2]{flex:1;display:flex;align-items:center;justify-content:center;background:#000;min-height:0;height:calc(100% - 4rem);width:calc(100% - 4rem);margin:2rem;border-radius:8px}.video-player[data-v-b77eb6d2]{width:100%;height:100%;max-width:none;max-height:none;display:flex;align-items:center;justify-content:center}.video-player iframe[data-v-b77eb6d2]{width:100%;height:calc(100vh - 160px);border:none}.practice-content[data-v-b77eb6d2]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#333;background:#f5f5f5}.practice-header[data-v-b77eb6d2]{text-align:center;max-width:800px;padding:2rem}.practice-header h1[data-v-b77eb6d2]{font-size:3rem;font-weight:600;margin:0;color:#333}.practice-header p[data-v-b77eb6d2]{font-size:1.2rem;margin:1rem 0 0;color:#666}.waiting-message[data-v-b77eb6d2]{font-style:italic;color:#888;font-size:1.1rem!important}.practice-status[data-v-b77eb6d2]{margin-top:2rem}.loading-container[data-v-b77eb6d2]{display:flex;flex-direction:column;align-items:center;gap:1rem}.practice-spinner[data-v-b77eb6d2]{width:32px;height:32px;border:3px solid #e0e0e0;border-top:3px solid #9575cd;border-radius:50%;animation:spin-b77eb6d2 1s linear infinite}.loading-text[data-v-b77eb6d2]{font-size:1.1rem;color:#666;margin:0;text-align:center}.completed-container[data-v-b77eb6d2]{display:flex;flex-direction:column;align-items:center;gap:1rem}.checkmark[data-v-b77eb6d2]{width:64px;height:64px;border-radius:50%;background:#4caf50;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;font-weight:700;animation:checkmarkPop-b77eb6d2 .6s ease-out}.completed-text[data-v-b77eb6d2]{font-size:1.1rem;color:#4caf50;margin:0;text-align:center;font-weight:600}@keyframes checkmarkPop-b77eb6d2{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.content-placeholder[data-v-b77eb6d2]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem;color:#666;text-align:center}.placeholder-icon .material-icons[data-v-b77eb6d2]{font-size:4rem;color:#ccc}.content-placeholder h3[data-v-b77eb6d2]{margin:0;font-size:1.5rem;color:#333}.content-description[data-v-b77eb6d2]{padding:1rem 2rem;background:#0009;border-top:1px solid #333}.content-description p[data-v-b77eb6d2]{margin:0;line-height:1.6;color:#ccc}@media (max-width: 768px){.module-nav[data-v-b77eb6d2]{padding:.75rem 1rem;flex-wrap:wrap;gap:1rem}.nav-btn[data-v-b77eb6d2]{padding:.5rem 1rem;font-size:.8rem}.content-area[data-v-b77eb6d2]{padding:1rem}.video-player[data-v-b77eb6d2]{max-height:calc(100vh - 250px)}.content-header[data-v-b77eb6d2]{padding:.75rem 1rem;flex-direction:column;gap:.5rem;align-items:flex-start}.content-header h2[data-v-b77eb6d2]{font-size:1.2rem}.content-description[data-v-b77eb6d2]{padding:.75rem 1rem}}@media (max-width: 480px){.back-btn[data-v-b77eb6d2]{position:absolute;top:20px;left:20px;display:flex;align-items:center;gap:.4rem;padding:.6rem 1.2rem;background:#fff;color:#555;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease;z-index:2;font-family:Inter,sans-serif}.back-btn[data-v-b77eb6d2]:hover{border-color:#9575cd;color:#9575cd;background:#f5f0ff}.back-btn .material-icons[data-v-b77eb6d2]{font-size:1.1rem}}button[data-v-6cb3c50a]{padding:8px 16px;background:#4a4a4a;color:#fff;border:none;border-radius:4px;cursor:pointer}button[data-v-6cb3c50a]:hover{background:#5a5a5a}button[data-v-6cb3c50a]:disabled{opacity:.5;cursor:not-allowed}.page-container[data-v-08918c86]{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 72px);margin:0;padding:20px;box-sizing:border-box}.form-widget[data-v-08918c86]{width:100%;max-width:400px;text-align:center;padding:2rem}.header[data-v-08918c86]{text-align:center;margin-bottom:.5rem;font-size:2rem;font-weight:700}.description[data-v-08918c86]{text-align:center;color:#666;margin-bottom:2rem;font-size:1rem}.inputField[data-v-08918c86]{width:100%;padding:12px;border:1px solid #eaeaea;border-radius:4px;margin-bottom:16px;font-size:1rem;box-sizing:border-box}.inputField[data-v-08918c86]:focus{outline:none;border-color:#9575cd}.error-message[data-v-08918c86]{color:#e57373;margin:10px 0;font-size:.9rem;text-align:center}.button[data-v-08918c86]{width:100%;padding:12px;border:none;border-radius:4px;background-color:#9575cd;color:#fff;font-size:1rem;cursor:pointer;margin-top:8px;transition:background-color .2s ease}.button[data-v-08918c86]:hover:not(:disabled){background-color:#7e57c2}.button.secondary[data-v-08918c86]{background-color:#757575;margin-top:8px}.button.secondary[data-v-08918c86]:hover:not(:disabled){background-color:#616161}.button[data-v-08918c86]:disabled{background-color:#ccc;cursor:not-allowed}.manage-layout[data-v-1b1b66b8]{min-height:100vh;background:#f5f6fa}.manage-content[data-v-1b1b66b8]{max-width:1100px;margin:0 auto;padding:2rem 1.5rem;padding-top:88px;display:flex;flex-direction:column;gap:1.5rem}.manage-header[data-v-1b1b66b8]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:2rem;gap:1rem;flex-wrap:wrap}.manage-header h1[data-v-1b1b66b8]{margin:0 0 .25rem;font-size:1.75rem;color:#213547}.manage-subtitle[data-v-1b1b66b8]{margin:0;color:#666;font-size:.9rem}.manage-header-actions[data-v-1b1b66b8]{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.coursebook-table-wrapper[data-v-1b1b66b8]{background:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014;overflow:hidden}.manage-table[data-v-1b1b66b8]{width:100%;border-collapse:collapse;font-size:.9rem}.manage-table th[data-v-1b1b66b8]{text-align:left;padding:.75rem 1rem;background:#f0f1f5;font-weight:600;color:#555;border-bottom:1px solid #e0e0e0}.manage-table td[data-v-1b1b66b8]{padding:.75rem 1rem;border-bottom:1px solid #f0f0f0;vertical-align:middle}.manage-table tr:last-child td[data-v-1b1b66b8]{border-bottom:none}.manage-table tr:hover td[data-v-1b1b66b8]{background:#fafafa}.cb-title[data-v-1b1b66b8]{font-weight:600;color:#213547}.cb-owner[data-v-1b1b66b8]{color:#666;font-size:.85rem}.actions-cell[data-v-1b1b66b8]{display:flex;gap:.5rem;align-items:center}.btn[data-v-1b1b66b8]{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem 1rem;border-radius:7px;border:none;font-size:.875rem;font-weight:500;cursor:pointer;text-decoration:none;transition:background .15s,opacity .15s;font-family:inherit}.btn .material-icons[data-v-1b1b66b8]{font-size:1rem}.btn-primary[data-v-1b1b66b8]{background:#646cff;color:#fff}.btn-primary[data-v-1b1b66b8]:hover{background:#535bf2}.btn-secondary[data-v-1b1b66b8]{background:#e8e9f5;color:#213547}.btn-secondary[data-v-1b1b66b8]:hover{background:#d5d7ee}.btn-ghost[data-v-1b1b66b8]{background:transparent;color:#666;border:1px solid #ddd}.btn-ghost[data-v-1b1b66b8]:hover{background:#f5f5f5}.btn-danger[data-v-1b1b66b8]{background:transparent;color:#e53935;border:1px solid #fcc}.btn-danger[data-v-1b1b66b8]:hover{background:#fff0f0}.btn-sm[data-v-1b1b66b8]{padding:.3rem .65rem;font-size:.8rem}.difficulty-badge[data-v-1b1b66b8]{display:inline-block;padding:.15rem .55rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:capitalize;background:#eee;color:#555}.difficulty-badge.beginner[data-v-1b1b66b8]{background:#e8f5e9;color:#2e7d32}.difficulty-badge.intermediate[data-v-1b1b66b8]{background:#fff3e0;color:#e65100}.difficulty-badge.advanced[data-v-1b1b66b8]{background:#fce4ec;color:#c62828}.loading-state[data-v-1b1b66b8],.error-state[data-v-1b1b66b8],.empty-state[data-v-1b1b66b8]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem;color:#666;background:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014}.empty-state .material-icons[data-v-1b1b66b8],.error-state .material-icons[data-v-1b1b66b8]{font-size:3rem;color:#bbb}.error-state[data-v-1b1b66b8]{color:#c62828}.error-state .material-icons[data-v-1b1b66b8]{color:#e53935}.loading-spinner[data-v-1b1b66b8]{width:36px;height:36px;border:3px solid #e0e0e0;border-top-color:#646cff;border-radius:50%;animation:spin-1b1b66b8 .7s linear infinite}@keyframes spin-1b1b66b8{to{transform:rotate(360deg)}}.tabs[data-v-1b1b66b8]{display:flex;gap:.5rem;background:#fff;padding:.5rem;border-radius:10px;box-shadow:0 1px 4px #00000014;width:fit-content}.tab[data-v-1b1b66b8]{display:flex;align-items:center;gap:.4rem;padding:.5rem 1.25rem;border:none;border-radius:7px;background:transparent;font-size:.9rem;font-weight:500;cursor:pointer;color:#666;font-family:inherit;transition:background .15s,color .15s}.tab[data-v-1b1b66b8]:hover{background:#f0f0f0;color:#333}.tab.active[data-v-1b1b66b8]{background:#646cff;color:#fff}.tab .material-icons[data-v-1b1b66b8]{font-size:1rem}.panel[data-v-1b1b66b8]{background:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014;overflow:hidden}.panel-header[data-v-1b1b66b8]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #f0f0f0;flex-wrap:wrap;gap:.75rem}.panel-header h2[data-v-1b1b66b8]{margin:0;font-size:1rem;color:#213547;display:flex;align-items:center;gap:.4rem}.panel-header h2 .material-icons[data-v-1b1b66b8]{font-size:1.1rem;color:#646cff}.table-wrapper[data-v-1b1b66b8]{overflow-x:auto}.search-input-wrap[data-v-1b1b66b8]{position:relative;display:flex;align-items:center}.search-icon[data-v-1b1b66b8]{position:absolute;left:.6rem;font-size:1rem;color:#aaa;pointer-events:none}.search-input[data-v-1b1b66b8]{padding:.4rem .75rem .4rem 2rem;border:1px solid #dde;border-radius:7px;font-size:.875rem;font-family:inherit;outline:none;width:200px}.search-input[data-v-1b1b66b8]:focus{border-color:#646cff}.empty-hint[data-v-1b1b66b8]{padding:1.5rem 1.25rem;color:#888;font-size:.875rem}.loading-state-inline[data-v-1b1b66b8]{display:flex;justify-content:center;padding:2.5rem}.user-name-cell[data-v-1b1b66b8]{display:flex;flex-direction:column;gap:.1rem}.user-name[data-v-1b1b66b8]{font-weight:600;color:#213547;font-size:.9rem}.user-id[data-v-1b1b66b8]{font-size:.75rem;color:#aaa;font-family:monospace}.role-select[data-v-1b1b66b8]{padding:.25rem .5rem;border:1px solid #dde;border-radius:6px;font-size:.8rem;font-family:inherit;cursor:pointer}.role-select.admin[data-v-1b1b66b8]{background:#fce4ec;color:#c62828;border-color:#f8bbd0}.role-select.teacher[data-v-1b1b66b8]{background:#e8f5e9;color:#2e7d32;border-color:#c8e6c9}.role-select.moderator[data-v-1b1b66b8]{background:#fff3e0;color:#e65100;border-color:#ffe0b2}.save-success-sm[data-v-1b1b66b8]{display:inline-flex;align-items:center;gap:.2rem;color:#2e7d32;font-size:.8rem}.save-success-sm .material-icons[data-v-1b1b66b8]{font-size:.95rem}.manage-layout[data-v-8bf8ae76]{min-height:100vh;background:#f5f6fa}.manage-content[data-v-8bf8ae76]{max-width:720px;margin:0 auto;padding:2rem 1.5rem;padding-top:88px}.back-link[data-v-8bf8ae76]{display:inline-flex;align-items:center;gap:.3rem;font-size:.85rem;color:#666;text-decoration:none;margin-bottom:.5rem}.back-link[data-v-8bf8ae76]:hover{color:#646cff}.back-link .material-icons[data-v-8bf8ae76]{font-size:1rem}.manage-header h1[data-v-8bf8ae76]{margin:0;font-size:1.6rem;color:#213547}.form-card[data-v-8bf8ae76]{background:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014;padding:2rem;margin-top:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.form-group[data-v-8bf8ae76]{display:flex;flex-direction:column;gap:.4rem;flex:1}.form-row[data-v-8bf8ae76]{display:flex;gap:1.25rem;flex-wrap:wrap}.form-group label[data-v-8bf8ae76]{font-size:.85rem;font-weight:600;color:#444}.required[data-v-8bf8ae76]{color:#e53935}.form-group input[data-v-8bf8ae76],.form-group select[data-v-8bf8ae76],.form-group textarea[data-v-8bf8ae76]{padding:.55rem .8rem;border:1px solid #ddd;border-radius:7px;font-size:.9rem;font-family:inherit;color:#213547;background:#fafafa;transition:border-color .15s}.form-group input[data-v-8bf8ae76]:focus,.form-group select[data-v-8bf8ae76]:focus,.form-group textarea[data-v-8bf8ae76]:focus{outline:none;border-color:#646cff;background:#fff}.form-group textarea[data-v-8bf8ae76]{resize:vertical}.form-error[data-v-8bf8ae76]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#fff0f0;border:1px solid #fcc;border-radius:7px;color:#c62828;font-size:.875rem}.form-error .material-icons[data-v-8bf8ae76]{font-size:1.1rem}.form-actions[data-v-8bf8ae76]{display:flex;justify-content:flex-end;gap:.75rem;padding-top:.5rem}.btn[data-v-8bf8ae76]{display:inline-flex;align-items:center;gap:.35rem;padding:.55rem 1.25rem;border-radius:7px;border:none;font-size:.9rem;font-weight:500;cursor:pointer;text-decoration:none;transition:background .15s;font-family:inherit}.btn[data-v-8bf8ae76]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-8bf8ae76]{background:#646cff;color:#fff}.btn-primary[data-v-8bf8ae76]:hover:not(:disabled){background:#535bf2}.btn-ghost[data-v-8bf8ae76]{background:transparent;color:#666;border:1px solid #ddd}.btn-ghost[data-v-8bf8ae76]:hover{background:#f5f5f5}.loading-state[data-v-8bf8ae76]{display:flex;justify-content:center;padding:4rem}.loading-spinner[data-v-8bf8ae76]{width:36px;height:36px;border:3px solid #e0e0e0;border-top-color:#646cff;border-radius:50%;animation:spin-8bf8ae76 .7s linear infinite}.loading-spinner-sm[data-v-8bf8ae76]{width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin-8bf8ae76 .7s linear infinite}@keyframes spin-8bf8ae76{to{transform:rotate(360deg)}}.manage-layout[data-v-abf2c700]{min-height:100vh;background:#f5f6fa}.manage-content[data-v-abf2c700]{max-width:900px;margin:0 auto;padding:2rem 1.5rem;padding-top:88px;display:flex;flex-direction:column;gap:1.5rem}.back-link[data-v-abf2c700]{display:inline-flex;align-items:center;gap:.3rem;font-size:.85rem;color:#666;text-decoration:none;margin-bottom:.35rem}.back-link[data-v-abf2c700]:hover{color:#646cff}.back-link .material-icons[data-v-abf2c700]{font-size:1rem}.manage-header[data-v-abf2c700]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.manage-header h1[data-v-abf2c700]{margin:0;font-size:1.6rem;color:#213547}.manage-header-actions[data-v-abf2c700]{display:flex;gap:.75rem}.panel[data-v-abf2c700]{background:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014;overflow:hidden}.panel-header[data-v-abf2c700]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #f0f0f0}.panel-header h2[data-v-abf2c700]{margin:0;font-size:1rem;color:#213547;display:flex;align-items:center;gap:.4rem}.panel-header h2 .material-icons[data-v-abf2c700]{font-size:1.1rem;color:#646cff}.reward-form[data-v-abf2c700]{display:flex;align-items:flex-end;gap:1rem;padding:1rem 1.25rem;flex-wrap:wrap}.form-group[data-v-abf2c700]{display:flex;flex-direction:column;gap:.3rem}.form-group label[data-v-abf2c700]{font-size:.8rem;font-weight:600;color:#555}.form-group input[data-v-abf2c700]{padding:.45rem .75rem;border:1px solid #ddd;border-radius:7px;font-size:.9rem;font-family:inherit;width:100px;background:#fafafa}.form-group input[data-v-abf2c700]:focus{outline:none;border-color:#646cff;background:#fff}.save-success[data-v-abf2c700]{display:flex;align-items:center;gap:.3rem;color:#2e7d32;font-size:.85rem;padding:0 1.25rem .75rem;margin:0}.save-success .material-icons[data-v-abf2c700]{font-size:1rem}.empty-hint[data-v-abf2c700]{padding:1.5rem 1.25rem;color:#888;font-size:.9rem}.chapter-list[data-v-abf2c700]{display:flex;flex-direction:column}.chapter-row[data-v-abf2c700]{border-bottom:1px solid #f0f0f0;transition:opacity .15s,border-color .15s,background .15s}.chapter-row.chapter-is-dragging[data-v-abf2c700]{opacity:.35}.chapter-row.chapter-drag-over[data-v-abf2c700]{border-color:#646cff;background:#f3f3ff;box-shadow:0 0 0 2px #646cff33}.chapter-row[data-v-abf2c700]:last-child{border-bottom:none}.chapter-header-row[data-v-abf2c700]{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;gap:.5rem}.chapter-info[data-v-abf2c700]{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.expand-btn[data-v-abf2c700]{background:none;border:none;cursor:pointer;padding:0;color:#888;display:flex;align-items:center}.expand-btn .material-icons[data-v-abf2c700]{font-size:1.2rem}.chapter-order[data-v-abf2c700]{font-weight:700;color:#888;font-size:.85rem;white-space:nowrap}.chapter-title[data-v-abf2c700]{font-weight:600;color:#213547;font-size:.95rem;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-count-badge[data-v-abf2c700]{font-size:.75rem;color:#888;background:#f0f0f0;padding:.1rem .5rem;border-radius:20px;white-space:nowrap}.chapter-actions[data-v-abf2c700],.lesson-actions[data-v-abf2c700]{display:flex;gap:.25rem;align-items:center;flex-shrink:0}.lesson-list[data-v-abf2c700]{background:#fafbff;border-top:1px solid #f0f0f0;padding:.5rem 1.25rem .75rem 2.5rem;display:flex;flex-direction:column;gap:.4rem}.lesson-row[data-v-abf2c700]{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-radius:7px;background:#fff;border:1px solid #eee;gap:.5rem;transition:opacity .15s,border-color .15s,background .15s;cursor:default}.lesson-row.is-dragging[data-v-abf2c700]{opacity:.35}.lesson-row.drag-over[data-v-abf2c700]{border-color:#646cff;background:#f3f3ff;box-shadow:0 0 0 2px #646cff33}.drag-handle[data-v-abf2c700]{color:#ccc;font-size:1.1rem;cursor:grab;flex-shrink:0;-webkit-user-select:none;user-select:none}.drag-handle[data-v-abf2c700]:hover{color:#888}.drag-handle[data-v-abf2c700]:active{cursor:grabbing}.lesson-info[data-v-abf2c700]{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0;flex-wrap:wrap}.lesson-order[data-v-abf2c700]{font-size:.8rem;color:#aaa;font-weight:600;white-space:nowrap}.lesson-title[data-v-abf2c700]{font-size:.9rem;color:#213547;font-weight:500}.tag[data-v-abf2c700]{display:inline-flex;align-items:center;gap:.2rem;padding:.1rem .5rem;border-radius:20px;font-size:.72rem;font-weight:600}.tag .material-icons[data-v-abf2c700]{font-size:.8rem}.tag-video[data-v-abf2c700]{background:#e3f2fd;color:#1565c0}.tag-practices[data-v-abf2c700]{background:#f3e5f5;color:#6a1b9a}.tag-reward[data-v-abf2c700]{background:#fff8e1;color:#e65100}.add-lesson-btn[data-v-abf2c700]{align-self:flex-start;margin-top:.25rem}.btn[data-v-abf2c700]{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .9rem;border-radius:7px;border:none;font-size:.875rem;font-weight:500;cursor:pointer;text-decoration:none;transition:background .15s;font-family:inherit}.btn[data-v-abf2c700]:disabled{opacity:.4;cursor:not-allowed}.btn-primary[data-v-abf2c700]{background:#646cff;color:#fff}.btn-primary[data-v-abf2c700]:hover:not(:disabled){background:#535bf2}.btn-ghost[data-v-abf2c700]{background:transparent;color:#555;border:1px solid #ddd}.btn-ghost[data-v-abf2c700]:hover{background:#f5f5f5}.btn-sm[data-v-abf2c700]{padding:.3rem .65rem;font-size:.8rem}.btn-icon[data-v-abf2c700]{padding:.3rem;background:transparent;border:none;color:#888;cursor:pointer;border-radius:5px;display:flex;align-items:center}.btn-icon[data-v-abf2c700]:hover:not(:disabled){background:#f0f0f0;color:#333}.btn-icon[data-v-abf2c700]:disabled{opacity:.3;cursor:not-allowed}.btn-icon .material-icons[data-v-abf2c700]{font-size:1rem}.btn-danger-icon[data-v-abf2c700]:hover:not(:disabled){background:#fff0f0;color:#e53935}.modal-overlay[data-v-abf2c700]{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:100}.modal[data-v-abf2c700]{background:#fff;border-radius:12px;padding:1.75rem 2rem;width:100%;max-width:460px;box-shadow:0 8px 32px #0000002e;display:flex;flex-direction:column;gap:1rem}.modal h3[data-v-abf2c700]{margin:0;font-size:1.1rem;color:#213547}.modal-hint[data-v-abf2c700]{margin:0;font-size:.85rem;color:#888}.modal .form-group input[data-v-abf2c700],.modal .form-group textarea[data-v-abf2c700]{padding:.5rem .75rem;border:1px solid #ddd;border-radius:7px;font-size:.9rem;font-family:inherit;width:100%;box-sizing:border-box;background:#fafafa}.modal .form-group input[data-v-abf2c700]:focus,.modal .form-group textarea[data-v-abf2c700]:focus{outline:none;border-color:#646cff;background:#fff}.modal .form-group textarea[data-v-abf2c700]{resize:vertical}.modal-error[data-v-abf2c700]{color:#c62828;font-size:.85rem;margin:0}.modal-actions[data-v-abf2c700]{display:flex;justify-content:flex-end;gap:.75rem}.required[data-v-abf2c700]{color:#e53935}.loading-state[data-v-abf2c700]{display:flex;justify-content:center;padding:4rem}.loading-spinner[data-v-abf2c700]{width:36px;height:36px;border:3px solid #e0e0e0;border-top-color:#646cff;border-radius:50%;animation:spin-abf2c700 .7s linear infinite}.loading-spinner-sm[data-v-abf2c700]{width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin-abf2c700 .7s linear infinite}@keyframes spin-abf2c700{to{transform:rotate(360deg)}}.manage-layout[data-v-4db0834d]{min-height:100vh;background:#f5f6fa}.manage-content[data-v-4db0834d]{max-width:800px;margin:0 auto;padding:2rem 1.5rem;padding-top:88px;display:flex;flex-direction:column;gap:1.5rem}.manage-header h1[data-v-4db0834d]{margin:0;font-size:1.6rem;color:#213547}.back-link[data-v-4db0834d]{display:inline-flex;align-items:center;gap:.3rem;font-size:.85rem;color:#666;cursor:pointer;margin-bottom:.35rem}.back-link[data-v-4db0834d]:hover{color:#646cff}.back-link .material-icons[data-v-4db0834d]{font-size:1rem}.panel[data-v-4db0834d]{background:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014;overflow:hidden}.panel-header[data-v-4db0834d]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #f0f0f0}.panel-header h2[data-v-4db0834d]{margin:0;font-size:1rem;color:#213547;display:flex;align-items:center;gap:.4rem}.panel-header h2 .material-icons[data-v-4db0834d]{font-size:1.1rem;color:#646cff}.panel-body[data-v-4db0834d]{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.form-group[data-v-4db0834d]{display:flex;flex-direction:column;gap:.35rem;flex:1}.form-group label[data-v-4db0834d]{font-size:.82rem;font-weight:600;color:#555}.form-group input[data-v-4db0834d],.form-group textarea[data-v-4db0834d]{padding:.5rem .75rem;border:1px solid #ddd;border-radius:7px;font-size:.9rem;font-family:inherit;background:#fafafa;transition:border-color .15s}.form-group input[data-v-4db0834d]:focus,.form-group textarea[data-v-4db0834d]:focus{outline:none;border-color:#646cff;background:#fff}.field-hint[data-v-4db0834d]{font-size:.75rem;color:#999}.form-row[data-v-4db0834d]{display:flex;gap:1rem;flex-wrap:wrap}.flex-1[data-v-4db0834d]{flex:1}.flex-2[data-v-4db0834d]{flex:2}.flex-3[data-v-4db0834d]{flex:3}.form-actions-inline[data-v-4db0834d]{display:flex;align-items:center;gap:.75rem}.reward-form[data-v-4db0834d]{display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap}.reward-form .form-group input[data-v-4db0834d]{width:90px}.thumbnail-preview[data-v-4db0834d]{margin-top:.25rem}.thumbnail-preview img[data-v-4db0834d]{max-width:240px;border-radius:6px;border:1px solid #ddd}.empty-hint[data-v-4db0834d]{padding:1.25rem;color:#888;font-size:.9rem}.practice-list[data-v-4db0834d]{display:flex;flex-direction:column}.practice-row[data-v-4db0834d]{display:flex;align-items:center;justify-content:space-between;padding:.65rem 1.25rem;border-bottom:1px solid #f5f5f5}.practice-row[data-v-4db0834d]:last-child{border-bottom:none}.practice-info[data-v-4db0834d]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.practice-godot-id[data-v-4db0834d]{font-family:monospace;font-size:.875rem;color:#213547;background:#f0f1f5;padding:.1rem .5rem;border-radius:4px}.practice-actions[data-v-4db0834d]{display:flex;gap:.25rem}.tag[data-v-4db0834d]{display:inline-flex;align-items:center;gap:.2rem;padding:.1rem .5rem;border-radius:20px;font-size:.72rem;font-weight:600}.tag-art[data-v-4db0834d]{background:#fce4ec;color:#c62828}.tag-code[data-v-4db0834d]{background:#e8f5e9;color:#2e7d32}.form-error[data-v-4db0834d]{display:flex;align-items:center;gap:.4rem;padding:.6rem .85rem;background:#fff0f0;border:1px solid #fcc;border-radius:7px;color:#c62828;font-size:.85rem}.form-error .material-icons[data-v-4db0834d]{font-size:1rem}.save-success[data-v-4db0834d]{display:inline-flex;align-items:center;gap:.3rem;color:#2e7d32;font-size:.85rem}.save-success .material-icons[data-v-4db0834d]{font-size:1rem}.btn[data-v-4db0834d]{display:inline-flex;align-items:center;gap:.3rem;padding:.45rem .9rem;border-radius:7px;border:none;font-size:.875rem;font-weight:500;cursor:pointer;text-decoration:none;transition:background .15s;font-family:inherit}.btn[data-v-4db0834d]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-4db0834d]{background:#646cff;color:#fff}.btn-primary[data-v-4db0834d]:hover:not(:disabled){background:#535bf2}.btn-ghost[data-v-4db0834d]{background:transparent;color:#555;border:1px solid #ddd}.btn-ghost[data-v-4db0834d]:hover{background:#f5f5f5}.btn-sm[data-v-4db0834d]{padding:.3rem .65rem;font-size:.8rem}.btn-icon[data-v-4db0834d]{padding:.3rem;background:transparent;border:none;color:#888;cursor:pointer;border-radius:5px;display:flex;align-items:center}.btn-icon[data-v-4db0834d]:hover:not(:disabled){background:#f0f0f0;color:#333}.btn-icon .material-icons[data-v-4db0834d]{font-size:1rem}.btn-danger-icon[data-v-4db0834d]:hover:not(:disabled){background:#fff0f0;color:#e53935}.modal-overlay[data-v-4db0834d]{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:100}.modal[data-v-4db0834d]{background:#fff;border-radius:12px;padding:1.75rem 2rem;width:100%;max-width:460px;box-shadow:0 8px 32px #0000002e;display:flex;flex-direction:column;gap:1rem}.modal h3[data-v-4db0834d]{margin:0;font-size:1.1rem;color:#213547}.modal .form-group input[data-v-4db0834d]{width:100%;box-sizing:border-box}.modal-error[data-v-4db0834d]{color:#c62828;font-size:.85rem;margin:0}.modal-actions[data-v-4db0834d]{display:flex;justify-content:flex-end;gap:.75rem}.required[data-v-4db0834d]{color:#e53935}.loading-state[data-v-4db0834d]{display:flex;justify-content:center;padding:4rem}.loading-spinner[data-v-4db0834d]{width:36px;height:36px;border:3px solid #e0e0e0;border-top-color:#646cff;border-radius:50%;animation:spin-4db0834d .7s linear infinite}.loading-spinner-sm[data-v-4db0834d]{width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin-4db0834d .7s linear infinite}@keyframes spin-4db0834d{to{transform:rotate(360deg)}}.video-tab-toggle[data-v-4db0834d]{display:flex;border:1px solid #dde;border-radius:7px;overflow:hidden}.tab-btn[data-v-4db0834d]{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .7rem;font-size:.8rem;font-weight:500;border:none;background:transparent;color:#666;cursor:pointer;transition:background .15s,color .15s;font-family:inherit}.tab-btn .material-icons[data-v-4db0834d]{font-size:.95rem}.tab-btn.active[data-v-4db0834d]{background:#646cff;color:#fff}.tab-btn[data-v-4db0834d]:not(.active):hover{background:#f0f0ff}.coming-soon-badge[data-v-4db0834d]{font-size:.65rem;font-weight:700;background:#e8e9f5;color:#888;border-radius:4px;padding:.1rem .35rem;text-transform:uppercase;letter-spacing:.03em}.coming-soon-notice[data-v-4db0834d]{display:flex;align-items:center;gap:.6rem;padding:.9rem 1rem;background:#f9f9ff;border:1px solid #e0e0f0;border-radius:8px;color:#666;font-size:.875rem}.coming-soon-notice .material-icons[data-v-4db0834d]{font-size:1.1rem;color:#aaa;flex-shrink:0}.file-input[data-v-4db0834d]{padding:.4rem 0;font-size:.875rem;cursor:pointer}.upload-meta[data-v-4db0834d]{display:flex;flex-direction:column;gap:.75rem}.upload-progress-wrap[data-v-4db0834d]{display:flex;align-items:center;gap:.75rem}.upload-progress-bar[data-v-4db0834d]{flex:1;height:8px;background:#e8e9f5;border-radius:4px;overflow:hidden}.upload-progress-fill[data-v-4db0834d]{height:100%;background:#646cff;border-radius:4px;transition:width .2s}.upload-progress-label[data-v-4db0834d]{font-size:.8rem;color:#555;min-width:36px;text-align:right}.manage-layout[data-v-08fe2580]{min-height:100vh;background:#f5f6fa}.manage-content[data-v-08fe2580]{max-width:960px;margin:0 auto;padding:2rem 1.5rem;padding-top:88px;display:flex;flex-direction:column;gap:1.5rem}.back-link[data-v-08fe2580]{display:inline-flex;align-items:center;gap:.3rem;font-size:.85rem;color:#666;text-decoration:none;margin-bottom:.35rem}.back-link[data-v-08fe2580]:hover{color:#646cff}.back-link .material-icons[data-v-08fe2580]{font-size:1rem}.manage-header[data-v-08fe2580]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.manage-header h1[data-v-08fe2580]{margin:0 0 .2rem;font-size:1.6rem;color:#213547}.manage-subtitle[data-v-08fe2580]{margin:0;color:#666;font-size:.875rem}.achievements-grid[data-v-08fe2580]{display:flex;flex-direction:column;gap:.75rem}.achievement-card[data-v-08fe2580]{background:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014;display:flex;align-items:center;padding:1rem 1.25rem;gap:1rem;transition:opacity .15s}.achievement-card.inactive[data-v-08fe2580]{opacity:.6}.ach-icon-col[data-v-08fe2580]{flex-shrink:0}.ach-icon[data-v-08fe2580]{font-size:2.2rem;color:#646cff}.ach-body[data-v-08fe2580]{flex:1;min-width:0}.ach-title-row[data-v-08fe2580]{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.ach-title[data-v-08fe2580]{font-weight:700;color:#213547;font-size:1rem}.ach-status-badge[data-v-08fe2580]{font-size:.72rem;font-weight:700;padding:.1rem .55rem;border-radius:20px;text-transform:uppercase}.ach-status-badge.active[data-v-08fe2580]{background:#e8f5e9;color:#2e7d32}.ach-status-badge.inactive[data-v-08fe2580]{background:#f5f5f5;color:#888}.ach-description[data-v-08fe2580]{margin:.25rem 0 .4rem;font-size:.875rem;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ach-criteria-summary[data-v-08fe2580]{display:flex;align-items:center;gap:.3rem;font-size:.8rem;color:#888}.ach-criteria-summary .material-icons[data-v-08fe2580]{font-size:.95rem}.ach-actions[data-v-08fe2580]{display:flex;gap:.3rem;flex-shrink:0}.btn[data-v-08fe2580]{display:inline-flex;align-items:center;gap:.3rem;padding:.45rem 1rem;border-radius:7px;border:none;font-size:.875rem;font-weight:500;cursor:pointer;text-decoration:none;transition:background .15s;font-family:inherit}.btn-primary[data-v-08fe2580]{background:#646cff;color:#fff}.btn-primary[data-v-08fe2580]:hover{background:#535bf2}.btn-icon[data-v-08fe2580]{padding:.3rem;background:transparent;border:none;color:#888;cursor:pointer;border-radius:5px;display:flex;align-items:center}.btn-icon[data-v-08fe2580]:hover{background:#f0f0f0;color:#333}.btn-icon .material-icons[data-v-08fe2580]{font-size:1.1rem}.btn-danger-icon[data-v-08fe2580]:hover{background:#fff0f0;color:#e53935}.loading-state[data-v-08fe2580],.error-state[data-v-08fe2580],.empty-state[data-v-08fe2580]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem;color:#666;background:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014}.empty-state .material-icons[data-v-08fe2580],.error-state .material-icons[data-v-08fe2580]{font-size:3rem;color:#bbb}.loading-spinner[data-v-08fe2580]{width:36px;height:36px;border:3px solid #e0e0e0;border-top-color:#646cff;border-radius:50%;animation:spin-08fe2580 .7s linear infinite}@keyframes spin-08fe2580{to{transform:rotate(360deg)}}.manage-layout[data-v-4284fa37]{min-height:100vh;background:#f5f6fa}.manage-content[data-v-4284fa37]{max-width:720px;margin:0 auto;padding:2rem 1.5rem;padding-top:88px;display:flex;flex-direction:column;gap:1.5rem}.back-link[data-v-4284fa37]{display:inline-flex;align-items:center;gap:.3rem;font-size:.85rem;color:#666;text-decoration:none;margin-bottom:.35rem}.back-link[data-v-4284fa37]:hover{color:#646cff}.back-link .material-icons[data-v-4284fa37]{font-size:1rem}.manage-header h1[data-v-4284fa37]{margin:0;font-size:1.6rem;color:#213547}.panel[data-v-4284fa37]{background:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014;overflow:hidden}.panel-header[data-v-4284fa37]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #f0f0f0}.panel-header h2[data-v-4284fa37]{margin:0;font-size:1rem;color:#213547;display:flex;align-items:center;gap:.4rem}.panel-header h2 .material-icons[data-v-4284fa37]{font-size:1.1rem;color:#646cff}.panel-body[data-v-4284fa37]{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.form-group[data-v-4284fa37]{display:flex;flex-direction:column;gap:.35rem;flex:1}.form-group label[data-v-4284fa37]{font-size:.82rem;font-weight:600;color:#555}.form-group input[data-v-4284fa37],.form-group select[data-v-4284fa37],.form-group textarea[data-v-4284fa37]{padding:.5rem .75rem;border:1px solid #ddd;border-radius:7px;font-size:.9rem;font-family:inherit;background:#fafafa;transition:border-color .15s}.form-group input[data-v-4284fa37]:focus,.form-group select[data-v-4284fa37]:focus,.form-group textarea[data-v-4284fa37]:focus{outline:none;border-color:#646cff;background:#fff}.form-group textarea[data-v-4284fa37]{resize:vertical}.form-row[data-v-4284fa37]{display:flex;gap:1rem;flex-wrap:wrap;align-items:flex-start}.flex-1[data-v-4284fa37]{flex:1;min-width:80px}.flex-2[data-v-4284fa37]{flex:2;min-width:140px}.flex-3[data-v-4284fa37]{flex:3;min-width:200px}.field-hint[data-v-4284fa37]{font-size:.75rem;color:#999}.field-hint a[data-v-4284fa37]{color:#646cff}.toggle-row[data-v-4284fa37]{display:flex;align-items:center;gap:.5rem;padding-top:.4rem}.toggle-input[data-v-4284fa37]{width:18px;height:18px;cursor:pointer;accent-color:#646cff}.toggle-label[data-v-4284fa37]{font-size:.9rem;cursor:pointer}.icon-preview-group[data-v-4284fa37]{flex:0 0 auto}.icon-preview[data-v-4284fa37]{font-size:3rem;color:#646cff;display:block;margin-top:.35rem}.form-actions-inline[data-v-4284fa37]{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.form-error[data-v-4284fa37]{display:flex;align-items:center;gap:.4rem;padding:.6rem .85rem;background:#fff0f0;border:1px solid #fcc;border-radius:7px;color:#c62828;font-size:.85rem}.form-error .material-icons[data-v-4284fa37]{font-size:1rem}.save-success[data-v-4284fa37]{display:inline-flex;align-items:center;gap:.3rem;color:#2e7d32;font-size:.85rem}.save-success .material-icons[data-v-4284fa37]{font-size:1rem}.empty-hint[data-v-4284fa37]{padding:1.25rem;color:#888;font-size:.875rem}.criteria-list[data-v-4284fa37]{display:flex;flex-direction:column}.criteria-row[data-v-4284fa37]{display:flex;align-items:center;justify-content:space-between;padding:.7rem 1.25rem;border-bottom:1px solid #f5f5f5}.criteria-row[data-v-4284fa37]:last-child{border-bottom:none}.criteria-info[data-v-4284fa37]{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;flex:1}.criteria-type[data-v-4284fa37]{font-weight:600;color:#213547;font-size:.875rem}.criteria-amount[data-v-4284fa37]{color:#646cff;font-weight:700;font-size:.875rem}.criteria-entity[data-v-4284fa37]{font-size:.8rem;color:#666;background:#f0f0f0;padding:.1rem .5rem;border-radius:4px}.criteria-unavailable-hint[data-v-4284fa37]{color:#888;font-size:.875rem;padding:.5rem 0;margin:0}.btn[data-v-4284fa37]{display:inline-flex;align-items:center;gap:.3rem;padding:.45rem .9rem;border-radius:7px;border:none;font-size:.875rem;font-weight:500;cursor:pointer;text-decoration:none;transition:background .15s;font-family:inherit}.btn[data-v-4284fa37]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-4284fa37]{background:#646cff;color:#fff}.btn-primary[data-v-4284fa37]:hover:not(:disabled){background:#535bf2}.btn-ghost[data-v-4284fa37]{background:transparent;color:#555;border:1px solid #ddd}.btn-ghost[data-v-4284fa37]:hover{background:#f5f5f5}.btn-sm[data-v-4284fa37]{padding:.3rem .65rem;font-size:.8rem}.btn-icon[data-v-4284fa37]{padding:.3rem;background:transparent;border:none;color:#888;cursor:pointer;border-radius:5px;display:flex;align-items:center}.btn-icon[data-v-4284fa37]:hover{background:#f0f0f0;color:#333}.btn-icon .material-icons[data-v-4284fa37]{font-size:1rem}.btn-danger-icon[data-v-4284fa37]:hover{background:#fff0f0;color:#e53935}.required[data-v-4284fa37]{color:#e53935}.modal-overlay[data-v-4284fa37]{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:100}.modal[data-v-4284fa37]{background:#fff;border-radius:12px;padding:1.75rem 2rem;width:100%;max-width:460px;box-shadow:0 8px 32px #0000002e;display:flex;flex-direction:column;gap:1rem}.modal h3[data-v-4284fa37]{margin:0;font-size:1.1rem;color:#213547}.modal .form-group input[data-v-4284fa37],.modal .form-group select[data-v-4284fa37]{width:100%;box-sizing:border-box}.modal-error[data-v-4284fa37]{color:#c62828;font-size:.85rem;margin:0}.modal-actions[data-v-4284fa37]{display:flex;justify-content:flex-end;gap:.75rem}.loading-state[data-v-4284fa37]{display:flex;justify-content:center;padding:4rem}.loading-spinner[data-v-4284fa37]{width:36px;height:36px;border:3px solid #e0e0e0;border-top-color:#646cff;border-radius:50%;animation:spin-4284fa37 .7s linear infinite}.loading-spinner-sm[data-v-4284fa37]{width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin-4284fa37 .7s linear infinite}@keyframes spin-4284fa37{to{transform:rotate(360deg)}}
