body{margin:0;padding:0;width:100%;height:100%;box-sizing:border-box;font-family:Inter,Arial,Helvetica,sans-serif;background-color:#f6f8fa;color:#0f172a}#app{width:100%;min-height:100%;display:flex;flex-direction:column;flex:1}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit}.hb[data-v-845350c8]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid #eee;background:#fff;position:sticky;top:0;z-index:10}.logo[data-v-845350c8]{height:3.25rem;width:auto}.hb-left[data-v-845350c8]{display:flex;align-items:center;gap:.5rem;width:auto}.brand[data-v-845350c8]{font-weight:700;color:#111;font-size:1rem;text-decoration:none}.hb-nav-centered[data-v-845350c8]{display:flex;justify-content:center;align-items:center;flex:1}.hb-nav-centered .nav-link[data-v-845350c8]{margin:0 1rem}.hb-center[data-v-845350c8]{display:none}.hb-right[data-v-845350c8]{display:flex;align-items:center;margin-left:auto;flex-wrap:wrap;justify-content:flex-end;width:auto}.hb>nav.hb-nav[data-v-845350c8]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.nav-link[data-v-845350c8]{color:#111;padding:.35rem .5rem;border-radius:.375rem;font-size:.95rem;text-decoration:none;margin:0 .5rem}.modal-mask[data-v-845350c8]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:20}.modal-container[data-v-845350c8]{background:#fff;padding:1.25rem;border-radius:.5rem;width:26rem;max-width:calc(100% - 2rem);box-shadow:0 8px 20px #00000026;display:flex;flex-direction:column;align-items:stretch}.form-group[data-v-845350c8]{width:100%;margin-bottom:.75rem;display:flex;flex-direction:column;align-items:stretch}.form-group label[data-v-845350c8]{margin-bottom:.35rem;font-size:.9rem}select[data-v-845350c8],input[type=radio][data-v-845350c8]{font-size:.95rem}.btn[data-v-845350c8]{padding:.5rem .75rem;border-radius:.375rem;cursor:pointer;font-size:.95rem}.btn.primary[data-v-845350c8]{background-color:#2563eb;color:#fff}.hamburger[data-v-845350c8]{font-size:1.5rem;background:none;border:none;cursor:pointer;padding:.25rem;display:none}.mobile-menu[data-v-845350c8]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000c;z-index:15;display:flex;justify-content:center;align-items:center}.mobile-nav[data-v-845350c8]{display:flex;flex-direction:column;align-items:center;gap:1rem}.mobile-nav .nav-link[data-v-845350c8]{color:#fff;font-size:1.2rem;text-decoration:none}.user-info[data-v-845350c8]{margin-right:.75rem;font-size:.95rem;color:#333;white-space:nowrap}@media (max-width: 767px){.hb-center[data-v-845350c8],.hb>nav.hb-nav[data-v-845350c8],.hb-right>nav.hb-nav[data-v-845350c8]{display:none}.hb-right[data-v-845350c8]{margin-left:auto;flex-wrap:wrap;justify-content:flex-end;width:auto}.hamburger[data-v-845350c8]{display:block}.hb-nav-centered[data-v-845350c8]{display:none}}@media (min-width: 768px){.hb-center[data-v-845350c8]{display:none}.logo[data-v-845350c8]{height:4rem}.brand[data-v-845350c8]{font-size:1.125rem}.modal-container[data-v-845350c8]{width:28rem}.hamburger[data-v-845350c8]{display:none}}@media (min-width: 1200px){.hb[data-v-845350c8]{padding:.9rem 1.5rem;gap:1rem}}@media (max-width: 420px){.brand[data-v-845350c8]{display:none}.nav-link[data-v-845350c8]{padding:.4rem;font-size:.9rem}}#app[data-v-812b398c]{font-family:Inter,Arial,Helvetica,sans-serif;background-color:#f6f8fa;color:#0f172a;height:100%}.member-list-page[data-v-f9ed910f]{width:95%;max-width:1200px;margin:20px auto;padding:0 16px}.list-header[data-v-f9ed910f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.list-controls[data-v-f9ed910f]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.list-search-input[data-v-f9ed910f],.list-skill-select[data-v-f9ed910f]{padding:8px;border-radius:6px;border:1px solid #e5e7eb;font-size:1rem;flex:1;min-width:150px}.list-card[data-v-f9ed910f]{background:#fff;padding:12px;border-radius:8px;box-shadow:0 6px 18px #0206170f;overflow-x:auto}.table-responsive[data-v-f9ed910f]{overflow-x:auto}.member-table[data-v-f9ed910f]{width:100%;border-collapse:collapse;min-width:600px}.member-table th[data-v-f9ed910f],.member-table td[data-v-f9ed910f]{padding:10px;border-bottom:1px solid #f3f4f6;text-align:center;white-space:nowrap}.sortable-header[data-v-f9ed910f]{cursor:pointer;-webkit-user-select:none;user-select:none}.list-btn[data-v-f9ed910f]{padding:6px 10px;border-radius:6px;border:none;background:#e5e7eb;cursor:pointer;font-size:.9rem;margin:2px}.list-btn-view[data-v-f9ed910f]{background:#2563eb;color:#fff}.list-btn-edit[data-v-f9ed910f]{background:#3b82f6;color:#fff}.list-btn-delete[data-v-f9ed910f]{background:#f87171;color:#fff}.member-actions[data-v-f9ed910f]{display:flex;flex-direction:column;align-items:center;gap:4px}.list-pager[data-v-f9ed910f]{display:flex;justify-content:flex-end;gap:8px;margin-top:10px;align-items:center;flex-wrap:wrap}.list-page-info[data-v-f9ed910f]{margin-right:auto;color:#6b7280}@media (max-width: 768px){.member-list-page[data-v-f9ed910f]{width:100%;padding:0 8px}.list-header[data-v-f9ed910f]{flex-direction:column;align-items:flex-start}.list-controls[data-v-f9ed910f]{width:100%}.list-search-input[data-v-f9ed910f],.list-skill-select[data-v-f9ed910f]{width:100%;margin-bottom:8px}.list-pager[data-v-f9ed910f]{justify-content:center}.member-table[data-v-f9ed910f]{font-size:.8rem}.member-table th[data-v-f9ed910f],.member-table td[data-v-f9ed910f]{padding:6px}.list-btn[data-v-f9ed910f]{padding:4px 8px;font-size:.8rem}}@media (max-width: 480px){.member-table th[data-v-f9ed910f],.member-table td[data-v-f9ed910f]{padding:4px}.list-btn[data-v-f9ed910f]{padding:3px 6px}}@media (min-width: 992px){.member-actions[data-v-f9ed910f]{flex-direction:row;justify-content:center}}.member-detail-page[data-v-9c25445a]{width:95%;max-width:800px;margin:20px auto;padding:0 16px}.detail-container[data-v-9c25445a]{max-width:100%}.detail-card[data-v-9c25445a]{background:#fff;padding:20px;border-radius:8px;box-shadow:0 6px 18px #0206170f;margin-top:12px}.detail-title[data-v-9c25445a]{font-size:1.5rem;margin-bottom:.5rem}.detail-ttid[data-v-9c25445a]{color:#6b7280;font-size:.8rem}.detail-btn[data-v-9c25445a]{padding:8px 12px;border-radius:6px;border:none;cursor:pointer;font-size:1rem}.detail-btn-edit[data-v-9c25445a]{background:#e5e7eb;color:#000;margin-right:8px}.detail-btn-delete[data-v-9c25445a]{background:#f87171;color:#fff}.detail-actions[data-v-9c25445a]{margin-top:20px}.detail-back-button[data-v-9c25445a]{padding:8px 12px;border-radius:6px;border:none;background:#e5e7eb;cursor:pointer;font-size:1rem;margin-bottom:10px}@media (max-width: 600px){.member-detail-page[data-v-9c25445a]{padding:0 8px}.detail-card[data-v-9c25445a]{padding:16px}.detail-title[data-v-9c25445a]{font-size:1.2rem}.detail-btn[data-v-9c25445a]{padding:6px 10px;font-size:.9rem}}.member-form-page[data-v-9c0a8d33]{padding:20px;width:90%;max-width:800px;margin:0 auto}.form-container[data-v-9c0a8d33]{display:flex;flex-direction:column}.form-title[data-v-9c0a8d33]{font-size:1.5rem;margin-bottom:1rem;text-align:center}.form-label[data-v-9c0a8d33]{display:block;margin-top:1rem;margin-bottom:.5rem;font-weight:700}.form-input[data-v-9c0a8d33],.form-select[data-v-9c0a8d33],.form-textarea[data-v-9c0a8d33]{width:100%;padding:.75rem;border-radius:.5rem;border:1px solid #ccc;box-sizing:border-box;margin-bottom:1rem;font-size:1rem}.form-textarea[data-v-9c0a8d33]{min-height:100px}.form-btn[data-v-9c0a8d33]{padding:.75rem 1.25rem;border:none;border-radius:.5rem;cursor:pointer;font-size:1rem}.form-btn-primary[data-v-9c0a8d33]{background-color:#2563eb;color:#fff;margin-left:.75rem}.form-btn-cancel[data-v-9c0a8d33]{background-color:#e5e7eb;color:#000}.skill-selection[data-v-9c0a8d33]{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.checkbox-label[data-v-9c0a8d33]{display:flex;align-items:center;gap:.5rem}.checkbox-input[data-v-9c0a8d33]{width:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.skill-name[data-v-9c0a8d33]{flex:1}.form-actions[data-v-9c0a8d33]{margin-top:1.5rem;text-align:right}@media (max-width: 600px){.member-form-page[data-v-9c0a8d33]{padding:10px}.form-title[data-v-9c0a8d33]{font-size:1.2rem}.form-input[data-v-9c0a8d33],.form-select[data-v-9c0a8d33],.form-textarea[data-v-9c0a8d33],.form-btn[data-v-9c0a8d33]{font-size:.9rem}.form-actions[data-v-9c0a8d33]{text-align:center}.form-btn[data-v-9c0a8d33]{margin:.5rem}.skill-selection[data-v-9c0a8d33]{flex-direction:column;align-items:flex-start}}.login-container[data-v-693246c2]{display:flex;align-items:center;justify-content:center;height:100vh;background:linear-gradient(135deg,#6e8efb,#a777e4)}.login-box[data-v-693246c2]{background:#fff;padding:40px 30px;border-radius:12px;box-shadow:0 8px 16px #0003;width:350px;max-width:90%;text-align:center}.login-title[data-v-693246c2]{margin-bottom:24px;font-size:24px;font-weight:600;color:#333}.login-input[data-v-693246c2]{width:100%;padding:12px 15px;margin-bottom:16px;border:1px solid #ccc;border-radius:8px;font-size:14px;transition:border-color .3s;box-sizing:border-box}.login-input[data-v-693246c2]:focus{border-color:#6e8efb;outline:none}.login-btn[data-v-693246c2]{width:100%;padding:14px;background-color:#6e8efb;color:#fff;border:none;border-radius:8px;font-size:16px;cursor:pointer;margin-bottom:12px;transition:background-color .3s,transform .2s}.login-btn[data-v-693246c2]:hover{background-color:#5a78e4;transform:translateY(-2px)}.register-btn[data-v-693246c2]{width:100%;padding:12px;background-color:#ccc;color:#333;border:none;border-radius:8px;font-size:14px;cursor:pointer}.register-btn[data-v-693246c2]:hover{background-color:#999}.register-container[data-v-1f2ddfec]{display:flex;align-items:center;justify-content:center;height:100vh;background:linear-gradient(135deg,#6e8efb,#a777e4)}.register-box[data-v-1f2ddfec]{background:#fff;padding:40px 30px;border-radius:12px;box-shadow:0 8px 16px #0003;width:350px;max-width:90%;text-align:center}.register-title[data-v-1f2ddfec]{margin-bottom:24px;font-size:24px;font-weight:600;color:#333}.register-input[data-v-1f2ddfec]{width:100%;padding:12px 15px;margin-bottom:16px;border:1px solid #ccc;border-radius:8px;font-size:14px;transition:border-color .3s;box-sizing:border-box}.register-input[data-v-1f2ddfec]:focus{border-color:#6e8efb;outline:none}.register-btn[data-v-1f2ddfec]{width:100%;padding:14px;background-color:#6e8efb;color:#fff;border:none;border-radius:8px;font-size:16px;cursor:pointer;margin-top:8px;transition:background-color .3s,transform .2s}.register-btn[data-v-1f2ddfec]:hover{background-color:#5a78e4;transform:translateY(-2px)}.tips[data-v-1f2ddfec]{margin-top:16px;font-size:14px;color:#555}.tips a[data-v-1f2ddfec]{cursor:pointer;color:#2563eb;text-decoration:underline}.page[data-v-09e1f4cd]{padding:20px}.tbl[data-v-09e1f4cd]{width:80%;margin:auto;border-collapse:collapse}.tbl th[data-v-09e1f4cd],.tbl td[data-v-09e1f4cd]{border:1px solid #e0e0e0;text-align:center;padding:8px}.btn[data-v-09e1f4cd]{padding:8px 16px;border:none;border-radius:4px;cursor:pointer}.primary[data-v-09e1f4cd]{background-color:#4caf50;color:#fff}.page[data-v-acfb33ce]{padding:20px;max-width:400px;margin:auto}.input[data-v-acfb33ce]{width:100%;padding:8px;border-radius:4px;border:1px solid #ccc;box-sizing:border-box}.btn[data-v-acfb33ce]{padding:8px 16px;border:none;border-radius:4px;background:#2563eb;color:#fff;cursor:pointer}.btn.primary[data-v-acfb33ce]:hover{background-color:#45a049}
