*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:#f5f5f5}#app{min-height:100vh}.register-container[data-v-cc0e9710]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.register-card[data-v-cc0e9710]{background:#fff;border-radius:8px;padding:40px;box-shadow:0 2px 10px #0000001a;width:100%;max-width:400px}h1[data-v-cc0e9710]{margin-bottom:10px;color:#333}.subtitle[data-v-cc0e9710]{color:#666;margin-bottom:20px;font-size:14px}.privacy-notice[data-v-cc0e9710]{margin-bottom:16px;font-size:13px}.privacy-notice a[data-v-cc0e9710]{color:#007bff}.form-group[data-v-cc0e9710]{margin-bottom:20px}label[data-v-cc0e9710]{display:block;margin-bottom:8px;color:#333;font-weight:500}input[data-v-cc0e9710]{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px}input[data-v-cc0e9710]:disabled{background:#f5f5f5;cursor:not-allowed}.btn-primary[data-v-cc0e9710]{width:100%;padding:12px;background:#007bff;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;margin-bottom:16px}.btn-primary[data-v-cc0e9710]:hover:not(:disabled){background:#0056b3}.btn-primary[data-v-cc0e9710]:disabled{background:#ccc;cursor:not-allowed}.message[data-v-cc0e9710]{padding:12px;border-radius:4px;margin-bottom:16px}.message.success[data-v-cc0e9710]{background:#d4edda;color:#155724}.message.error[data-v-cc0e9710]{background:#f8d7da;color:#721c24}.login-link[data-v-cc0e9710]{text-align:center;color:#666;font-size:14px}.login-link a[data-v-cc0e9710]{color:#007bff}.login-container[data-v-c0e30e7c]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.login-card[data-v-c0e30e7c]{background:#fff;border-radius:8px;padding:40px;box-shadow:0 2px 10px #0000001a;width:100%;max-width:400px}h1[data-v-c0e30e7c]{margin-bottom:24px;color:#333}.form-group[data-v-c0e30e7c]{margin-bottom:20px}label[data-v-c0e30e7c]{display:block;margin-bottom:8px;color:#333;font-weight:500}input[data-v-c0e30e7c]{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px}input[data-v-c0e30e7c]:disabled{background:#f5f5f5;cursor:not-allowed}.btn-primary[data-v-c0e30e7c]{width:100%;padding:12px;background:#007bff;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;margin-bottom:16px}.btn-primary[data-v-c0e30e7c]:hover:not(:disabled){background:#0056b3}.btn-primary[data-v-c0e30e7c]:disabled{background:#ccc;cursor:not-allowed}.message[data-v-c0e30e7c]{padding:12px;border-radius:4px;margin-bottom:16px}.message.error[data-v-c0e30e7c]{background:#f8d7da;color:#721c24}.register-link[data-v-c0e30e7c]{text-align:center;color:#666;font-size:14px}.register-link a[data-v-c0e30e7c]{color:#007bff}.student-layout[data-v-7f57e2a4]{min-height:100vh;display:flex;flex-direction:column;background:#f5f5f5}.student-header[data-v-7f57e2a4]{display:flex;align-items:center;justify-content:space-between;height:78px;padding:0 16px;background:#fff;border-bottom:1px solid #e0e0e0;flex-shrink:0}.header-left[data-v-7f57e2a4]{flex:1;display:flex;align-items:center;height:100%;min-width:0}.school-logo[data-v-7f57e2a4],.school-logo-placeholder[data-v-7f57e2a4]{height:100%;width:78px;object-fit:contain;flex-shrink:0}.school-logo-placeholder[data-v-7f57e2a4]{background:#e0e0e0;border-radius:6px}.header-right[data-v-7f57e2a4]{flex:1;display:flex;justify-content:flex-end;min-width:0}.school-name[data-v-7f57e2a4]{flex:0 1 auto;font-weight:600;font-size:1rem;color:#333;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 12px}.btn-logout[data-v-7f57e2a4]{padding:8px 16px;background:#f0f0f0;color:#333;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;flex-shrink:0}.btn-logout[data-v-7f57e2a4]:hover{background:#e0e0e0}.student-main[data-v-7f57e2a4]{flex:1;overflow:auto;display:flex;flex-direction:column}.student-footer[data-v-7f57e2a4]{flex-shrink:0;padding:12px 16px;background:#fff;border-top:1px solid #e0e0e0;text-align:center}.footer-link[data-v-7f57e2a4]{color:#666;font-size:.9rem;text-decoration:none}.footer-link[data-v-7f57e2a4]:hover{text-decoration:underline}.dashboard[data-v-504460af]{flex:1;display:flex;flex-direction:column;min-height:0}.subject-list-wrap[data-v-504460af]{flex:1;overflow-y:auto;padding:16px}.empty[data-v-504460af]{color:#666;text-align:center;padding:24px 16px}.subject-list[data-v-504460af]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:24px}.subject-row[data-v-504460af]{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #00000014}.subject-row-link[data-v-504460af]{display:flex;align-items:center;gap:16px;padding:24px 16px;text-decoration:none;color:inherit;min-height:144px}.subject-row-link[data-v-504460af]:hover{background:#f8f9fa}.subject-image-wrap[data-v-504460af]{width:112px;height:112px;min-width:112px;min-height:112px;border-radius:8px;overflow:hidden;background:#e9ecef}.subject-image[data-v-504460af]{width:100%;height:100%;object-fit:cover;display:block}.subject-image-placeholder[data-v-504460af]{width:100%;height:100%;background:#e9ecef}.subject-title[data-v-504460af]{flex:1;font-weight:500;font-size:1rem;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-pdf[data-v-504460af]{padding:8px 14px;background:#0d6efd;color:#fff;border-radius:6px;font-size:.875rem;text-decoration:none;flex-shrink:0}.btn-pdf[data-v-504460af]:hover{background:#0b5ed7}.vimeo-player-container[data-v-18e88db1]{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:8px;box-shadow:0 2px 8px #0000001a}.vimeo-player-container iframe[data-v-18e88db1]{position:absolute;top:0;left:0;width:100%;height:100%}.detail[data-v-e4665685]{flex:1;display:flex;flex-direction:column;min-height:0;padding:0 16px 16px}.detail-header[data-v-e4665685]{padding:12px 0;flex-shrink:0}.back-link[data-v-e4665685]{color:#0d6efd;text-decoration:none;font-size:.95rem}.back-link[data-v-e4665685]:hover{text-decoration:underline}.video-full[data-v-e4665685]{flex:1;min-height:0;width:100%;max-width:100%}.video-full[data-v-e4665685] .vimeo-player-container,.video-full[data-v-e4665685] .vimeo-player-container iframe{width:100%;height:100%;min-height:50vh}.loading[data-v-e4665685],.error[data-v-e4665685],.no-video[data-v-e4665685]{color:#666;padding:24px 0}.page-container[data-v-132b1f97]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.card[data-v-132b1f97]{background:#fff;border-radius:8px;padding:40px;box-shadow:0 2px 10px #0000001a;max-width:400px;width:100%}h1[data-v-132b1f97]{margin-bottom:8px;color:#333}.subtitle[data-v-132b1f97]{color:#666;margin-bottom:24px;font-size:14px}.form-group[data-v-132b1f97]{margin-bottom:20px}label[data-v-132b1f97]{display:block;margin-bottom:8px;color:#333;font-weight:500}input[data-v-132b1f97]{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px}input[data-v-132b1f97]:disabled{background:#f5f5f5}button[data-v-132b1f97]{width:100%;padding:12px;background:#007bff;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;margin-bottom:16px}button[data-v-132b1f97]:hover:not(:disabled){background:#0056b3}button[data-v-132b1f97]:disabled{background:#ccc;cursor:not-allowed}.message[data-v-132b1f97]{padding:12px;border-radius:4px;margin-bottom:16px}.message.success[data-v-132b1f97]{background:#d4edda;color:#155724}.message.error[data-v-132b1f97]{background:#f8d7da;color:#721c24}.page[data-v-258d171c]{min-height:100vh;padding:24px;max-width:640px;margin:0 auto}.content[data-v-258d171c]{background:#fff;padding:32px;border-radius:8px;box-shadow:0 2px 10px #00000014}h1[data-v-258d171c]{margin-bottom:16px;color:#333}p[data-v-258d171c]{margin-bottom:12px;color:#444;line-height:1.6}a[data-v-258d171c]{color:#007bff}.redirect-message[data-v-b52b6a83]{padding:2rem;text-align:center;color:#666}
