html:has(.admin-layout)::-webkit-scrollbar,.admin-layout ::-webkit-scrollbar{width:8px}html:has(.admin-layout)::-webkit-scrollbar-track,.admin-layout ::-webkit-scrollbar-track{background:#2a2a2e}html:has(.admin-layout)::-webkit-scrollbar-thumb,.admin-layout ::-webkit-scrollbar-thumb{background:#5eeeb4;border-radius:4px}html:has(.admin-layout)::-webkit-scrollbar-thumb:hover,.admin-layout ::-webkit-scrollbar-thumb:hover{background:#4dd9a0}html:has(.admin-layout){scrollbar-color:#5eeeb4 #2a2a2e;scrollbar-width:thin}.admin-layout,.admin-layout *,.admin-login,.admin-login *{cursor:auto}.admin-layout button,.admin-layout a,.admin-layout [role=button],.admin-layout select,.admin-layout label,.admin-tab,.admin-mobile-tab,.admin-mobile-toggle,.admin-btn,.admin-login-btn,.admin-btn-logout,.admin-sidebar-tab{cursor:pointer!important}.admin-layout input,.admin-layout textarea{cursor:text!important}.admin-layout{display:flex;min-height:100vh;min-height:100dvh;background:#09090b;color:#e4e4e7;font-family:GmarketSans,Outfit,sans-serif}.admin-sidebar{width:220px;min-height:100vh;min-height:100dvh;background:#0f0f12;border-right:1px solid #1c1c1f;display:flex;flex-direction:column;position:fixed;top:0;left:0;z-index:100}.admin-sidebar-brand{font-size:1.3rem;font-weight:700;letter-spacing:5px;color:#5eeeb4;padding:24px 24px 20px}.admin-sidebar-nav{flex:1;display:flex;flex-direction:column;gap:2px;padding:0 8px;overflow-y:auto}.admin-sidebar-tab{display:block;width:100%;padding:10px 16px;background:none;border:none;border-radius:6px;color:#71717a;font-size:.78rem;font-weight:500;font-family:inherit;text-align:left;text-transform:uppercase;letter-spacing:1.2px;transition:all .15s}.admin-sidebar-tab:hover{color:#a1a1aa;background:#18181b}.admin-sidebar-tab.active{color:#fafafa;background:#18181b;font-weight:700}.admin-sidebar-group{margin-top:4px}.admin-sidebar-group-toggle{display:flex!important;justify-content:space-between;align-items:center}.admin-sidebar-arrow{font-size:.7rem;color:#52525b}.admin-sidebar-sub{padding-left:28px!important;font-size:.74rem!important;color:#52525b!important}.admin-sidebar-sub:hover{color:#a1a1aa!important}.admin-sidebar-sub.active{color:#fafafa!important}.admin-sidebar-tab.active:before{content:"";display:inline-block;width:3px;height:12px;background:#5eeeb4;border-radius:2px;margin-right:8px;vertical-align:middle}.admin-sidebar-footer{padding:16px;border-top:1px solid #1c1c1f;display:flex;flex-direction:column;gap:12px}.admin-topbar{display:none}.admin-content{flex:1;padding:32px 48px;margin-left:220px;max-width:1400px;width:calc(100% - 220px)}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:16px;flex-wrap:wrap}.admin-header h2{font-size:1.3rem;font-weight:700;color:#fafafa;margin:0;text-transform:uppercase;letter-spacing:1.5px}.admin-btn{padding:9px 20px;border:none;border-radius:6px;font-size:.74rem;font-weight:700;transition:all .15s;font-family:inherit;white-space:nowrap;text-transform:uppercase;letter-spacing:.8px}.admin-btn:disabled{opacity:.35;cursor:not-allowed!important}.admin-btn-primary{background:#5eeeb4;color:#09090b;padding:.45rem 1rem;border:none;border-radius:8px;font-size:.8rem;font-weight:700;cursor:pointer}.admin-btn-primary:hover:not(:disabled){background:#86f5cc}.admin-btn-danger{background:none;color:#ef4444;border:1px solid #7f1d1d;padding:.35rem .75rem;border-radius:8px;font-size:.75rem;font-weight:600;cursor:pointer}.admin-btn-danger:hover:not(:disabled){background:#7f1d1d;color:#fca5a5;border-color:transparent}.admin-btn-pkg{background:#a855f726;color:#c084fc;border:1px solid #7c3aed}.admin-btn-pkg:hover:not(:disabled){background:#a855f740}.admin-btn-secondary{background:#18181b;color:#a1a1aa;border:1px solid #27272a}.admin-btn-secondary:hover:not(:disabled){background:#27272a;color:#d4d4d8}.admin-btn+.admin-btn{margin-left:8px}.admin-user{display:flex;align-items:center;gap:10px}.admin-user-avatar{width:28px;height:28px;border-radius:50%;background:#27272a;border:1px solid #3f3f46;flex-shrink:0}.admin-user-name{font-size:.75rem;color:#71717a;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-btn-logout{padding:6px 14px;background:none;border:1px solid #27272a;border-radius:6px;color:#52525b;font-size:.7rem;font-weight:700;font-family:inherit;text-transform:uppercase;letter-spacing:1px;transition:all .15s;width:100%;text-align:center}.admin-btn-logout:hover{border-color:#ef4444;color:#ef4444}.admin-lang-toggle{display:flex;gap:4px;margin-bottom:8px}.admin-lang-btn{flex:1;padding:5px 0;border:1px solid #27272a;border-radius:5px;background:none;color:#52525b;font-size:.7rem;font-weight:700;font-family:inherit;cursor:pointer;transition:all .2s}.admin-lang-btn.active{background:#5eeeb41f;border-color:#5eeeb4;color:#5eeeb4}.admin-lang-btn:hover:not(.active){border-color:#3f3f46;color:#a1a1aa}.admin-table{width:100%;border-collapse:collapse;margin-bottom:24px}.admin-table th,.admin-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #18181b;font-size:.82rem}.admin-table td:last-child{display:flex;gap:6px;align-items:center}.admin-table th{color:#52525b;font-weight:700;text-transform:uppercase;font-size:.67rem;letter-spacing:1.5px;border-bottom-color:#27272a}.admin-table tr:hover td{background:#0f0f12}.admin-table img{width:44px;height:44px;object-fit:cover;border-radius:6px;background:#18181b}.admin-form{background:#0f0f12;border:1px solid #1c1c1f;border-radius:10px;padding:28px;margin-bottom:24px}.admin-form h3{margin:0 0 22px;font-size:.82rem;font-weight:700;color:#5eeeb4;text-transform:uppercase;letter-spacing:1.5px}.admin-field{margin-bottom:16px}.admin-field label{display:block;font-size:.67rem;color:#52525b;margin-bottom:6px;text-transform:uppercase;letter-spacing:1.2px;font-weight:700}.admin-field input,.admin-field textarea,.admin-field select{width:100%;padding:10px 14px;background:#09090b;border:1px solid #27272a;border-radius:6px;color:#d4d4d8;font-size:.85rem;font-family:inherit;transition:border-color .15s;box-sizing:border-box}.admin-field input:focus,.admin-field textarea:focus,.admin-field select:focus{outline:none;border-color:#5eeeb4}.admin-field textarea{min-height:80px;resize:vertical}.admin-field input::placeholder,.admin-field textarea::placeholder{color:#3f3f46}.admin-form-actions{display:flex;gap:10px;margin-top:20px}.schedule-day-editor{background:#0f0f12;border:1px solid #1c1c1f;border-radius:10px;padding:20px;margin-bottom:12px}.schedule-day-editor h4{margin:0 0 14px;color:#5eeeb4;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:1.2px}.schedule-room{margin-bottom:14px}.schedule-room h5{color:#52525b;font-size:.67rem;font-weight:700;margin:0 0 8px;text-transform:uppercase;letter-spacing:1.2px}.schedule-item-row{display:flex;gap:8px;margin-bottom:8px;align-items:center;flex-wrap:wrap}.schedule-item-row input,.schedule-item-row select{padding:8px 10px;background:#09090b;border:1px solid #27272a;border-radius:6px;color:#d4d4d8;font-size:.8rem;font-family:inherit}.schedule-item-row input{flex:1;min-width:0}.schedule-item-row select{width:120px}.schedule-item-row .admin-btn{padding:6px 10px;font-size:.68rem}.admin-status{padding:12px 18px;border-radius:8px;margin-bottom:18px;font-size:.8rem;font-weight:500}.admin-status.success{background:#5eeeb40f;border:1px solid rgba(94,238,180,.12);color:#5eeeb4}.admin-status.error{background:#ef44440f;border:1px solid rgba(239,68,68,.12);color:#ef4444}.admin-loading{text-align:center;padding:80px 20px;color:#3f3f46;font-size:.8rem;text-transform:uppercase;letter-spacing:2px}.admin-chip{display:inline-block;padding:3px 8px;border-radius:4px;font-size:.68rem;background:#18181b;color:#71717a;margin-right:4px;margin-bottom:4px;font-weight:500}.admin-login,.admin-login *{cursor:auto}.admin-login button{cursor:pointer!important}.admin-login{display:flex;justify-content:center;align-items:center;min-height:100vh;min-height:100dvh;background:#09090b;font-family:GmarketSans,Outfit,sans-serif;padding:20px}.admin-login-card{background:#0f0f12;border:1px solid #1c1c1f;border-radius:14px;padding:56px 48px;text-align:center;max-width:400px;width:100%}.admin-login-card h1{color:#5eeeb4;letter-spacing:8px;font-size:2rem;font-weight:700;margin:0 0 6px}.admin-login-card p{color:#52525b;margin:0 0 32px;font-size:.8rem;letter-spacing:.5px}.admin-login-btn{display:inline-flex;align-items:center;gap:10px;padding:12px 32px;background:#fafafa;color:#09090b;border:none;border-radius:8px;font-size:.85rem;font-weight:700;font-family:inherit;transition:all .15s;text-transform:uppercase;letter-spacing:1px}.admin-login-btn:hover{background:#5eeeb4}.img-upload-zone{border:1px dashed #27272a;border-radius:8px;background:#09090b;min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:border-color .15s,background .15s;position:relative;overflow:hidden}.img-upload-zone:hover,.img-upload-zone:focus{border-color:#3f3f46;outline:none}.img-upload-zone.drag-over{border-color:#5eeeb4;background:#5eeeb40a}.img-upload-placeholder{color:#3f3f46;font-size:.78rem;text-transform:uppercase;letter-spacing:1px;padding:32px 16px;text-align:center}.img-upload-progress{color:#5eeeb4;font-weight:700;font-size:1.1rem}.img-upload-preview{position:relative;width:100%;display:flex;justify-content:center;padding:8px}.img-upload-preview img{max-height:180px;max-width:100%;object-fit:contain;border-radius:6px}.img-upload-remove{position:absolute;top:12px;right:12px;width:24px;height:24px;border-radius:50%;background:#ef4444e6;color:#fff;border:none;font-size:.65rem;font-weight:700;font-family:inherit;display:flex;align-items:center;justify-content:center;transition:background .15s}.img-upload-remove:hover{background:#ef4444}.img-upload-bar{position:absolute;bottom:0;left:0;right:0;height:3px;background:#18181b}.img-upload-bar-fill{height:100%;background:#5eeeb4;transition:width .2s}.img-upload-error{display:block;margin-top:6px;font-size:.72rem;color:#ef4444}.admin-mobile-overlay,.admin-mobile-toggle{display:none}.admin-subtabs{display:flex;gap:4px;margin-bottom:20px;border-bottom:1px solid #27272a;padding-bottom:0}.admin-subtab{padding:10px 20px;background:none;border:none;color:#71717a;font-size:.82rem;font-weight:500;font-family:inherit;text-transform:uppercase;letter-spacing:1px;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.admin-subtab:hover{color:#e4e4e7}.admin-subtab.active{color:#e4e4e7;border-bottom-color:#5eeeb4}.admin-chip.jongwan{background:#5eeeb426;color:#5eeeb4}.admin-chip.kim{background:#7b61ff26;color:#7b61ff}.admin-chip.pureum{background:#ff61d226;color:#ff61d2}.admin-chip.tam{background:#ffb43226;color:#ffb432}.admin-chip.yoon{background:#ff336626;color:#f36}.admin-chip.linh{background:#a855f726;color:#a855f7}.admin-chip.general{background:#ffffff14;color:#a1a1aa}.instructor-color-picker{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.instructor-color-btn{padding:6px 14px;border-radius:6px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;border:2px solid transparent;transition:border-color .15s,opacity .15s;opacity:.5}.instructor-color-btn.selected{opacity:1;border-color:currentColor}.instructor-color-btn.jongwan{background:#5eeeb426;color:#5eeeb4}.instructor-color-btn.kim{background:#7b61ff26;color:#7b61ff}.instructor-color-btn.pureum{background:#ff61d226;color:#ff61d2}.instructor-color-btn.tam{background:#ffb43226;color:#ffb432}.instructor-color-btn.yoon{background:#ff336626;color:#f36}.instructor-color-btn.linh{background:#a855f726;color:#a855f7}.instructor-color-btn.general{background:#ffffff14;color:#a1a1aa}.instructor-lang-picker{display:flex;flex-wrap:wrap;gap:8px}.instructor-lang-btn{padding:6px 14px;border-radius:6px;border:1px solid #27272a;background:#ffffff0a;color:#a1a1aa;font-size:.8rem;cursor:pointer;opacity:.5;transition:all .2s}.instructor-lang-btn:hover{opacity:.8}.instructor-lang-btn.selected{opacity:1;border-color:var(--accent, #5eeeb4);background:#5eeeb41f;color:#5eeeb4}.crew-drag-row{cursor:grab;transition:background .15s}.crew-drag-row:active{cursor:grabbing}.crew-drag-row:hover{background:#5eeeb40a}.crew-drag-row.dragging{opacity:.4}.crew-drag-handle{color:#52525b;font-size:1.1rem;cursor:grab;-webkit-user-select:none;user-select:none;text-align:center;width:32px}.crew-drag-handle:active{cursor:grabbing}.admin-modal-overlay{position:fixed;inset:0;background:#000000bf;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;animation:adminModalFadeIn .15s ease}@keyframes adminModalFadeIn{0%{opacity:0}to{opacity:1}}.admin-modal{background:#0f0f12;border:1px solid #1c1c1f;border-radius:14px;width:100%;max-width:860px;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);display:flex;flex-direction:column;animation:adminModalSlideUp .2s ease;box-shadow:0 20px 60px #00000080}@keyframes adminModalSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.admin-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #1c1c1f;flex-shrink:0}.admin-modal-header h3{margin:0;font-size:.85rem;font-weight:700;color:#5eeeb4;text-transform:uppercase;letter-spacing:1.5px}.admin-modal-close{width:32px;height:32px;border-radius:6px;background:none;border:1px solid #27272a;color:#71717a;font-size:1.1rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;flex-shrink:0}.admin-modal-close:hover{border-color:#ef4444;color:#ef4444}.admin-modal-body{flex:1;overflow-y:auto;padding:24px}.admin-modal-body::-webkit-scrollbar{width:5px}.admin-modal-body::-webkit-scrollbar-track{background:transparent}.admin-modal-body::-webkit-scrollbar-thumb{background:#27272a;border-radius:3px}.admin-modal-footer{display:flex;gap:10px;padding:16px 24px;border-top:1px solid #1c1c1f;flex-shrink:0}.classes-filters{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap;align-items:center}.classes-filter-input{flex:1;min-width:180px;padding:9px 14px;background:#0f0f12;border:1px solid #27272a;border-radius:6px;color:#d4d4d8;font-size:.82rem;font-family:inherit;transition:border-color .15s}.classes-filter-input:focus{outline:none;border-color:#5eeeb4}.classes-filter-input::placeholder{color:#3f3f46}.classes-filter-select{padding:9px 14px;background:#0f0f12;border:1px solid #27272a;border-radius:6px;color:#d4d4d8;font-size:.82rem;font-family:inherit;min-width:140px}.classes-filter-select:focus{outline:none;border-color:#5eeeb4}.classes-edit-form{position:relative}.classes-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.classes-form-section-title{font-size:.7rem;font-weight:700;color:#5eeeb4;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid #1c1c1f}.classes-form-row{display:flex;gap:12px}.classes-days-grid{display:flex;gap:6px;flex-wrap:wrap}.classes-day-btn{min-width:48px;padding:7px 10px;background:#09090b;border:1px solid #27272a;border-radius:6px;color:#52525b;font-size:.7rem;font-weight:700;font-family:inherit;text-transform:uppercase;letter-spacing:.5px;transition:all .15s;cursor:pointer}.classes-day-btn:hover{border-color:#3f3f46;color:#a1a1aa}.classes-day-btn.active{background:#5eeeb4;border-color:#5eeeb4;color:#09090b}.searchable-list{display:flex;flex-direction:column;gap:0}.searchable-list-input{width:100%;padding:9px 14px;background:#09090b;border:1px solid #27272a;border-radius:6px 6px 0 0;color:#d4d4d8;font-size:.82rem;font-family:inherit;box-sizing:border-box;transition:border-color .15s}.searchable-list-input:focus{outline:none;border-color:#5eeeb4}.searchable-list-input::placeholder{color:#3f3f46}.searchable-list-results{max-height:180px;overflow-y:auto;border:1px solid #27272a;border-top:none;border-radius:0 0 6px 6px;background:#09090b}.searchable-list-results::-webkit-scrollbar{width:4px}.searchable-list-results::-webkit-scrollbar-track{background:transparent}.searchable-list-results::-webkit-scrollbar-thumb{background:#27272a;border-radius:2px}.searchable-list-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 14px;background:none;border:none;border-bottom:1px solid #18181b;color:#a1a1aa;font-size:.8rem;font-family:inherit;text-align:left;cursor:pointer;transition:background .1s,color .1s}.searchable-list-item:last-child{border-bottom:none}.searchable-list-item:hover{background:#18181b;color:#e4e4e7}.searchable-list-item.selected{color:#5eeeb4}.searchable-list-check{width:16px;height:16px;border-radius:3px;border:1px solid #3f3f46;display:flex;align-items:center;justify-content:center;font-size:.65rem;flex-shrink:0;transition:all .15s}.searchable-list-item.selected .searchable-list-check{background:#5eeeb4;border-color:#5eeeb4;color:#09090b;font-weight:700}.searchable-list-empty{padding:16px;text-align:center;color:#3f3f46;font-size:.78rem}.searchable-list-selected{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.chip-remove{display:inline-flex;align-items:center;justify-content:center;margin-left:4px;width:14px;height:14px;border-radius:50%;background:#ffffff1a;border:none;color:inherit;font-size:.6rem;cursor:pointer;padding:0;line-height:1;transition:background .15s}.chip-remove:hover{background:#ef444466}.classes-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px}.classes-card{background:#0f0f12;border:1px solid #1c1c1f;border-radius:10px;overflow:hidden;transition:border-color .15s}.classes-card:hover{border-color:#27272a}.classes-card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 18px 12px;gap:12px}.classes-card-name{font-size:.9rem;font-weight:700;color:#fafafa;margin-bottom:6px}.classes-card-meta{display:flex;gap:4px;flex-wrap:wrap}.classes-card-actions{display:flex;gap:6px;flex-shrink:0}.classes-card-actions .admin-btn{padding:5px 12px;font-size:.68rem}.classes-card-actions .admin-btn+.admin-btn{margin-left:0}.classes-card-body{padding:0 18px 16px;display:flex;flex-direction:column;gap:8px}.classes-card-row{display:flex;align-items:center;gap:10px;font-size:.78rem;color:#a1a1aa}.classes-card-label{color:#52525b;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;min-width:75px;flex-shrink:0}.classes-card-chips{display:flex;gap:4px;flex-wrap:wrap}.multilang-group{display:flex;flex-direction:column;gap:6px}.multilang-row{display:flex;align-items:center;gap:8px}.multilang-row input,.multilang-row textarea{flex:1;padding:9px 14px;background:#09090b;border:1px solid #27272a;border-radius:6px;color:#d4d4d8;font-size:.82rem;font-family:inherit;transition:border-color .15s;box-sizing:border-box}.multilang-row input:focus,.multilang-row textarea:focus{outline:none;border-color:#5eeeb4}.multilang-row input::placeholder,.multilang-row textarea::placeholder{color:#3f3f46}.multilang-row textarea{min-height:48px;resize:vertical}.multilang-badge{display:inline-flex;align-items:center;justify-content:center;min-width:30px;padding:3px 6px;background:#18181b;border:1px solid #27272a;border-radius:4px;color:#71717a;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}.classes-empty{grid-column:1 / -1;text-align:center;padding:48px 20px;color:#3f3f46;font-size:.82rem}@media(max-width:768px){.admin-layout{flex-direction:column}.admin-sidebar{display:none}.admin-topbar{display:flex;align-items:center;justify-content:space-between;padding:0 16px;height:56px;background:#09090b;border-bottom:1px solid #1c1c1f;position:sticky;top:0;z-index:100;flex-shrink:0}.admin-brand{font-size:1.3rem;font-weight:700;letter-spacing:5px;color:#5eeeb4}.admin-mobile-back{background:none;border:none;color:#5eeeb4;font-size:1.4rem;cursor:pointer;padding:4px 8px}.admin-mobile-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:1px solid #27272a;border-radius:8px;color:#71717a;font-size:1.2rem;transition:all .15s}.admin-mobile-toggle:active{border-color:#5eeeb4;color:#5eeeb4}.admin-mobile-overlay{display:block;position:fixed;inset:0;background:#000c;z-index:200;animation:adminFade .12s ease}@keyframes adminFade{0%{opacity:0}to{opacity:1}}.admin-mobile-dropdown{position:absolute;top:0;right:0;width:260px;max-width:80vw;height:100%;background:#0f0f12;border-left:1px solid #1c1c1f;display:flex;flex-direction:column;animation:adminSlide .18s ease;overflow-y:auto;padding:24px 0 0}@keyframes adminSlide{0%{transform:translate(100%)}to{transform:translate(0)}}.admin-mobile-tab{display:block;width:100%;padding:16px 28px;background:none;border:none;border-left:2px solid transparent;color:#52525b;font-size:.8rem;font-weight:500;font-family:inherit;text-align:left;text-transform:uppercase;letter-spacing:1.2px;transition:all .15s}.admin-mobile-tab:active{background:#18181b}.admin-mobile-tab.active{color:#5eeeb4;border-left-color:#5eeeb4;font-weight:700}.admin-mobile-footer{margin-top:auto;padding:20px 24px;border-top:1px solid #1c1c1f;display:flex;flex-direction:column;gap:14px}.admin-mobile-footer .admin-user{gap:10px}.admin-mobile-footer .admin-user-name{max-width:none}.admin-mobile-footer .admin-btn-logout{width:100%;text-align:center}.admin-content{padding:24px 16px;margin-left:0;width:100%}.admin-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:22px}.admin-header h2{font-size:1.1rem}.admin-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-table th,.admin-table td{padding:10px 12px;font-size:.76rem;white-space:nowrap}.admin-form{padding:20px 16px}.admin-form-actions{flex-direction:column}.admin-form-actions .admin-btn{width:100%;text-align:center;margin-left:0!important;padding:13px}.admin-btn+.admin-btn{margin-left:0}.admin-modal-overlay{padding:0;align-items:flex-end}.admin-modal{max-width:100%;max-height:95vh;max-height:95dvh;border-radius:14px 14px 0 0}.admin-modal-header{padding:16px 18px}.admin-modal-body{padding:18px}.admin-modal-footer{padding:14px 18px;flex-direction:column}.admin-modal-footer .admin-btn{width:100%;text-align:center;margin-left:0!important;padding:13px}.classes-form-grid{grid-template-columns:1fr;gap:20px}.classes-form-row{flex-direction:column;gap:0}.classes-card-grid{grid-template-columns:1fr}.classes-filters{flex-direction:column}.classes-filter-input{min-width:0;width:100%}.classes-filter-select{width:100%}.schedule-item-row input{width:100%;flex:none}.schedule-item-row select{width:100%}.schedule-day-editor{padding:16px 14px}.admin-login-card{padding:40px 24px}.admin-login-card h1{font-size:1.6rem;letter-spacing:6px}}@media(max-width:400px){.admin-content{padding:18px 12px}.admin-header h2{font-size:1rem}.admin-btn{padding:10px 14px;font-size:.72rem}}.attendance-layout{display:flex;gap:20px;min-height:70vh}.attendance-class-list{width:320px;flex-shrink:0;background:#0f0f12;border:1px solid #1c1c1f;border-radius:10px;padding:16px;overflow-y:scroll;max-height:80vh;scrollbar-color:#5eeeb4 #2a2a2e;scrollbar-width:thin}.attendance-class-list::-webkit-scrollbar{width:8px}.attendance-class-list::-webkit-scrollbar-track{background:#2a2a2e;border-radius:4px}.attendance-class-list::-webkit-scrollbar-thumb{background:#5eeeb4;border-radius:4px}.attendance-class-list::-webkit-scrollbar-thumb:hover{background:#4dd9a0}.attendance-section-title{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:#a1a1aa;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.attendance-class-items{display:flex;flex-direction:column;gap:4px}.attendance-class-item{display:block;width:100%;padding:12px 14px;background:none;border:1px solid transparent;border-radius:8px;color:#e4e4e7;text-align:left;font-family:inherit;cursor:pointer;transition:all .15s}.attendance-class-item:hover{background:#18181b;border-color:#27272a}.attendance-class-item.active{background:#18181b;border-color:#5eeeb4}.attendance-class-name{font-size:.9rem;font-weight:600;margin-bottom:4px}.attendance-class-meta{display:flex;gap:8px;font-size:.72rem;color:#71717a}.attendance-panel{flex:1;min-width:0}.attendance-empty{display:flex;align-items:center;justify-content:center;min-height:400px;color:#52525b;font-size:.95rem}.attendance-panel-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #1c1c1f}.attendance-tab-bar{display:flex;gap:0;margin-bottom:16px;border-bottom:1px solid #27272a}.attendance-tab-btn{background:none;border:none;color:#71717a;font-size:.85rem;padding:8px 16px;cursor:pointer;border-bottom:2px solid transparent;transition:all .15s}.attendance-tab-btn:hover{color:#d4d4d8}.attendance-tab-btn.active{color:#5eeeb4;border-bottom-color:#5eeeb4}.attendance-section{background:#0f0f12;border:1px solid #1c1c1f;border-radius:10px;padding:16px;margin-bottom:16px}.attendance-date-input{padding:6px 10px;background:#18181b;border:1px solid #27272a;border-radius:6px;color:#e4e4e7;font-family:inherit;font-size:.78rem}.attendance-date-input::-webkit-calendar-picker-indicator{filter:invert(1)}.attendance-student-list{margin-top:12px;overflow-y:auto;max-height:60vh}.attendance-student-list::-webkit-scrollbar{width:8px}.attendance-student-list::-webkit-scrollbar-track{background:#2a2a2e;border-radius:4px}.attendance-student-list::-webkit-scrollbar-thumb{background:#5eeeb4;border-radius:4px}.attendance-student-list::-webkit-scrollbar-thumb:hover{background:#4dd9a0}.attendance-student-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid #1c1c1f}.attendance-student-row:last-child{border-bottom:none}.attendance-student-info{display:flex;flex-direction:column;gap:2px}.attendance-student-name{font-size:.88rem;font-weight:500;color:#e4e4e7}.attendance-student-email{font-size:.72rem;color:#52525b}.attendance-check-btn{width:36px;height:36px;border-radius:50%;border:2px solid #27272a;background:none;color:#52525b;font-size:1.1rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;font-family:inherit}.attendance-check-btn:hover{border-color:#5eeeb4;color:#5eeeb4}.attendance-check-btn.checked{background:#5eeeb4;border-color:#5eeeb4;color:#09090b;font-weight:700}.attendance-count{font-size:.88rem;font-weight:600;color:#5eeeb4;min-width:40px;text-align:right}.attendance-clickable{cursor:pointer;transition:background .1s}.attendance-clickable:hover{background:#ffffff08}.attendance-count.has-detail{cursor:pointer}.attendance-summary-item{border-bottom:1px solid #1c1c1f}.attendance-summary-item:last-child{border-bottom:none}.attendance-summary-item .attendance-student-row{border-bottom:none}.attendance-dates{display:flex;flex-wrap:wrap;gap:6px;padding:4px 12px 12px}.attendance-date-chip{padding:4px 10px;background:#5eeeb41a;border:1px solid rgba(94,238,180,.2);border-radius:6px;color:#5eeeb4;font-size:.72rem;font-weight:500}.attendance-student-fee{font-size:.7rem;color:#71717a;margin-left:8px}.attendance-fee-total{width:100%;margin-top:8px;padding:10px 14px;background:#5eeeb40f;border:1px solid rgba(94,238,180,.15);border-radius:8px;font-size:.82rem;color:#e4e4e7}.attendance-fee-total strong{color:#5eeeb4;margin-left:4px}.attendance-fee-calc{font-size:.72rem;color:#71717a;margin-left:8px}.attendance-memo-label{font-size:.72rem;font-weight:600;color:#71717a;letter-spacing:.05em;margin-bottom:6px}.attendance-payment-row{width:100%;display:flex;align-items:center;gap:10px;margin-top:8px}.attendance-payment-btn{padding:6px 14px;border-radius:6px;font-size:.78rem;font-weight:600;cursor:pointer;border:1px solid;transition:all .15s}.attendance-payment-btn.unpaid{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.attendance-payment-btn.unpaid:hover{background:#ef444433}.attendance-payment-btn.paid{background:#5eeeb41a;border-color:#5eeeb44d;color:#5eeeb4}.attendance-payment-btn.paid:hover{background:#5eeeb433}.attendance-payment-meta{color:#52525b;font-size:.72rem}.attendance-payment-section{width:100%}.attendance-payment-btn.pkg-toggle{background:#a855f71a;border-color:#a855f74d;color:#a855f7}.attendance-payment-btn.pkg-toggle:hover{background:#a855f733}.attendance-pkg-form{width:100%;margin-top:8px;padding:12px;background:#a855f70d;border:1px solid rgba(168,85,247,.15);border-radius:8px;display:flex;flex-direction:column;gap:8px}.attendance-pkg-row{display:flex;gap:8px;align-items:center}.attendance-pkg-input{flex:1;padding:7px 10px;background:#18181b;border:1px solid #27272a;border-radius:6px;color:#e4e4e7;font-size:.78rem}.attendance-pkg-input::placeholder{color:#3f3f46}.attendance-pkg-note{flex:2}.attendance-pkg-preview{font-size:.72rem;color:#a855f7;padding:4px 0}.attendance-memos{width:100%;margin-top:10px;padding-top:10px;border-top:1px solid #27272a}.attendance-memo-item{display:flex;align-items:flex-start;gap:8px;padding:6px 0;font-size:.78rem;border-bottom:1px solid rgba(255,255,255,.04)}.attendance-memo-text{flex:1;color:#e4e4e7;line-height:1.4}.attendance-memo-meta{white-space:nowrap;color:#52525b;font-size:.68rem}.attendance-memo-del{background:none;border:none;color:#52525b;cursor:pointer;font-size:.85rem;padding:0 2px;line-height:1}.attendance-memo-del:hover{color:#ef4444}.attendance-memo-input-row{display:flex;gap:6px;margin-top:8px}.attendance-memo-input{flex:1;background:#18181b;border:1px solid #27272a;border-radius:6px;padding:6px 10px;color:#e4e4e7;font-size:.78rem}.attendance-memo-input::placeholder{color:#3f3f46}.attendance-memo-add{background:#5eeeb41f;border:1px solid rgba(94,238,180,.3);border-radius:6px;color:#5eeeb4;padding:6px 12px;font-size:.75rem;cursor:pointer;white-space:nowrap}.attendance-memo-add:hover{background:#5eeeb433}.attendance-student-name.attendance-clickable{cursor:pointer;text-decoration:underline;text-decoration-color:#ffffff26;text-underline-offset:2px}.attendance-student-name.attendance-clickable:hover{color:#5eeeb4;text-decoration-color:#5eeeb4}@media(max-width:768px){.attendance-layout{flex-direction:column;gap:12px;min-height:auto}.attendance-class-list{width:100%;max-height:220px;padding:12px;border-radius:8px}.attendance-class-item{padding:10px 12px}.attendance-class-name{font-size:.85rem}.attendance-panel-header{margin-bottom:12px;padding-bottom:12px}.attendance-panel-header h3{font-size:1rem}.attendance-tab-bar{margin-bottom:12px}.attendance-tab-btn{flex:1;text-align:center;font-size:.82rem;padding:10px 8px}.attendance-section-title{font-size:.78rem;flex-wrap:wrap;gap:6px}.attendance-date-input{font-size:.78rem;padding:5px 8px}.attendance-student-row{padding:10px 0}.attendance-student-name{font-size:.84rem}.attendance-student-email,.attendance-student-fee{font-size:.68rem}.attendance-check-btn{width:40px;height:40px;font-size:1.1rem}.attendance-count{font-size:.82rem;min-width:48px}.attendance-summary-item{border-radius:6px}.attendance-date-chip{font-size:.68rem;padding:3px 8px}.attendance-fee-total{font-size:.78rem;flex-wrap:wrap}.attendance-fee-calc{font-size:.68rem}.attendance-payment-row{flex-wrap:wrap;gap:6px}.attendance-payment-btn{font-size:.72rem;padding:7px 12px;flex:1;text-align:center}.attendance-payment-meta{width:100%;font-size:.65rem}.attendance-pkg-form{padding:10px}.attendance-pkg-row{flex-direction:column;gap:6px}.attendance-pkg-input{font-size:.78rem;padding:8px 10px}.attendance-pkg-note{flex:unset}.attendance-memo-label{font-size:.75rem}.attendance-memo-item{padding:6px 8px}.attendance-memo-text{font-size:.75rem}.attendance-memo-meta{font-size:.62rem}.attendance-memo-input-row{gap:6px}.attendance-memo-input{font-size:.78rem;padding:8px 10px}.attendance-memo-add{font-size:.72rem;padding:8px 12px}.enrollment-edit-form{padding:10px}.payment-type-toggle{flex-wrap:wrap}.payment-type-btn{flex:1;font-size:.75rem;padding:7px 10px;text-align:center}.finance-filters{flex-direction:column;gap:8px}.finance-class-row{flex-wrap:wrap;gap:6px}.finance-class-info{min-width:100%}.finance-class-amounts{min-width:100%;justify-content:space-between}.finance-student-row{flex-wrap:wrap;gap:4px}.finance-student-info{min-width:100%}.finance-student-amount{flex:1}.finance-student-actions{flex:unset}}.admin-mobile-home{display:none;padding:20px 0}.admin-mobile-home-title{font-size:1.4rem;font-weight:800;color:#fafafa;margin-bottom:24px;text-align:center}.admin-mobile-home-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.admin-mobile-home-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px 16px;background:#18181b;border:1px solid #27272a;border-radius:12px;cursor:pointer;transition:all .15s}.admin-mobile-home-btn:active{background:#27272a;transform:scale(.97)}.admin-mobile-home-icon{font-size:1.8rem}.admin-mobile-home-label{color:#e4e4e7;font-size:.85rem;font-weight:600}@media(max-width:768px){.admin-mobile-home{display:block}}.finance-summary-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.finance-card{background:#18181b;border:1px solid #27272a;border-radius:10px;padding:16px 20px}.finance-card-label{color:#71717a;font-size:.75rem;font-weight:500;margin-bottom:6px}.finance-card-value{font-size:1.3rem;font-weight:700;color:#e4e4e7}.finance-card-value span{font-size:.75rem;font-weight:400;color:#71717a;margin-left:2px}.finance-card-paid .finance-card-value{color:#5eeeb4}.finance-card-unpaid .finance-card-value{color:#ef4444}.finance-filters{display:flex;align-items:center;gap:12px;margin-bottom:16px}.finance-badge-paid{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#5eeeb41a;border-radius:6px;color:#5eeeb4;font-size:.75rem;font-weight:600}.finance-badge-meta{color:#52525b;font-size:.65rem;font-weight:400}.finance-badge-pkg{background:#a855f71a!important;color:#a855f7!important}.finance-badge-unpaid{display:inline-block;padding:4px 10px;background:#ef44441a;border-radius:6px;color:#ef4444;font-size:.75rem;font-weight:600}@media(max-width:768px){.finance-summary-cards{grid-template-columns:1fr}}.admin-merge-section{padding:0 24px 16px}.merge-target-list{background:#18181b;border:1px solid #27272a;border-radius:8px;max-height:200px;overflow-y:auto;margin-bottom:12px}.merge-target-item{padding:10px 14px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #1c1c1f;transition:background .15s}.merge-target-item:hover{background:#27272a}.merge-target-item:last-child{border-bottom:none}.merge-target-name{color:#e4e4e7;font-size:.82rem;font-weight:500}.merge-target-email{color:#52525b;font-size:.72rem}.users-role-counts{display:flex;gap:10px;margin-top:6px;flex-wrap:wrap}.users-role-badge{font-size:.72rem;color:#71717a;background:#18181b;border:1px solid #27272a;border-radius:6px;padding:3px 10px}.users-role-badge strong{color:#a1a1aa;margin-left:4px}.users-role-badge.student{border-color:#065f46;color:#6ee7b7}.users-role-badge.student strong{color:#5eeeb4}.users-role-badge.staff{border-color:#4338ca;color:#a5b4fc}.users-role-badge.staff strong{color:#818cf8}.users-role-badge.deleted{border-color:#7f1d1d;color:#fca5a5}.users-role-badge.deleted strong{color:#ef4444}.users-role-badge.deleted.active{background:#ef444426}.admin-pagination{display:flex;align-items:center;gap:4px}.admin-pagination-btn{background:transparent;border:1px solid #27272a;border-radius:6px;color:#a1a1aa;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:.8rem;cursor:pointer;transition:all .15s}.admin-pagination-btn:hover:not(:disabled){background:#27272a;color:#e4e4e7}.admin-pagination-btn.active{background:#5eeeb4;border-color:#5eeeb4;color:#09090b;font-weight:600}.admin-pagination-btn:disabled{opacity:.3;cursor:default}.user-class-selector{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.user-class-fee-list{display:flex;flex-direction:column;gap:6px;margin-top:12px}.user-class-fee-row{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#5eeeb40d;border:1px solid #27272a;border-radius:8px}.user-class-fee-name{flex:1;color:#e4e4e7;font-size:.82rem;font-weight:500}.user-class-fee-studio{color:#52525b;font-size:.7rem}.user-class-fee-input{width:110px;padding:6px 10px;background:#18181b;border:1px solid #27272a;border-radius:6px;color:#e4e4e7;font-size:.82rem;text-align:right}.user-class-fee-input::placeholder{color:#3f3f46}.payment-type-toggle{display:flex;gap:8px;margin-bottom:8px}.payment-type-btn{flex:1;padding:10px 16px;border-radius:8px;border:2px solid #27272a;background:#18181b;color:#71717a;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s}.payment-type-btn.active{border-color:#5eeeb4;color:#5eeeb4;background:#5eeeb414}.payment-type-btn.package.active{border-color:#a855f7;color:#a855f7;background:#a855f714}.user-class-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:#18181b;border:1px solid #27272a;border-radius:8px;color:#a1a1aa;font-size:.78rem;font-family:inherit;cursor:pointer;transition:all .15s}.user-class-chip:hover{border-color:#3f3f46;color:#e4e4e7}.user-class-chip.selected{background:#5eeeb41a;border-color:#5eeeb4;color:#5eeeb4}.user-class-check{width:16px;font-size:.72rem;font-weight:700}.user-class-chip-name{font-weight:500}.user-class-chip-studio{font-size:.68rem;color:#52525b;margin-left:2px}.student-name-link{color:#5eeeb4;cursor:pointer;transition:opacity .15s}.student-name-link:hover{opacity:.7;text-decoration:underline}.student-detail-grid{display:flex;flex-direction:column;gap:16px}.student-detail-row{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#18181b;border-radius:8px;border:1px solid #27272a}.student-detail-label{font-size:.75rem;font-weight:700;color:#71717a;text-transform:uppercase;letter-spacing:.8px}.student-detail-value{font-size:.9rem;font-weight:600;color:#e4e4e7}.student-detail-sub{font-size:.75rem;font-weight:400;color:#71717a;margin-left:4px}.reg-fee-notes{display:flex;flex-direction:column;gap:6px}.reg-fee-note-item{background:#18181b;border:1px solid #27272a;border-radius:8px;padding:8px 10px}.reg-fee-note-text{font-size:.8rem;color:#e4e4e7;margin-bottom:4px;line-height:1.4}.reg-fee-note-meta{display:flex;align-items:center;gap:8px;font-size:.68rem;color:#71717a}.reg-fee-note-delete{background:none;border:none;color:#71717a;cursor:pointer;font-size:.9rem;padding:0 2px;line-height:1;margin-left:auto}.reg-fee-note-delete:hover{color:#ef4444}.reg-fee-note-input-row{display:flex;gap:6px;margin-top:4px}.reg-fee-note-input-row input{flex:1;background:#09090b;border:1px solid #27272a;border-radius:6px;padding:6px 10px;color:#e4e4e7;font-size:.78rem}.reg-fee-note-input-row input::placeholder{color:#52525b}.classes-instructor-btns{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.classes-instr-btn{padding:7px 16px;background:#18181b;border:1px solid #27272a;border-radius:20px;color:#a1a1aa;font-size:.78rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s}.classes-instr-btn:hover{border-color:#3f3f46;color:#e4e4e7}.classes-instr-btn.active{background:#5eeeb4;border-color:#5eeeb4;color:#09090b;font-weight:700}.users-search-input{width:100%;padding:10px 14px;background:#18181b;border:1px solid #27272a;border-radius:8px;color:#e4e4e7;font-family:inherit;font-size:.85rem;margin-bottom:16px;outline:none;transition:border-color .15s}.users-search-input:focus{border-color:#5eeeb4}.users-search-input::placeholder{color:#52525b}.enrollment-card{background:#18181b;border:1px solid #27272a;border-radius:10px;padding:14px;margin-bottom:12px}.enrollment-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:8px}.enrollment-card-name{font-weight:600;font-size:.85rem;color:#e4e4e7}.enrollment-student-item{border-bottom:1px solid #27272a}.enrollment-student-item:last-child{border-bottom:none}.enrollment-edit-form{padding:12px 16px 16px;background:#18181b;border-top:1px solid #27272a}.payment-type-toggle{display:flex;gap:6px}.payment-type-btn{flex:1;padding:6px 12px;border:1px solid #3f3f46;border-radius:6px;background:transparent;color:#a1a1aa;font-size:.78rem;transition:all .15s}.payment-type-btn.active{background:#5eeeb41f;border-color:#5eeeb4;color:#5eeeb4}.payment-type-btn.package.active{background:#a855f71f;border-color:#a855f7;color:#a855f7}.finance-progress{display:flex;align-items:center;gap:10px;margin-bottom:16px}.finance-progress-bar{flex:1;height:6px;background:#27272a;border-radius:3px;overflow:hidden}.finance-progress-fill{height:100%;background:linear-gradient(90deg,#5eeeb4,#34d399);border-radius:3px;transition:width .4s ease}.finance-progress-label{font-size:.72rem;color:#5eeeb4;font-weight:600;white-space:nowrap}.finance-class-header{display:flex;justify-content:space-between;align-items:center;padding:6px 16px;font-size:.7rem;color:#52525b;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.finance-class-list{display:flex;flex-direction:column;gap:4px}.finance-class-card{background:#18181b;border:1px solid #27272a;border-radius:10px;overflow:hidden;transition:border-color .15s}.finance-class-card.expanded{border-color:#3f3f46}.finance-class-row{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;cursor:pointer;transition:background .15s;gap:12px}.finance-class-row:hover{background:#1f1f23}.finance-class-info{display:flex;align-items:center;gap:8px;min-width:0}.finance-class-name{font-weight:600;font-size:.88rem;color:#e4e4e7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-class-studio{font-size:.68rem;color:#71717a;background:#27272a;padding:2px 6px;border-radius:4px;white-space:nowrap}.finance-class-count{font-size:.68rem;color:#52525b;white-space:nowrap}.finance-class-amounts{display:flex;align-items:center;gap:16px;font-size:.82rem;font-weight:500;white-space:nowrap}.finance-amount-total{color:#a1a1aa;min-width:80px;text-align:right}.finance-amount-paid{color:#5eeeb4;min-width:80px;text-align:right}.finance-amount-unpaid{color:#ef4444;min-width:80px;text-align:right}.finance-expand-icon{color:#3f3f46;font-size:.72rem;width:16px;text-align:center}.finance-class-detail{border-top:1px solid #27272a}.finance-detail-filters{display:flex;gap:4px;padding:10px 16px 6px}.finance-student-list{padding:0 8px}.finance-student-row{display:flex;align-items:center;gap:12px;padding:10px 8px;border-bottom:1px solid #1f1f23;font-size:.82rem}.finance-student-row:last-child{border-bottom:none}.finance-student-row.unpaid{background:#ef444408}.finance-student-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.finance-student-name{font-weight:600;color:#e4e4e7;font-size:.82rem}.finance-student-meta{font-size:.7rem;color:#52525b}.finance-student-amount{text-align:right;min-width:90px;display:flex;flex-direction:column;align-items:flex-end;gap:1px}.finance-student-paid-amount{font-weight:600;color:#e4e4e7}.finance-student-unpaid-amount{font-weight:600;color:#ef4444}.finance-student-original{font-size:.65rem;color:#52525b;text-decoration:line-through}.finance-student-status{min-width:100px}.finance-class-subtotal{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-top:1px solid #27272a;font-size:.8rem;font-weight:600;color:#a1a1aa;background:#111113}.finance-student-item{border-bottom:1px solid #1f1f23}.finance-student-item:last-child{border-bottom:none}.finance-student-item.unpaid{background:#ef444408}.finance-student-actions{min-width:120px;display:flex;justify-content:flex-end}.finance-action-group{display:flex;gap:4px}.finance-action-btn{padding:4px 10px;border-radius:6px;font-size:.72rem;font-weight:600;border:1px solid transparent;cursor:pointer;transition:all .15s;white-space:nowrap}.finance-action-btn.paid{background:#5eeeb41a;color:#5eeeb4;border-color:#5eeeb433}.finance-action-btn.paid:hover{background:#ef44441a;color:#ef4444;border-color:#ef444433}.finance-action-btn.unpaid{background:#5eeeb414;color:#5eeeb4;border-color:#5eeeb426}.finance-action-btn.unpaid:hover{background:#5eeeb42e}.finance-action-btn.pkg{background:#a855f714;color:#a855f7;border-color:#a855f726}.finance-action-btn.pkg:hover{background:#a855f72e}.finance-action-btn.confirm{background:#a855f726;color:#a855f7;border-color:#a855f7}.finance-action-btn:disabled{opacity:.5;cursor:not-allowed}.finance-pkg-form{padding:8px 8px 12px;background:#111113;border-top:1px solid #27272a}.finance-pkg-row{display:flex;gap:6px;margin-bottom:6px}.finance-pkg-row:last-child{margin-bottom:0}.finance-pkg-input{flex:1;padding:6px 10px;background:#18181b;border:1px solid #27272a;border-radius:6px;color:#e4e4e7;font-size:.78rem}.finance-pkg-input:focus{border-color:#a855f7;outline:none}.finance-pkg-note{flex:2}.finance-pkg-preview{font-size:.7rem;color:#a855f7;padding:4px 0 0 2px}.admin-btn-danger{background:#ef444426;border-color:#ef4444;color:#ef4444}@media(max-width:768px){.finance-class-amounts{gap:8px;font-size:.72rem}.finance-amount-total,.finance-amount-paid,.finance-amount-unpaid{min-width:50px}.finance-class-header{display:none}.finance-student-row{flex-wrap:wrap}.finance-student-status{min-width:100%;margin-top:4px}}.notice-studio-tabs{display:flex;align-items:center;gap:.35rem;margin:.5rem 0}.notice-studio-tab{padding:.35rem .85rem;background:#2a2a2a;border:1px solid #3a3a3a;color:#999;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s}.notice-studio-tab.active{background:#2a3a30;border-color:#5eeeb4;color:#5eeeb4}.notice-new-btn{padding:.45rem 1rem;background:#5eeeb4;color:#09090b;border:none;border-radius:8px;font-size:.8rem;font-weight:700;cursor:pointer;transition:background .2s}.notice-new-btn:hover{background:#86f5cc}.notice-btn{padding:.35rem .75rem;background:#333;border:1px solid #444;color:#ccc;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.notice-btn:hover{background:#444;color:#fff}.notice-list-actions{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.notice-class-grid{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.notice-class-btn{padding:.4rem .75rem;background:#333;border:1px solid #444;color:#bbb;border-radius:6px;font-size:.8rem;cursor:pointer;transition:all .2s;position:relative}.notice-class-btn:hover{border-color:#666}.notice-class-btn.selected{background:#2a3a30;border-color:#5eeeb4;color:#5eeeb4}.notice-class-check{margin-left:.3rem;font-size:.7rem}.notice-popup-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.notice-popup{background:#1a1a1a;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1.5rem;width:90%;max-width:400px;max-height:70vh;display:flex;flex-direction:column}.notice-popup h3{font-size:1rem;margin-bottom:.75rem}.notice-popup-actions{display:flex;gap:.4rem;margin-bottom:.75rem}.notice-student-list{display:flex;flex-direction:column;gap:.25rem;overflow-y:auto;max-height:40vh;padding-right:.5rem}.notice-student-row{display:flex;align-items:center;gap:.6rem;padding:.45rem .6rem;background:#ffffff0a;border-radius:6px;font-size:.85rem;cursor:pointer}.notice-student-row:hover{background:#ffffff14}.notice-student-row input[type=checkbox]{accent-color:#5eeeb4;width:16px;height:16px}.notice-popup-footer{display:flex;gap:.5rem;margin-top:1rem;justify-content:flex-end}.notice-table-wrap{display:flex;flex-direction:column;gap:.35rem}.notice-row{display:flex;align-items:center;gap:.6rem;padding:.6rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:8px;font-size:.8rem}.notice-row-date{color:#999;font-size:.75rem;white-space:nowrap;flex-shrink:0}.notice-row-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notice-row-target{color:#666;font-size:.7rem;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0}.notice-row.empty{height:42px;border-color:transparent;background:transparent}.notice-page-nav{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:.75rem}.notice-page-arrow{background:none;border:1px solid #444;color:#ccc;width:28px;height:28px;border-radius:50%;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s}.notice-page-arrow:hover:not(:disabled){border-color:#5eeeb4}.notice-page-arrow:disabled{opacity:.25;cursor:default}.notice-page-info{font-size:.8rem;color:#999;min-width:50px;text-align:center}.notice-type-badge{font-size:.7rem;font-weight:600;padding:.15rem .45rem;border-radius:4px;white-space:nowrap}.notice-type-badge.filming{background:#3b82f626;color:#3b82f6}.notice-type-badge.performance{background:#a855f726;color:#a855f7}.notice-type-badge.discount{background:#ef444426;color:#ef4444}.notice-type-badge.general{background:#ffffff14;color:#999}.mystudio{min-height:100vh;padding:120px 20px 60px;background:var(--bg);color:var(--text)}.mystudio-container{max-width:960px;margin:0 auto}.mystudio-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.mystudio-header h1{font-family:var(--font-display);font-size:1.8rem;letter-spacing:3px}.mystudio-points{display:flex;align-items:center;gap:5px;background:#ffcc0014;border:1px solid rgba(255,204,0,.2);padding:8px 18px;border-radius:24px}.pts-star{color:#fc0;font-size:1rem}.pts-val{font-size:1.2rem;font-weight:700;color:#fc0;font-family:var(--font-display)}.pts-p{font-size:.8rem;color:var(--text-dim);font-weight:600}.mystudio-room{border-radius:var(--radius);overflow:hidden;border:2px solid var(--border);box-shadow:0 8px 40px #00000080;background:#1a1a1a}.studio-svg{width:100%;height:auto;display:block}.mystudio-actions{display:flex;gap:12px;margin-top:16px}.action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text);font-family:var(--font-body);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.action-btn:hover{border-color:var(--accent3);background:#7b61ff0f}.action-btn.active{border-color:var(--accent);background:#5eeeb40f;color:var(--accent)}.action-btn svg{opacity:.8}.action-btn.active svg{opacity:1}.panel{margin-top:16px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;animation:panelSlide .25s ease}.panel.shop{border-color:#fc03}@keyframes panelSlide{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.panel-head{padding:14px 20px 10px;border-bottom:1px solid var(--border)}.panel-title{font-family:var(--font-display);font-size:1rem;letter-spacing:1px}.cat-scroll{overflow-x:auto;border-bottom:1px solid var(--border);-webkit-overflow-scrolling:touch}.cat-scroll::-webkit-scrollbar{height:0}.cat-tabs{display:flex;min-width:max-content}.cat-t{flex-shrink:0;padding:10px 14px;background:none;border:none;color:var(--text-dim);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;font-family:var(--font-body);position:relative;transition:color .15s}.cat-icon{font-size:1rem}.cat-lbl{font-size:.6rem;font-weight:500;white-space:nowrap}.cat-t.on{color:var(--text)}.cat-t.on:after{content:"";position:absolute;bottom:0;left:20%;right:20%;height:2px;background:var(--accent);border-radius:1px}.panel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;padding:14px;max-height:320px;overflow-y:auto}.panel-empty{grid-column:1 / -1;text-align:center;padding:28px 16px;color:var(--text-dim);font-size:.8rem}.p-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;background:#ffffff05;border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:all .15s;font-family:var(--font-body);color:var(--text);position:relative}.p-item:hover{border-color:var(--accent3);background:#7b61ff0a;transform:translateY(-1px)}.p-item.eq{border-color:var(--accent);background:#5eeeb40d}.p-item.buy:hover{border-color:#fc0;background:#ffcc000a}.p-item-name{font-size:.7rem;font-weight:600;text-align:center;line-height:1.3}.p-item-price{font-size:.65rem;color:#fc0;font-weight:700}.eq-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);position:absolute;top:6px;right:6px}.mystudio-toast{position:fixed;bottom:40px;left:50%;transform:translate(-50%);padding:12px 28px;border-radius:24px;font-family:var(--font-body);font-size:.85rem;font-weight:600;z-index:1000;animation:toastPop .3s ease;pointer-events:none;white-space:nowrap}.mystudio-toast.success{background:var(--accent);color:#1a1a1a}.mystudio-toast.error{background:var(--accent2);color:#fff}.mystudio-toast.warn{background:#fc0;color:#1a1a1a}@keyframes toastPop{0%{opacity:0;transform:translate(-50%) translateY(16px) scale(.95)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.panel-grid::-webkit-scrollbar{width:5px}.panel-grid::-webkit-scrollbar-track{background:transparent}.panel-grid::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}@media(max-width:640px){.mystudio{padding:100px 10px 40px}.mystudio-header h1{font-size:1.3rem}.mystudio-actions{gap:8px}.action-btn{padding:12px 8px;font-size:.8rem}.panel-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:6px;padding:10px}.cat-t{padding:8px 10px}}.op-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:opFade .2s ease}@keyframes opFade{0%{opacity:0}to{opacity:1}}.op-modal{background:#18181b;border:1px solid #3f3f46;border-radius:20px;padding:28px;width:100%;max-width:440px;position:relative;max-height:90vh;overflow-y:auto;animation:opSlide .25s ease}@keyframes opSlide{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.op-x{position:absolute;top:14px;right:18px;background:none;border:none;color:#52525b;font-size:1.5rem;cursor:pointer;line-height:1;z-index:1}.op-x:hover{color:#e4e4e7}.op-step-back{background:none;border:none;color:#71717a;font-size:.8rem;cursor:pointer;padding:0;margin-bottom:16px}.op-step-back:hover{color:#e4e4e7}.op-modal-header{margin-bottom:20px}.op-modal-class-name{font-size:1.05rem;font-weight:700;color:#fff}.op-modal-class-type{font-size:.75rem;color:#71717a;margin-top:4px}.op-choose-buttons{display:flex;flex-direction:column;gap:10px}.op-choose-btn{display:flex;align-items:center;gap:14px;padding:18px 20px;background:#0f0f11;border:1px solid #27272a;border-radius:14px;cursor:pointer;transition:all .2s;text-align:left;width:100%;color:#e4e4e7}.op-choose-btn:hover{border-color:#a855f7;background:#a855f70a}.op-choose-icon{font-size:1.6rem}.op-choose-label{font-size:.9rem;font-weight:700;flex:1}.op-choose-price{font-size:.95rem;font-weight:800;color:#a855f7}.op-choose-desc{font-size:.72rem;color:#71717a;margin-top:2px}.op-pkg-title{font-size:1.05rem;font-weight:700;color:#fff;margin:0 0 16px}.op-pkg-section-label{font-size:.72rem;font-weight:700;color:#52525b;letter-spacing:.1em;text-transform:uppercase;margin:16px 0 8px}.op-pkg-list{display:flex;flex-direction:column;gap:8px}.op-pkg-item{position:relative;display:flex;align-items:center;gap:12px;padding:14px 16px;background:#0f0f11;border:1px solid #27272a;border-radius:12px;cursor:pointer;transition:all .15s;text-align:left;width:100%;color:#e4e4e7}.op-pkg-item:hover{border-color:#a855f7}.op-pkg-item.popular{border-color:#a855f766}.op-pkg-item.best{border-color:#f59e0b66}.op-pkg-sessions{font-size:1.4rem;font-weight:900;min-width:48px}.op-pkg-sessions span{font-size:.7rem;color:#52525b}.op-pkg-combo-name{font-size:1.1rem;font-weight:900;min-width:60px}.op-pkg-info{flex:1}.op-pkg-price{font-size:.88rem;font-weight:700}.op-pkg-per{font-size:.68rem;color:#52525b}.op-pkg-combo-detail{font-size:.72rem;color:#71717a;margin-bottom:2px}.op-pkg-discount{font-size:.72rem;font-weight:700;color:#22c55e;white-space:nowrap}.op-pkg-badge{position:absolute;top:-6px;right:12px;font-size:.55rem;font-weight:800;padding:2px 8px;border-radius:10px;letter-spacing:.05em}.op-pkg-badge.popular{background:#a855f7;color:#fff}.op-pkg-badge.best{background:#f59e0b;color:#000}.op-pay-plan{background:#0f0f11;padding:14px 16px;border-radius:12px;margin-bottom:16px}.op-pay-plan-name{font-size:.95rem;font-weight:700;color:#fff}.op-pay-plan-sub{font-size:.72rem;color:#71717a;margin-top:2px}.op-pay-coupon{margin-bottom:14px}.op-pay-coupon-row{display:flex;gap:6px}.op-pay-coupon-row input{flex:1;padding:10px 14px;background:#0f0f11;border:1px solid #27272a;border-radius:10px;color:#e4e4e7;font-size:.82rem;outline:none}.op-pay-coupon-row input:focus{border-color:#a855f7}.op-pay-coupon-row input::placeholder{color:#3f3f46}.op-pay-coupon-row button{padding:10px 14px;background:#27272a;border:1px solid #3f3f46;border-radius:10px;color:#a1a1aa;font-size:.75rem;font-weight:600;cursor:pointer;white-space:nowrap}.op-pay-coupon-row button:hover{background:#3f3f46}.op-pay-coupon-msg{font-size:.72rem;margin-top:6px;font-weight:600}.op-pay-coupon-msg.valid{color:#22c55e}.op-pay-coupon-msg.invalid{color:#ef4444}.op-pay-total{display:flex;justify-content:space-between;align-items:center;padding:12px 0;margin-bottom:14px;border-top:1px solid #27272a;border-bottom:1px solid #27272a}.op-pay-total>span{color:#71717a;font-size:.82rem;font-weight:600}.op-pay-original{color:#52525b;text-decoration:line-through;font-size:.8rem;margin-right:8px}.op-pay-final{color:#22c55e;font-size:1.15rem;font-weight:800}.op-pay-methods{display:flex;gap:6px;margin-bottom:12px}.op-pay-methods button{flex:1;padding:10px;background:#27272a;border:1px solid #3f3f46;border-radius:10px;color:#71717a;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .15s}.op-pay-methods button.active{background:#a855f7;border-color:#a855f7;color:#fff}.op-pay-bank{background:#0f0f11;border-radius:12px;padding:4px 16px;margin-bottom:16px}.op-pay-bank>div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #1a1a1e;font-size:.8rem}.op-pay-bank>div:last-child{border-bottom:none}.op-pay-bank>div>span:first-child{color:#52525b}.op-pay-bank>div>span:last-child{color:#e4e4e7;font-weight:500}.op-pay-bank .mono{font-family:SF Mono,monospace;letter-spacing:.1em;color:#a855f7}.op-pay-momo{text-align:center;margin-bottom:16px}.op-pay-momo-qr{width:160px;height:160px;margin:0 auto;background:#27272a;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#52525b;font-size:.82rem}.op-pay-submit{width:100%;padding:14px;background:#22c55e;color:#fff;border:none;border-radius:12px;font-size:.92rem;font-weight:700;cursor:pointer;transition:background .2s}.op-pay-submit:hover{background:#16a34a}.op-pay-submit:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.op-modal{padding:22px 18px;border-radius:16px}}.online-page{min-height:100vh;background:#0a0a0a;color:#e4e4e7;padding:120px 24px 60px;max-width:1200px;margin:0 auto}.online-loading{text-align:center;padding:80px 0;color:#71717a;font-size:.9rem}.ol-header{margin-bottom:24px}.ol-header h1{font-size:1.8rem;font-weight:700;margin:0 0 6px;color:#fff}.ol-access-badge{display:inline-block;font-size:.72rem;color:#22c55e;background:#22c55e14;padding:4px 12px;border-radius:20px}.ol-tabs{display:flex;gap:8px;margin-bottom:28px}.ol-tab{display:flex;align-items:center;gap:6px;padding:10px 22px;background:#18181b;border:1px solid #27272a;border-radius:50px;color:#71717a;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.ol-tab:hover{border-color:#3f3f46;color:#a1a1aa}.ol-tab.active{background:#a855f7;border-color:#a855f7;color:#fff}.ol-tab-count{font-size:.68rem;background:#ffffff26;padding:1px 7px;border-radius:10px}.ol-search{display:flex;align-items:center;gap:10px;background:#18181b;border:1px solid #27272a;border-radius:12px;padding:10px 16px;margin-bottom:24px;transition:border-color .2s}.ol-search:focus-within{border-color:#a855f7}.ol-search input{flex:1;background:none;border:none;outline:none;color:#e4e4e7;font-size:.85rem}.ol-search input::placeholder{color:#3f3f46}.ol-search-clear{background:none;border:none;color:#52525b;font-size:1.2rem;cursor:pointer;line-height:1;padding:0}.ol-search-clear:hover{color:#e4e4e7}.ol-empty{text-align:center;color:#52525b;font-size:.9rem;padding:60px 0}.ol-category{margin-bottom:36px}.ol-category-title{font-size:1rem;font-weight:700;color:#a1a1aa;margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid #1c1c1f;letter-spacing:.03em}.ol-grid{display:flex;gap:16px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.ol-grid::-webkit-scrollbar{height:4px}.ol-grid::-webkit-scrollbar-track{background:transparent}.ol-grid::-webkit-scrollbar-thumb{background:#27272a;border-radius:4px}.ol-grid>.ol-card{min-width:260px;max-width:300px;flex-shrink:0;scroll-snap-align:start}.ol-card{background:#18181b;border:1px solid #27272a;border-radius:14px;overflow:hidden;transition:all .2s}.ol-card:hover{border-color:#3f3f46;transform:translateY(-2px)}.ol-card.live-now{border-color:#ef4444}.ol-card.in-progress{opacity:.55;pointer-events:none}.ol-card.in-progress .ol-card-thumb img{filter:blur(2px)}.ol-card-in-progress-overlay{position:absolute;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center}.ol-in-progress-text{color:#fff;font-size:1.8rem;font-weight:700;letter-spacing:.08em;border:2px solid rgba(255,255,255,.6);border-radius:50px;padding:8px 28px;animation:olBlink 2.5s ease-in-out infinite}@keyframes olBlink{0%,to{opacity:1}50%{opacity:.3}}.ol-card-btn.disabled{opacity:.5;cursor:not-allowed;color:#52525b;border-color:#27272a}.ol-card-btn.disabled:hover{background:transparent;border-color:#27272a;color:#52525b}.ol-card-thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:#000}.ol-card-thumb img{width:100%;height:100%;object-fit:cover}.ol-card-coming-soon{position:absolute;inset:0;background:#00000059;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center}.ol-card-coming-soon span{color:#fff;font-size:.82rem;font-weight:700;letter-spacing:.15em;background:#ffffff1f;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.18);border-radius:50px;padding:8px 22px}.ol-card-btn.coming-soon{color:#52525b;border-color:#27272a;cursor:default}.ol-card-btn.coming-soon:hover{background:transparent;border-color:#27272a;color:#52525b}.ol-card-lock{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;background:#0009;display:flex;align-items:center;justify-content:center}.ol-card-live-badge{position:absolute;top:10px;left:10px;background:#ef4444;color:#fff;padding:3px 10px;border-radius:6px;font-size:.62rem;font-weight:800;animation:livePulse 2s ease-in-out infinite}@keyframes livePulse{0%,to{opacity:1}50%{opacity:.7}}.ol-card-body{padding:14px 16px}.ol-card-body h4{font-size:.9rem;font-weight:600;margin:0 0 6px;color:#e4e4e7}.ol-card-instructor{font-size:.72rem;color:#71717a;display:block;margin-bottom:10px}.ol-card-schedule{display:block;font-size:.72rem;color:#f59e0b;margin-bottom:10px;font-weight:500}.ol-card-btn{width:100%;padding:9px;background:transparent;border:1px solid #3f3f46;border-radius:8px;color:#e4e4e7;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .15s}.ol-card-btn:hover{background:#a855f7;border-color:#a855f7;color:#fff}.ol-card-btn.live{background:#ef4444;border-color:#ef4444;color:#fff}.ol-card-btn.live:hover{background:#dc2626}.ol-live-section{margin-bottom:32px}.ol-live-section-title{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:700;color:#e4e4e7;margin:0 0 14px}.ol-live-dot{width:10px;height:10px;background:#ef4444;border-radius:50%;display:inline-block}.ol-live-dot.pulse{animation:livePulse 1.5s ease-in-out infinite}.ol-back{background:none;border:none;color:#71717a;font-size:.85rem;cursor:pointer;padding:0;margin-bottom:20px}.ol-back:hover{color:#e4e4e7}.ol-player-section{max-width:900px;margin:0 auto}.ol-player-title{font-size:1.3rem;font-weight:700;margin:0 0 10px;color:#fff}.ol-player-tags{display:flex;gap:6px;margin-bottom:16px;flex-wrap:wrap}.ol-tag{font-size:.68rem;padding:3px 10px;border-radius:6px;font-weight:600;background:#a855f71a;color:#a855f7}.ol-tag.live{background:#ef444426;color:#ef4444}.ol-tag.instructor{background:#ffffff0d;color:#a1a1aa}.ol-live-room{width:100%;height:80vh;min-height:500px;background:#000;border-radius:12px;overflow:hidden;margin-bottom:16px}.ol-player-wrap{position:relative;width:100%;padding-top:56.25%;background:#000;border-radius:12px;overflow:hidden;margin-bottom:16px}.ol-player-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:none}.ol-player-desc{color:#71717a;font-size:.85rem;line-height:1.6}.ol-fb-tab{max-width:600px;margin:0 auto}.ol-fb-form{background:#18181b;border:1px solid #27272a;border-radius:16px;padding:28px 24px}.ol-fb-form-title{font-size:1.1rem;font-weight:700;color:#fff;margin:0 0 6px}.ol-fb-form-desc{color:#71717a;font-size:.82rem;margin:0 0 20px}.ol-fb-field{margin-bottom:14px}.ol-fb-field label{display:block;font-size:.72rem;font-weight:600;color:#71717a;margin-bottom:6px;letter-spacing:.03em}.ol-fb-field select,.ol-fb-field input,.ol-fb-field textarea{width:100%;padding:10px 14px;background:#0f0f11;border:1px solid #27272a;border-radius:10px;color:#e4e4e7;font-size:.85rem;outline:none;font-family:inherit;resize:vertical}.ol-fb-field select:focus,.ol-fb-field input:focus,.ol-fb-field textarea:focus{border-color:#a855f7}.ol-fb-field input::placeholder,.ol-fb-field textarea::placeholder{color:#3f3f46}.ol-fb-mode-toggle{display:flex;gap:4px;margin-top:4px}.ol-fb-mode-toggle button{flex:1;padding:8px;background:#0f0f11;border:1px solid #27272a;border-radius:8px;color:#71717a;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s}.ol-fb-mode-toggle button.active{background:#a855f7;border-color:#a855f7;color:#fff}.ol-fb-dropzone{border:2px dashed #27272a;border-radius:12px;padding:28px 20px;text-align:center;cursor:pointer;transition:all .2s}.ol-fb-dropzone:hover{border-color:#a855f7;background:#a855f708}.ol-fb-dropzone.has-file{border-color:#22c55e;border-style:solid;padding:14px 16px}.ol-fb-dropzone-inner{display:flex;flex-direction:column;align-items:center;gap:8px;color:#52525b;font-size:.85rem}.ol-fb-dropzone-hint{font-size:.7rem;color:#3f3f46}.ol-fb-file-info{display:flex;align-items:center;gap:10px}.ol-fb-file-name{font-size:.82rem;color:#e4e4e7;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.ol-fb-file-size{font-size:.72rem;color:#71717a;white-space:nowrap}.ol-fb-file-remove{background:none;border:none;color:#52525b;font-size:1.2rem;cursor:pointer;padding:0;line-height:1}.ol-fb-file-remove:hover{color:#ef4444}.ol-fb-progress{position:relative;height:6px;background:#27272a;border-radius:3px;margin-top:10px;overflow:hidden}.ol-fb-progress-bar{height:100%;background:#a855f7;border-radius:3px;transition:width .3s ease}.ol-fb-progress-text{position:absolute;right:0;top:-18px;font-size:.68rem;color:#a855f7;font-weight:600}.ol-fb-success{background:#22c55e14;color:#22c55e;border:1px solid rgba(34,197,94,.2);border-radius:10px;padding:10px 16px;font-size:.82rem;font-weight:600;margin-bottom:14px;text-align:center}.ol-fb-submit{width:100%;padding:12px;background:#a855f7;color:#fff;border:none;border-radius:10px;font-size:.9rem;font-weight:700;cursor:pointer;transition:background .2s}.ol-fb-submit:hover{background:#9333ea}.ol-fb-submit:disabled{opacity:.5;cursor:not-allowed}.ol-fb-history{margin-top:28px}.ol-fb-history-title{font-size:.9rem;font-weight:700;color:#a1a1aa;margin:0 0 12px}.ol-fb-history-item{background:#18181b;border:1px solid #27272a;border-radius:12px;padding:14px 16px;margin-bottom:10px}.ol-fb-history-item.pending{border-style:dashed;opacity:.7}.ol-fb-history-item.completed{border-left:3px solid #22c55e}.ol-fb-history-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.ol-fb-history-class{font-size:.85rem;font-weight:600;color:#e4e4e7}.ol-fb-history-badge{font-size:.62rem;font-weight:700;padding:2px 10px;border-radius:20px}.ol-fb-history-badge.completed{background:#22c55e26;color:#22c55e}.ol-fb-history-badge.pending{background:#f59e0b26;color:#f59e0b}.ol-fb-history-meta{font-size:.72rem;color:#52525b;margin-top:4px}.ol-fb-history-summary{font-size:.78rem;color:#a1a1aa;margin-top:8px;background:#0003;padding:8px 12px;border-radius:8px}@media(max-width:640px){.online-page{padding:100px 16px 40px}.ol-header h1{font-size:1.4rem}.ol-grid>.ol-card{min-width:220px}.ol-tabs{flex-wrap:wrap}}@font-face{font-family:GmarketSans;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansLight.woff) format("woff");font-weight:300;font-style:normal}@font-face{font-family:GmarketSans;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansMedium.woff) format("woff");font-weight:500;font-style:normal}@font-face{font-family:GmarketSans;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansBold.woff) format("woff");font-weight:700;font-style:normal}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg: #0a0a0a;--bg-card: #111111;--text: #f0f0f0;--text-dim: #888888;--accent: #5eeeb4;--accent2: #ff3366;--accent3: #7b61ff;--border: #222222;--radius: 16px;--font-display: "GmarketSans", "Bebas Neue", sans-serif;--font-body: "GmarketSans", "Outfit", sans-serif;--font-kr: "GmarketSans", "Noto Sans KR", sans-serif;--font-vn: "Be Vietnam Pro", "Outfit", sans-serif}html{scroll-behavior:smooth;font-size:16px;overflow-x:hidden}@supports (-webkit-touch-callout: none){input,select,textarea{font-size:16px!important}}html[lang=vi] body,html[lang=vi] .hero-tag,html[lang=vi] .hero-desc,html[lang=vi] .about-lead,html[lang=vi] .about-text p,html[lang=vi] .card-content p,html[lang=vi] .news-content p,html[lang=vi] .crew-card p,html[lang=vi] .stat-label,html[lang=vi] .lucky-sub,html[lang=vi] .result-desc,html[lang=vi] .contact-item p,html[lang=vi] .guestbook-input,html[lang=vi] .rent-sub,html[lang=vi] .recruit-btn,html[lang=vi] .lucky-close-btn,html[lang=vi] .crew-genre,html[lang=vi] .footer-copy,html[lang=vi] .audition-header h1,html[lang=vi] .audition-header p,html[lang=vi] .audition-form,html[lang=vi] .form-group label,html[lang=vi] .form-group input,html[lang=vi] .form-group select,html[lang=vi] .form-group textarea,html[lang=vi] .audition-submit,html[lang=vi] .audition-success h2,html[lang=vi] .audition-success p,html[lang=vi] .form-error,html[lang=vi] .form-status-error,html[lang=vi] .schedule-note,html[lang=vi] .day-btn{font-family:var(--font-vn)}body{font-family:var(--font-body);background:var(--bg);color:var(--text);overflow-x:hidden;cursor:none;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}ul{list-style:none}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.custom-cursor{position:fixed;width:20px;height:20px;background:var(--accent);border-radius:50%;pointer-events:none;z-index:100000;mix-blend-mode:difference;transform:translate(-50%,-50%);transition:width .3s,height .3s}.custom-cursor.hover{width:50px;height:50px}.cursor-trail{position:fixed;width:40px;height:40px;border:1px solid var(--accent);border-radius:50%;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);transition:all .15s ease-out;opacity:.5}@media(pointer:coarse){.custom-cursor,.cursor-trail{display:none}body{cursor:auto}}#loader{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:99999;transition:opacity .6s,visibility .6s}#loader.hidden{opacity:0;visibility:hidden}.loader-logo{width:clamp(80px,15vw,160px);height:auto;filter:brightness(0) invert(1);opacity:0;transform:translateY(40px);animation:loaderIn .6s .1s forwards}@keyframes loaderIn{to{opacity:1;transform:translateY(0)}}.loader-bar{width:200px;height:2px;background:var(--border);margin-top:2rem;border-radius:2px;overflow:hidden}.loader-progress{width:0%;height:100%;background:var(--accent);animation:loaderBar 1.8s ease-in-out forwards}@keyframes loaderBar{0%{width:0%}60%{width:70%}to{width:100%}}#navbar{position:fixed;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:1.2rem 2.5rem;z-index:9000;transition:background .3s,backdrop-filter .3s}section[id]{scroll-margin-top:80px}#navbar.scrolled{background:#0a0a0ad9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}.nav-logo{display:flex;align-items:center;transition:transform .3s}.nav-logo-img{height:36px;width:auto;filter:brightness(0) invert(1)}.nav-logo:hover{transform:scale(1.05)}.nav-links{display:flex;gap:2.5rem}.nav-link{font-size:.85rem;font-weight:600;letter-spacing:.15em;position:relative;padding:.3em 0;transition:color .3s}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--accent);transition:width .3s}.nav-link:hover{color:var(--accent)}.nav-link:hover:after{width:100%}.nav-menu-group{position:relative}.nav-link-dropdown{display:flex;align-items:center;gap:4px;background:none;border:none;color:inherit;cursor:pointer;font-family:inherit}.nav-link-dropdown:after{display:none}.nav-sub-dropdown{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);background:#18181bf7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:6px;min-width:150px;z-index:100;animation:navFadeIn .15s ease}@keyframes navFadeIn{0%{opacity:0;transform:translate(-50%) translateY(-4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.nav-sub-item{display:block;padding:8px 14px;font-size:.8rem;font-weight:500;letter-spacing:.1em;color:#a1a1aa;border-radius:6px;transition:background .15s,color .15s;white-space:nowrap}.nav-sub-item:hover{background:#ffffff0f;color:#e4e4e7}.nav-sub-item.active{color:var(--accent)}.nav-icons{display:flex;align-items:center;gap:.3rem}.nav-icon-wrap{position:relative}.nav-icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:1px solid transparent;border-radius:50%;color:var(--text-dim);cursor:pointer;transition:color .3s,border-color .3s,background .3s}.nav-icon-btn:hover{color:var(--accent);border-color:var(--accent);background:#ffffff0d}.nav-icon-avatar{width:24px;height:24px;border-radius:50%}.nav-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;background:#141414f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:8px;padding:.4rem 0;box-shadow:0 8px 32px #0006;animation:dropdownFade .2s ease}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.nav-dropdown-item{display:flex;align-items:center;gap:.6rem;width:100%;padding:.55rem 1rem;background:none;border:none;color:var(--text-dim);font-family:var(--font-body);font-size:.8rem;cursor:pointer;transition:background .2s,color .2s;text-align:left}.nav-dropdown-item:hover{background:#ffffff0f;color:var(--text)}.nav-dropdown-item.active{color:var(--accent)}.nav-dropdown-code{font-weight:700;font-size:.7rem;letter-spacing:.08em;min-width:24px}.nav-dropdown-label{font-weight:400}.nav-dropdown-user{display:flex;align-items:center;gap:.7rem;padding:.7rem 1rem;border-bottom:1px solid var(--border);margin-bottom:.3rem}.nav-dropdown-avatar{width:32px;height:32px;border-radius:50%}.nav-dropdown-name{color:var(--text);font-size:.8rem;font-weight:600}.nav-dropdown-email{color:var(--text-dim);font-size:.65rem;margin-top:.1rem}.nav-dropdown-item.login{gap:.5rem;padding:.7rem 1rem;font-weight:600}.nav-dropdown-item.logout{color:var(--text-dim)}.nav-dropdown-item.logout:hover{color:#ff6b6b}.lang-switch{display:flex;gap:.2rem}.lang-btn{background:none;border:1px solid var(--border);color:var(--text-dim);font-family:var(--font-body);font-size:.55rem;font-weight:700;letter-spacing:.08em;padding:.2em .45em;border-radius:3px;cursor:pointer;transition:color .3s,border-color .3s,background .3s}.lang-btn:hover{color:var(--accent);border-color:var(--accent)}.lang-btn.active{color:var(--bg);background:var(--accent);border-color:var(--accent)}.menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:none;padding:.5rem}.menu-toggle span{display:block;width:28px;height:2px;background:var(--text);transition:all .3s}.menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.mobile-menu{position:fixed;top:0;left:0;width:100%;height:100vh;background:#0a0a0ad9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;z-index:8999;opacity:0;visibility:hidden;transition:opacity .4s,visibility .4s}.mobile-menu.active{opacity:1;visibility:visible}.mobile-lang-switch{margin-top:0;margin-left:0;margin-bottom:1.5rem;justify-content:center}.mobile-lang-switch .lang-btn{font-size:.75rem;padding:.35em .8em}.mobile-link{font-family:var(--font-display);font-size:.55rem;letter-spacing:.06em;opacity:0;transform:translateY(30px);transition:all .4s}.mobile-menu.active .mobile-link{opacity:1;transform:translateY(0)}.mobile-menu.active .mobile-link:nth-child(1){transition-delay:.1s}.mobile-menu.active .mobile-link:nth-child(2){transition-delay:.15s}.mobile-menu.active .mobile-link:nth-child(3){transition-delay:.2s}.mobile-menu.active .mobile-link:nth-child(4){transition-delay:.25s}.mobile-menu.active .mobile-link:nth-child(5){transition-delay:.3s}.mobile-menu.active .mobile-link:nth-child(6){transition-delay:.35s}.mobile-menu.active .mobile-link:nth-child(7){transition-delay:.4s}.mobile-menu.active .mobile-link:nth-child(8){transition-delay:.45s}@media(hover:hover){.mobile-link:hover{color:var(--accent)}}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-bg{position:absolute;inset:0;z-index:0}.hero-slideshow{position:absolute;inset:0}.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.5s ease-in-out}.hero-slide.active{opacity:1}.hero-overlay{position:absolute;inset:0;background:#0000008c;z-index:1}.grid-overlay{position:absolute;inset:0;background-image:linear-gradient(rgba(94,238,180,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(94,238,180,.03) 1px,transparent 1px);background-size:80px 80px;z-index:2}.noise-overlay{position:absolute;inset:0;opacity:.04;z-index:2;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:128px}.gradient-orb{position:absolute;border-radius:50%;filter:blur(100px);opacity:.4}.orb-1{width:600px;height:600px;background:var(--accent3);top:-200px;right:-100px;animation:float1 8s ease-in-out infinite}.orb-2{width:400px;height:400px;background:var(--accent2);bottom:-100px;left:-100px;animation:float2 10s ease-in-out infinite}.orb-3{width:300px;height:300px;background:var(--accent);top:50%;left:50%;transform:translate(-50%,-50%);opacity:.15;animation:float3 12s ease-in-out infinite}@keyframes float1{0%,to{transform:translate(0)}50%{transform:translate(-60px,60px)}}@keyframes float2{0%,to{transform:translate(0)}50%{transform:translate(40px,-40px)}}@keyframes float3{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.3)}}.hero-content{position:relative;z-index:3;text-align:center;padding:2rem}.hero-logo{width:clamp(120px,20vw,220px);height:auto;filter:brightness(0) invert(1);margin-bottom:2rem;opacity:0;transform:translateY(20px)}.hero-tag{font-size:.85rem;letter-spacing:.4em;color:var(--text-dim);margin-bottom:1.5rem;opacity:0;transform:translateY(20px)}.hero-title{font-family:"GmarketSans",var(--font-display);font-size:clamp(3.5rem,10vw,9rem);line-height:1;letter-spacing:.02em;margin-bottom:1.5rem}.hero-title .line{display:block;overflow:hidden}.hero-title .word{display:inline-block;opacity:0;transform:translateY(100%)}.hero-title .accent,.contact-title .accent{color:var(--accent);text-shadow:0 0 60px rgba(94,238,180,.3)}.hero-desc{font-family:var(--font-kr);font-size:1.15rem;color:var(--text-dim);margin-bottom:2.5rem;font-weight:300;letter-spacing:.1em;opacity:0;transform:translateY(20px)}.hero-cta{display:inline-flex;align-items:center;gap:.8rem;padding:1rem 2.5rem;border:1px solid var(--accent);border-radius:50px;font-size:.9rem;font-weight:600;letter-spacing:.2em;color:var(--accent);transition:all .4s;opacity:0;transform:translateY(20px)}.hero-cta:hover{background:var(--accent);color:var(--bg)}.hero-cta svg{transition:transform .3s}.hero-cta:hover svg{transform:translate(4px)}.scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem}.scroll-line{width:1px;height:50px;background:linear-gradient(to bottom,var(--accent),transparent);animation:scrollPulse 2s ease-in-out infinite}@keyframes scrollPulse{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.3;transform:scaleY(.6)}}.scroll-indicator span{font-size:.65rem;letter-spacing:.3em;color:var(--text-dim)}.marquee-section{padding:1.5rem 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden}.marquee-track{display:flex;width:max-content;animation:marquee 20s linear infinite}.marquee-track span{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.5rem);letter-spacing:.15em;white-space:nowrap;padding-right:0;color:var(--text-dim)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.section-header{display:flex;align-items:baseline;gap:1.5rem;margin-bottom:4rem;opacity:0;transform:translateY(40px)}.section-number{font-family:var(--font-display);font-size:1.2rem;color:var(--accent);letter-spacing:.1em}.section-title{font-family:var(--font-display);font-size:clamp(3rem,8vw,6rem);letter-spacing:.05em;line-height:1}.section-title .outline{-webkit-text-stroke:1.5px var(--text);color:transparent}.about{padding:8rem 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.about-text{opacity:0;transform:translateY(40px)}.about-lead{font-family:var(--font-kr);font-size:1.5rem;line-height:1.6;margin-bottom:1.5rem;font-weight:400;word-break:keep-all}.about-lead strong{color:var(--accent);font-weight:700}.about-text p:last-child{font-family:var(--font-kr);color:var(--text-dim);line-height:1.8;font-size:.95rem;word-break:keep-all}.about-stats{display:grid;grid-template-columns:1fr 1fr;gap:2rem;opacity:0;transform:translateY(40px)}.stat-wide{grid-column:1 / -1}.stat{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;text-align:center;transition:border-color .3s,transform .3s}.stat:hover{border-color:var(--accent);transform:translateY(-4px)}.stat-number{font-family:var(--font-display);font-size:3.5rem;color:var(--accent);line-height:1}.stat-plus{font-family:var(--font-display);font-size:2rem;color:var(--accent)}.stat-label{display:block;font-family:var(--font-kr);font-size:.85rem;color:var(--text-dim);margin-top:.3rem;letter-spacing:.05em}.classes{padding:8rem 0;background:linear-gradient(180deg,var(--bg) 0%,#0d0d0d 100%)}.classes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.class-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:transform .4s,border-color .4s;opacity:0;transform:translateY(40px)}.class-card:hover{transform:translateY(-8px);border-color:var(--accent)}.card-visual{position:relative;height:160px;display:flex;align-items:center;justify-content:center;overflow:hidden}.card-img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .4s}.class-card:hover .card-img{transform:scale(1.1)}.card-emoji{font-size:4rem;position:relative;z-index:1;transition:transform .4s}.class-card:hover .card-emoji{transform:scale(1.2) rotate(-5deg)}.card-gradient{position:absolute;inset:0;opacity:.15;transition:opacity .4s}[data-genre=choreo] .card-gradient{background:linear-gradient(135deg,#ff61d2,#f36)}[data-genre=kpop] .card-gradient{background:linear-gradient(135deg,#7b61ff,#c861ff)}[data-genre=hiphop] .card-gradient{background:linear-gradient(135deg,#f36,#ff6b35)}[data-genre=sexy] .card-gradient{background:linear-gradient(135deg,#f36,#ff61d2)}[data-genre=audition] .card-gradient{background:linear-gradient(135deg,#c8ff00,#0f8)}[data-genre=workshop] .card-gradient{background:linear-gradient(135deg,#00d4ff,#7b61ff)}.class-card:hover .card-gradient{opacity:.3}.card-content{padding:1.5rem}.card-content h3{font-family:var(--font-display);font-size:clamp(1.1rem,2vw,1.6rem);letter-spacing:.05em;margin-bottom:.5rem}.card-content p{font-family:var(--font-kr);font-size:.85rem;color:var(--text-dim);line-height:1.6;margin-bottom:1rem}.card-meta{display:flex;justify-content:flex-start;gap:.4rem;align-items:center;padding-top:1rem;border-top:1px solid var(--border)}.card-meta .level{font-size:.7rem;font-weight:700;letter-spacing:.15em;padding:.3em .8em;background:#5eeeb41a;color:var(--accent);border-radius:50px}.card-meta .time{font-size:.7rem;color:var(--text-dim);letter-spacing:.1em}.video-banner{padding:10rem 0;text-align:center;position:relative;background:radial-gradient(ellipse at center,rgba(123,97,255,.15) 0%,transparent 70%),var(--bg)}.video-text{opacity:0;transform:scale(.9)}.big-text{display:block;font-family:var(--font-display);font-size:clamp(4rem,12vw,12rem);line-height:.95;letter-spacing:.05em}.outline-white{-webkit-text-stroke:2px var(--text);color:transparent}.accent-outline{-webkit-text-stroke:2px var(--accent);color:transparent;text-shadow:0 0 60px rgba(94,238,180,.3)}.instructors{padding:8rem 0}.crew-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.crew-card{text-align:center;padding:2.5rem 1.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:transform .4s,border-color .4s;opacity:0;transform:translateY(40px)}.crew-card:hover{transform:translateY(-6px);border-color:var(--accent)}.crew-avatar{width:100px;height:100px;margin:0 auto 1.5rem;border-radius:50%;overflow:hidden}.avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:2rem;letter-spacing:.1em;background:hsl(var(--hue),60%,20%);border:2px solid hsl(var(--hue),60%,40%);color:hsl(var(--hue),80%,70%);border-radius:50%}.avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.crew-card h3{font-family:var(--font-display);font-size:1.6rem;letter-spacing:.1em;transition:color .3s;margin-bottom:.3rem}.crew-flags{display:block;font-size:1.2rem;margin-bottom:.5rem;letter-spacing:.2em}.crew-genre{display:block;font-size:.7rem;font-weight:700;letter-spacing:.2em;color:var(--accent);margin-bottom:1rem;transition:color .3s}.crew-languages{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;margin-bottom:.8rem}.crew-lang-badge{display:inline-block;padding:2px 10px;border-radius:20px;font-size:.65rem;font-weight:600;letter-spacing:.04em;border:1px solid rgba(255,255,255,.15);color:#ffffffb3;background:#ffffff0d}.crew-card p{font-family:var(--font-kr);font-size:.85rem;color:var(--text-dim);line-height:1.5}.crew-card--recruit{border-style:dashed;border-color:#ffffff40;background:#2a8a650a;transition:border-color .3s,background .3s}.crew-card--recruit:has(.recruit-btn:not(.recruit-btn--manager):hover){border-color:var(--accent);background:#5eeeb414}.crew-card--recruit:has(.recruit-btn:not(.recruit-btn--manager):hover) .recruit-avatar{border-color:var(--accent)!important;color:var(--accent)!important}.crew-card--recruit:has(.recruit-btn:not(.recruit-btn--manager):hover) h3,.crew-card--recruit:has(.recruit-btn:not(.recruit-btn--manager):hover) .crew-genre{color:var(--accent)}.crew-card--recruit:has(.recruit-btn--manager:hover){border-color:#4a9eff;background:#4a9eff14}.crew-card--recruit:has(.recruit-btn--manager:hover) .recruit-avatar{border-color:#4a9eff!important;color:#4a9eff!important}.crew-card--recruit:has(.recruit-btn--manager:hover) h3,.crew-card--recruit:has(.recruit-btn--manager:hover) .crew-genre{color:#4a9eff}.recruit-avatar{background:transparent!important;border:2px dashed rgba(255,255,255,.25)!important;color:#fff!important;font-size:1.4rem!important;transition:border-color .3s,color .3s}.crew-card--recruit h3{font-size:1.4rem;margin-bottom:.4rem}.crew-card--recruit .crew-genre{color:#fff;font-size:.75rem;letter-spacing:.1em;margin-bottom:.6rem}.crew-card--recruit p{font-size:.8rem;margin-bottom:.3rem}.recruit-btns{display:flex;justify-content:center;gap:.5rem;margin-top:1rem}.recruit-btn{display:inline-block;padding:.45rem .9rem;font-family:var(--font-kr);font-size:.75rem;font-weight:700;color:#000;background:var(--accent);border:none;border-radius:4px;text-decoration:none;letter-spacing:.05em;transition:background .3s,color .3s}.recruit-btn:hover{background:var(--accent);color:#000}.recruit-btn--manager{background:var(--accent3);color:#fff}.recruit-btn--manager:hover{background:#4a9eff;color:#fff}.schedule{padding:8rem 0;background:#0d0d0d}.schedule-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius);border:1px solid var(--border);opacity:0;transform:translateY(40px);scrollbar-width:none}.schedule-table-wrapper::-webkit-scrollbar{display:none}.schedule-table{width:100%;border-collapse:collapse}.schedule-table th,.schedule-table td{padding:1rem;text-align:center;border:1px solid var(--border);font-size:.85rem}.schedule-table thead th{background:var(--bg-card);font-family:var(--font-display);font-size:1rem;letter-spacing:.2em;color:var(--accent);padding:1.2rem}.time-cell{font-family:var(--font-display);font-size:1.1rem;letter-spacing:.1em;color:var(--text-dim);background:var(--bg-card);min-width:80px}.pill{display:inline-block;padding:.5em 1em;border-radius:8px;font-size:.75rem;font-weight:700;letter-spacing:.1em;line-height:1.4}.pill small{display:block;font-weight:400;font-size:.65rem;opacity:.7;margin-top:.2em}.pill.hiphop{background:#ff336626;color:#f36}.pill.waacking{background:#5eeeb41f;color:#c8ff00}.pill.popping{background:#7b61ff26;color:#7b61ff}.pill.choreo{background:#ff61d226;color:#ff61d2}.pill.house{background:#00ff881f;color:#0f8}.pill.krump{background:#ff333326;color:#f33}.studio-label{font-family:var(--font-display);font-size:2rem;letter-spacing:.15em;color:var(--accent);margin-bottom:1.5rem;margin-top:3rem;opacity:0;transform:translateY(40px)}.studio-label:first-of-type{margin-top:0}.schedule-vertical{min-width:750px;table-layout:fixed}.schedule-vertical td{vertical-align:top;padding:.4rem .3rem;height:280px}.sched-item{padding:.4rem;border-radius:6px;margin-bottom:.35rem;font-size:.6rem;line-height:1.3;font-weight:600;letter-spacing:.02em;min-height:42px;display:flex;flex-direction:column;justify-content:center}.sched-item:last-child{margin-bottom:0}.sched-time{display:block;font-size:.6rem;font-weight:400;opacity:.7;margin-bottom:.2em;letter-spacing:.08em}.sched-class{display:block;font-weight:700;font-size:.58rem;letter-spacing:.02em}.sched-item small{display:block;font-weight:400;font-size:.5rem;opacity:.7;margin-top:.1em}.sched-item.jongwan{background:#5eeeb426;color:#5eeeb4}.sched-item.kim{background:#7b61ff26;color:#7b61ff}.sched-item.pureum{background:#ff61d226;color:#ff61d2}.sched-item.tam{background:#ffb43226;color:#ffb432}.sched-item.yoon{background:#ff336626;color:#f36}.sched-item.linh{background:#a855f726;color:#a855f7}.sched-item.general{background:#ffffff14;color:var(--text-dim)}.sched-day-split{display:flex;gap:.4rem}.sched-studio{flex:1;min-width:0}.studio-tag{display:block;font-family:var(--font-display);font-size:.45rem;letter-spacing:.1em;color:var(--accent);opacity:.5;margin-bottom:.2rem;text-align:center}.empty-day{display:block;text-align:center;color:var(--text-dim);padding:1rem 0;font-size:.9rem}@media(max-width:768px){.schedule-vertical{min-width:700px}.schedule-vertical td{height:auto;min-height:200px}.sched-item{font-size:.58rem;min-height:36px;padding:.35rem}.sched-class{font-size:.55rem}.sched-item small{font-size:.48rem}.studio-tag{font-size:.42rem}}.news{padding:8rem 0}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.news-carousel{position:relative}.news-carousel-inner{position:relative;overflow:hidden;padding:0 3rem}.news-carousel-track{position:relative}.news-carousel-slide{position:absolute;top:0;width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;transition:transform .5s cubic-bezier(.4,0,.2,1),opacity .5s}.news-carousel-slide.active{transform:translate(0);opacity:1;pointer-events:all;position:relative}.news-carousel-slide.prev{transform:translate(-105%);opacity:.3;pointer-events:none}.news-carousel-slide.next{transform:translate(105%);opacity:.3;pointer-events:none}.news-carousel-slide.hidden{transform:translate(200%);opacity:0;pointer-events:none}.news-carousel-slide .news-card,.news-carousel-slide .class-card{opacity:1;transform:none}.news-mobile-item .class-card{opacity:1!important;transform:none!important}.news-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:10;background:#ffffff14;border:1px solid var(--border);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--text);cursor:pointer;transition:background .3s,border-color .3s}.news-arrow:hover{background:#ffffff26;border-color:var(--accent);color:var(--accent)}.news-arrow--left{left:0}.news-arrow--right{right:0}.news-dots{display:flex;justify-content:center;gap:.5rem;margin-top:1.5rem}.news-dot{width:8px;height:8px;border-radius:50%;border:1px solid var(--text-dim);background:transparent;cursor:pointer;transition:background .3s,border-color .3s}.news-dot.active{background:var(--accent);border-color:var(--accent)}.news-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px dashed var(--border);font-family:var(--font-display);font-size:1rem;letter-spacing:.1em;color:var(--text-dim)}.news-card{position:relative;display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:transform .4s,border-color .4s;opacity:0;transform:translateY(40px)}.news-card:hover{transform:translateY(-6px);border-color:var(--accent)}.news-card.is-closed:hover{transform:none;border-color:var(--border)}.news-img{position:relative;aspect-ratio:4 / 5;overflow:hidden}.news-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.news-card:hover .news-img img{transform:scale(1.05)}.news-badge{position:absolute;top:1rem;left:1rem;background:var(--accent);color:var(--bg);font-size:.6rem;font-weight:800;letter-spacing:.15em;padding:.3em .8em;border-radius:50px}.news-content{padding:1.5rem;flex:1;display:flex;flex-direction:column}.news-date{font-size:.7rem;color:var(--text-dim);letter-spacing:.1em}.news-content h3{font-family:var(--font-display);font-size:1.3rem;letter-spacing:.05em;margin:.5rem 0}.news-content p{font-family:var(--font-kr);font-size:.85rem;color:var(--text-dim);line-height:1.6;margin-bottom:1rem;flex:1}.rent-promo{position:relative;display:flex;align-items:center;justify-content:center}.rent-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.3)}.rent-promo-inner{position:relative;z-index:1;text-align:center;padding:2rem}.rent-discount{display:block;font-family:var(--font-display);font-size:clamp(2.5rem,5vw,3.5rem);color:var(--accent);letter-spacing:.05em;line-height:1;margin-bottom:.5rem}.rent-title{display:block;font-family:var(--font-display);font-size:1.2rem;letter-spacing:.2em;color:var(--text);margin-bottom:.5rem}.rent-sub{display:block;font-family:var(--font-kr);font-size:.85rem;color:var(--text-dim)}.news-bottom{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.news-tag{flex-shrink:0;font-size:.65rem;font-weight:700;letter-spacing:.15em;padding:.3em .8em;background:#5eeeb41a;color:var(--accent);border-radius:50px}.news-apply-btn{display:inline-block;margin-left:auto;flex-shrink:0;padding:.6em 1.6em;font-size:.75rem;font-weight:700;letter-spacing:.1em;color:#0a0a0a;background:var(--accent);border:none;border-radius:50px;text-decoration:none;text-transform:uppercase;transition:background .3s,transform .2s;cursor:pointer;white-space:nowrap}.news-apply-btn:hover{background:#fff;transform:translateY(-2px)}.contact-popup-overlay{position:fixed;inset:0;background:#0009;z-index:1000;display:flex;align-items:center;justify-content:center}.contact-popup{background:#1a1a1a;border:1px solid var(--border);border-radius:16px;padding:2rem 2.5rem;min-width:280px;text-align:center;position:relative}.contact-popup-card{position:absolute;inset:0;z-index:20;background:#0a0a0af2;border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem}.contact-popup h4,.contact-popup-card h4{font-family:var(--font-display);font-size:1.2rem;letter-spacing:.15em;margin-bottom:1.5rem;color:var(--text)}.contact-popup-close{position:absolute;top:.8rem;right:1rem;background:none;border:none;color:var(--text-dim);font-size:1.5rem;cursor:pointer;transition:color .2s}.contact-popup-close:hover{color:#fff}.contact-popup-btns{display:flex;flex-direction:column;gap:.8rem;width:100%;max-width:240px}.contact-popup-btn{display:flex;align-items:center;gap:.8rem;padding:.8rem 1.2rem;border-radius:12px;text-decoration:none;font-size:.85rem;font-weight:600;letter-spacing:.05em;transition:transform .2s,box-shadow .2s}.contact-popup-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px #0000004d}.contact-popup-btn svg{width:22px;height:22px;flex-shrink:0}.contact-popup-btn.ig{background:linear-gradient(135deg,#833ab4,#e1306c,#f77737);color:#fff}.contact-popup-btn.zalo{background:#0068ff;color:#fff}.contact-popup-btn.kakao{background:#fee500;color:#0a0a0a}.news-apply-btn.closed{background:#bbb;color:#666;cursor:default;pointer-events:none}.gcp-popup-overlay{position:fixed;inset:0;background:#000000d9;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.gcp-popup{background:#1a1a1a;border:1px solid var(--border);border-radius:16px;padding:2rem;max-width:520px;width:100%;position:relative;text-align:center}.gcp-popup-close{position:absolute;top:.6rem;right:1rem;background:none;border:none;color:var(--text-dim);font-size:1.8rem;cursor:pointer;z-index:2;transition:color .2s}.gcp-popup-close:hover{color:#fff}.gcp-gallery{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.gcp-gallery-img{flex:1;aspect-ratio:4 / 5;overflow:hidden;border-radius:10px;background:#111}.gcp-gallery-img img{width:100%;height:100%;object-fit:cover;display:block}.gcp-arrow{background:#ffffff14;border:1px solid #333;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#ccc;flex-shrink:0;transition:background .2s}.gcp-arrow:hover{background:#ffffff26;color:#fff}.gcp-dots{display:flex;justify-content:center;gap:6px;margin-bottom:1.2rem}.gcp-dot{width:8px;height:8px;border-radius:50%;border:none;background:#444;cursor:pointer;padding:0;transition:background .2s}.gcp-dot.active{background:var(--accent)}.gcp-detail-btn{display:inline-block;padding:.75em 2.5em;font-family:var(--font-display);font-size:.95rem;font-weight:700;letter-spacing:.1em;color:#0a0a0a;background:var(--accent);border:none;border-radius:50px;cursor:pointer;text-decoration:none;transition:background .3s,transform .2s}.gcp-detail-btn:hover{background:#fff;transform:translateY(-2px)}@media(max-width:768px){.gcp-popup{padding:1.5rem 1rem;max-width:95vw}.gcp-arrow{width:30px;height:30px}}.contact{padding:8rem 0;background:radial-gradient(ellipse at bottom left,rgba(94,238,180,.08) 0%,transparent 60%),#0d0d0d}.contact-content{display:flex;flex-direction:column;align-items:center;text-align:center;opacity:0;transform:translateY(40px)}.contact-title{font-family:var(--font-display);font-size:clamp(2rem,4.5vw,3.5rem);line-height:1;letter-spacing:.05em}.contact-info{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem}.contact-label{display:block;font-size:.7rem;font-weight:700;letter-spacing:.25em;color:var(--accent);margin-bottom:.5rem}.contact-item p{font-family:var(--font-kr);font-size:.9rem;color:var(--text-dim);line-height:1.6}.contact-socials{display:flex;gap:1rem;margin-top:2.5rem;justify-content:center}.social-link{display:flex;align-items:center;gap:.5rem;padding:.7em 1.4em;border:1px solid var(--border);border-radius:50px;color:#fff;text-decoration:none;font-size:.75rem;font-weight:700;letter-spacing:.1em;transition:border-color .3s,color .3s,background .3s}.social-link svg{width:18px;height:18px}.social-link:hover{border-color:var(--accent);color:var(--accent);background:#5eeeb40d}.floating-btns{position:fixed;right:2rem;bottom:2rem;z-index:900;display:flex;flex-direction:column;gap:.6rem}.hotline-btn{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:#0a0a0a;text-decoration:none;transition:transform .3s,box-shadow .3s}.msg-btn{background:linear-gradient(135deg,#833ab4,#e1306c,#f77737);box-shadow:0 4px 20px #e1306c4d;animation:hotlinePulse 2s infinite}.kakao-btn{background:#fee500;box-shadow:0 4px 20px #fee5004d}.zalo-btn{background:#0068ff;box-shadow:0 4px 20px #0068ff4d}.hotline-btn svg{width:18px;height:18px}.hotline-btn:hover{transform:scale(1.1);box-shadow:0 6px 30px #5eeeb480}@keyframes hotlinePulse{0%,to{box-shadow:0 4px 20px #e1306c4d}50%{box-shadow:0 4px 30px #e1306c80,0 0 0 8px #e1306c1a}}.guestbook{padding:3.5rem 0;background:#0a1f18;overflow:hidden}.guestbook-area{position:relative}.bubble-stage{position:relative;width:100%;height:200px;overflow:hidden;margin-bottom:1.5rem}.bubble{position:absolute;background:#5eeeb414;border:1px solid rgba(94,238,180,.2);border-radius:20px;padding:.5em .7em .5em 1.1em;font-family:"Outfit",var(--font-kr),sans-serif;font-size:.85rem;color:#fff;white-space:nowrap;animation:bubblePop 6s ease forwards;pointer-events:auto;display:flex;align-items:center;gap:.4em;user-select:none;-webkit-user-select:none}.bubble:after{content:"";position:absolute;bottom:-6px;left:18px;width:10px;height:10px;background:#5eeeb414;border-right:1px solid rgba(94,238,180,.2);border-bottom:1px solid rgba(94,238,180,.2);transform:rotate(45deg)}@keyframes bubblePop{0%{opacity:0;transform:scale(.5) translateY(20px)}10%{opacity:1;transform:scale(1) translateY(0)}15%{transform:scale(1.05) translateY(-3px)}20%{transform:scale(1) translateY(0)}80%{opacity:1}to{opacity:0;transform:scale(.8) translateY(-15px)}}.guestbook-form{display:flex;justify-content:center;gap:.8rem}.guestbook-input{padding:.7em 1.4em;font-family:"Outfit",var(--font-kr),sans-serif;font-size:.85rem;color:#fff;background:#ffffff0d;border:1px solid var(--border);border-radius:50px;outline:none;width:280px;transition:border-color .3s}.guestbook-input::placeholder{color:#555}.guestbook-input:focus{border-color:var(--accent)}.guestbook-btn{display:inline-block;padding:.7em 2em;font-family:Outfit,sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.1em;color:#0a0a0a;text-decoration:none;background:var(--accent);border:none;border-radius:50px;cursor:pointer;transition:background .3s,transform .2s}.guestbook-btn:hover{background:#fff;transform:translateY(-2px)}.contact-page{padding-top:120px;padding-bottom:6rem;min-height:100vh;background:#0a1f18}.contact-page-header{text-align:center;margin-bottom:3rem}.contact-page-title{font-family:var(--font-display);font-size:clamp(3rem,8vw,7rem);letter-spacing:.05em;line-height:1;color:var(--text)}.contact-page-title .outline{-webkit-text-stroke:1.5px var(--accent);color:transparent}.contact-page-body{max-width:700px;margin:0 auto}.contact-page-section{margin-bottom:3rem}.contact-page-label{font-family:var(--font-display);font-size:1rem;letter-spacing:.15em;color:var(--accent);margin-bottom:1.2rem;padding-bottom:.5rem;border-bottom:1px solid rgba(200,255,0,.15)}.contact-page-studios{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.contact-page-studio{background:#ffffff0a;border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem}.studio-name{font-family:var(--font-display);font-size:1rem;letter-spacing:.08em;color:var(--text);display:block;margin-bottom:.6rem}.studio-address{font-size:.85rem;color:var(--text-dim);line-height:1.6;margin-bottom:.8rem}.studio-phone{display:inline-flex;align-items:center;gap:.4rem;color:var(--accent);font-family:var(--font-display);font-size:.95rem;letter-spacing:.05em;text-decoration:none;transition:opacity .2s}.studio-phone:hover{opacity:.7}.contact-page-hours{display:flex;align-items:center;gap:1rem;font-size:.85rem;color:var(--text-dim)}.contact-page-hours-label{font-family:var(--font-display);letter-spacing:.1em;color:var(--text)}.contact-page-sns,.contact-page-inquiry{display:flex;flex-wrap:wrap;gap:.8rem}.contact-sns-btn,.contact-inquiry-btn{display:flex;align-items:center;gap:.7rem;padding:.8rem 1.4rem;border-radius:12px;font-family:var(--font-display);font-size:.85rem;letter-spacing:.05em;text-decoration:none;color:#fff;transition:transform .2s,box-shadow .2s}.contact-sns-btn:hover,.contact-inquiry-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px #0000004d}.contact-sns-btn svg,.contact-inquiry-btn svg{width:22px;height:22px;flex-shrink:0}.contact-sns-btn{background:transparent;border:1.5px solid var(--accent);color:var(--accent)}.contact-sns-btn:hover{background:#5eeeb414}.contact-sns-btn svg{color:var(--accent);fill:var(--accent);stroke:var(--accent)}.contact-inquiry-btn.ig{background:linear-gradient(135deg,#833ab4,#e1306c,#f77737)}.contact-inquiry-btn.zalo{background:#0068ff}.contact-inquiry-btn.kakao{background:#fee500;color:#0a0a0a}@media(max-width:768px){.contact-page-studios{grid-template-columns:1fr}.contact-page-hours{flex-direction:column;align-items:flex-start;gap:.3rem}.contact-page-sns,.contact-page-inquiry{flex-direction:column}.contact-sns-btn,.contact-inquiry-btn{width:100%}}.guestbook-page{padding-top:120px;padding-bottom:6rem;min-height:100vh;background:#0a1f18}.guestbook-page-header{text-align:center;margin-bottom:3rem}.guestbook-page-title{font-family:var(--font-display);font-size:clamp(3rem,8vw,7rem);letter-spacing:.05em;line-height:1;color:var(--text)}.guestbook-page-title .outline{-webkit-text-stroke:1.5px var(--accent);color:transparent}.guestbook-page-desc{font-family:var(--font-kr);color:var(--text-dim);font-size:.9rem;margin-top:.8rem}.bubble-heart{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;transition:transform .2s;flex-shrink:0;line-height:1}.bubble-heart:hover:not(.liked){transform:scale(1.3)}.bubble-heart.liked{cursor:default;animation:heartPop .35s ease}.bubble-heart-float{position:absolute;top:-10px;right:8px;font-size:1.2rem;animation:floatUp .8s ease forwards;pointer-events:none}@keyframes heartPop{0%{transform:scale(1)}50%{transform:scale(1.4)}to{transform:scale(1)}}@keyframes floatUp{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-30px) scale(1.5)}}.guestbook-list-title{font-family:var(--font-display);font-size:1.3rem;letter-spacing:.05em;color:var(--accent);margin-bottom:1.5rem}.guestbook-best{margin-top:3rem}.best-list{display:flex;flex-direction:column;gap:.6rem}.best-row{display:flex;align-items:center;gap:.8rem;background:#ffffff0a;border:1px solid rgba(94,238,180,.1);border-radius:10px;padding:.8rem 1.2rem}.best-medal{font-size:1.2rem;flex-shrink:0}.best-msg{font-family:"Outfit",var(--font-kr),sans-serif;font-size:.9rem;color:#fff;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.best-likes{display:flex;align-items:center;gap:.3rem;font-family:Outfit,sans-serif;font-size:.75rem;color:var(--accent);flex-shrink:0}.lucky-overlay{position:fixed;inset:0;z-index:10000;background:#000000d9;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .4s}.lucky-overlay.active{opacity:1;pointer-events:all}.lucky-popup{background:#141414;border:1px solid var(--border);border-radius:16px;padding:2.5rem 2rem;text-align:center;position:relative;max-width:400px;width:90%}.lucky-close{position:absolute;top:1rem;right:1.2rem;font-size:1.8rem;color:var(--text-dim);background:none;border:none;cursor:pointer;transition:color .3s}.lucky-close:hover{color:#fff}.lucky-title{font-family:Outfit,sans-serif;font-weight:800;font-size:1.8rem;letter-spacing:.05em;color:var(--accent);margin-bottom:.3rem}.lucky-sub{font-family:var(--font-kr);font-size:.85rem;color:var(--text-dim);margin-bottom:1.5rem}.wheel-container{position:relative;display:inline-block;margin-bottom:1.5rem}.wheel-pointer{position:absolute;top:-10px;left:50%;transform:translate(-50%);width:0;height:0;border-left:12px solid transparent;border-right:12px solid transparent;border-top:24px solid var(--accent);z-index:2;filter:drop-shadow(0 2px 6px rgba(94,238,180,.4))}#wheel-canvas{border-radius:50%;box-shadow:0 0 30px #5eeeb426,inset 0 0 0 4px var(--border)}.lucky-spin-btn{display:inline-block;padding:.8em 3em;font-family:Outfit,sans-serif;font-size:1rem;font-weight:800;letter-spacing:.1em;color:#0a0a0a;background:var(--accent);border:none;border-radius:50px;cursor:pointer;transition:background .3s,transform .2s}.lucky-spin-btn:hover{background:#fff;transform:translateY(-2px)}.lucky-spin-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.lucky-result{display:none;margin-top:1.5rem}.lucky-result.show{display:block;animation:fadeUp .5s ease}@keyframes fadeUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.result-icon{font-size:3rem;margin-bottom:.5rem}.result-title{font-family:Outfit,sans-serif;font-weight:800;font-size:1.4rem;letter-spacing:.02em;margin-bottom:.3rem}.result-desc{font-family:var(--font-kr);font-size:.8rem;color:var(--text-dim);margin-bottom:1rem}.result-code{display:none;font-family:Outfit,sans-serif;font-weight:700;font-size:1.6rem;letter-spacing:.15em;color:var(--accent);background:#5eeeb414;border:1px dashed var(--accent);border-radius:8px;padding:.8em 1.5em;margin-bottom:1rem}.result-code.show{display:inline-block}.lucky-close-btn{padding:.6em 2em;font-family:var(--font-kr);font-size:.85rem;font-weight:700;color:#fff;background:transparent;border:1px solid var(--border);border-radius:50px;cursor:pointer;transition:border-color .3s}.lucky-close-btn:hover{border-color:var(--accent)}.lucky-dismiss-btn{display:block;margin:12px auto 0;padding:0;background:none;border:none;color:#555;font-size:.72rem;font-family:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.lucky-dismiss-btn:hover{color:#888}.footer{border-top:1px solid var(--border);padding:2rem 0}.footer-inner{display:flex;justify-content:space-between;align-items:center}.footer-logo{font-family:var(--font-display);font-size:1rem;letter-spacing:.2em;color:var(--text-dim)}.footer-copy{font-size:.75rem;color:var(--text-dim);letter-spacing:.1em}[data-scroll].visible{opacity:1!important;transform:translateY(0) scale(1)!important;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.hero-title .word.visible{opacity:1!important;transform:translateY(0)!important;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.class-detail-overlay{position:fixed;inset:0;z-index:10000;background:#000000d9;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .4s}.class-detail-overlay.active{opacity:1;pointer-events:all}.class-detail-modal{border-radius:var(--radius);width:900px;max-width:94vw;height:72vh;max-height:72vh;overflow:hidden;position:relative;display:flex;flex-direction:column;background:#0a0a0a;animation:modalSlideUp .4s cubic-bezier(.16,1,.3,1)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.class-detail-close{position:absolute;top:.8rem;right:1rem;font-size:1.8rem;color:#fffc;background:none;border:none;cursor:pointer;z-index:3;transition:color .3s;text-shadow:0 1px 4px rgba(0,0,0,.5)}.class-detail-close:hover{color:#fff}.class-detail-img{position:absolute;inset:0;overflow:hidden;z-index:0}.class-detail-img img{width:100%;height:100%;object-fit:cover;object-position:center}.class-detail-img .detail-gradient{position:absolute;inset:0;opacity:.2}.class-detail-img:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#0a0a0a4d,#0a0a0ab3 40%,#0a0a0af2 65%,#0a0a0a 80%)}.class-detail-body{position:relative;z-index:1;padding:2rem 2.5rem 1rem;display:flex;flex-direction:column;gap:1rem;overflow-y:auto;flex:1}.class-detail-top{display:flex;gap:2rem;align-items:flex-start}.class-detail-left{flex:1.2;min-width:0;display:flex;flex-direction:column;gap:.6rem}.class-detail-right{flex:1;min-width:0}.class-detail-body h2{font-family:var(--font-display);font-size:2.4rem;letter-spacing:.05em;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.4)}.class-detail-levels{display:flex;gap:.4rem;flex-wrap:wrap}.class-detail-levels .level{font-size:.7rem;font-weight:700;padding:.25em .7em;background:#ffffff1f;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:4px;color:var(--accent);letter-spacing:.08em}.class-detail-desc{font-family:var(--font-kr);font-size:.85rem;color:#ffffffbf;line-height:1.7}.class-detail-curriculum h4{font-family:var(--font-display);font-size:.85rem;color:#ffffffe6;letter-spacing:.05em;margin-bottom:.5rem}.class-detail-curriculum ul{list-style:none;display:flex;flex-direction:column;gap:.35rem}.class-detail-curriculum li{font-size:.8rem;color:#ffffffb3;padding-left:1rem;position:relative}.class-detail-curriculum li:before{content:"●";position:absolute;left:0;font-size:.45rem;top:.35em;color:var(--accent)}.class-detail-videos{display:flex;align-items:center;gap:.5rem;width:100%;margin-top:1.2rem}.video-wheel-nav{flex-shrink:0;width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:#ffffff0f;color:#fff;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2}.video-wheel-nav:hover{background:#ffffff26;border-color:#fff6}.video-wheel{flex:1;overflow:hidden;position:relative}.video-wheel-track{display:flex;transition:transform .5s cubic-bezier(.25,.8,.25,1)}.video-wheel-item{flex:0 0 50%;padding:0 .4rem;box-sizing:border-box;transition:opacity .5s ease,transform .5s cubic-bezier(.25,.8,.25,1)}.video-wheel-item-inner{border-radius:8px;overflow:hidden;aspect-ratio:16 / 9}.video-wheel-item-inner iframe{width:100%;height:100%;border:none;display:block}.video-wheel-item.is-center{opacity:1;transform:scale(1)}.video-wheel-item.is-side{opacity:.3;transform:scale(.9);cursor:pointer}.video-wheel-item.is-side .video-wheel-item-inner iframe{pointer-events:none}.video-wheel-item.is-side:hover{opacity:.5}.audition-page{min-height:100vh;padding:8rem 1.5rem 4rem;background:var(--bg)}.audition-container{max-width:640px;margin:0 auto}.audition-header{text-align:center;margin-bottom:3rem}.audition-header h1{font-family:var(--font-display);font-size:clamp(2rem,6vw,3rem);letter-spacing:.08em;color:#fff;margin-bottom:.8rem}.audition-header p{font-family:var(--font-kr);font-size:.9rem;color:var(--text-dim)}.audition-form{display:flex;flex-direction:column;gap:1.4rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-group label{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.06em;color:var(--text-dim);text-transform:uppercase}.form-group input,.form-group select,.form-group textarea{font-family:var(--font-body);font-size:.9rem;color:#fff;background:#ffffff0a;border:1px solid var(--border);border-radius:10px;padding:.8em 1em;outline:none;transition:border-color .3s,background .3s}.form-group input::placeholder,.form-group textarea::placeholder{color:#444}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent);background:#5eeeb408}.form-group select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23888' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1em center;padding-right:2.5em}.form-group select option{background:#1a1a1a;color:#fff}.form-group textarea{resize:vertical;min-height:100px}.form-group.has-error input,.form-group.has-error select,.form-group.has-error textarea{border-color:var(--accent2)}.form-error{font-size:.72rem;color:var(--accent2)}.form-status-error{font-size:.85rem;color:var(--accent2);text-align:center;padding:.5rem}.audition-submit{margin-top:.5rem;padding:1em 2.5em;font-family:var(--font-display);font-size:1rem;font-weight:700;letter-spacing:.12em;color:#0a0a0a;background:var(--accent);border:none;border-radius:50px;cursor:pointer;transition:background .3s,transform .2s;align-self:center}.audition-submit:hover{background:#fff;transform:translateY(-2px)}.audition-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.audition-success{text-align:center;padding:4rem 2rem}.audition-success-icon{width:64px;height:64px;margin:0 auto 1.5rem;border-radius:50%;background:var(--accent);color:#0a0a0a;font-size:2rem;font-weight:700;display:flex;align-items:center;justify-content:center}.audition-success h2{font-family:var(--font-display);font-size:1.6rem;letter-spacing:.05em;color:#fff;margin-bottom:1rem}.audition-success p{font-family:var(--font-kr);font-size:.95rem;color:var(--text-dim);line-height:1.8}.audition-success-block{text-align:center;margin:1.2rem 0;font-family:var(--font-vn)}.audition-success-block:last-of-type{font-family:var(--font-kr)}.audition-success-msg{font-family:inherit;font-size:1.05rem;font-weight:600;color:#fff;margin-bottom:.5rem}.audition-success-detail{font-family:inherit;font-size:.9rem;color:var(--text-dim);line-height:1.7}.audition-success-note{font-family:inherit;font-size:.82rem;color:var(--text-dim);opacity:.7;margin-top:.4rem}.audition-success-divider{border:none;border-top:1px solid rgba(255,255,255,.1);margin:1.2rem auto;width:60%}@media(max-width:1024px){.classes-grid,.crew-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.class-detail-modal{width:100vw;height:100vh;max-width:100vw;max-height:100vh;border-radius:0}.class-detail-img{border-radius:0}.class-detail-top{flex-direction:column;gap:1rem}.class-detail-body{padding:1.5rem}.class-detail-body h2{font-size:2rem}.class-detail-desc{line-height:2}.class-detail-curriculum ul{gap:.6rem}.class-detail-curriculum li{line-height:1.8}.class-detail-videos{gap:0;overflow:hidden;margin:0 -1.5rem;padding:0;flex-direction:column}.video-wheel-nav{display:none}.video-wheel{overflow:hidden;width:100%;position:relative}.video-swipe-overlay{position:absolute;inset:0;z-index:5;background:transparent;touch-action:pan-y}.video-wheel-item{flex:0 0 100%;padding:0 .8rem}.video-wheel-item.is-side{opacity:.4;transform:scale(.95)}.video-dots{display:flex;justify-content:center;gap:6px;padding:.8rem 0 .3rem}.video-dot{width:7px;height:7px;border-radius:50%;background:#ffffff40;cursor:pointer;transition:background .3s,transform .3s}.video-dot.active{background:var(--accent);transform:scale(1.3)}.nav-links{display:none}.menu-toggle{display:flex}#navbar .nav-icons{display:none}.mobile-top-icons{display:flex;gap:.3rem;margin-bottom:1.5rem}#navbar{padding:1rem 1.5rem}.about-grid{grid-template-columns:1fr;gap:3rem}.about-lead{font-size:1.2rem}.about-text p:last-child{font-size:.85rem}.classes-grid{display:flex;flex-direction:column;gap:1rem}.class-card{width:100%;opacity:1!important;transform:none!important}.crew-card,.news-card{opacity:1!important;transform:none!important}.crew-grid{display:flex;gap:1rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x mandatory;padding-bottom:.5rem}.crew-grid::-webkit-scrollbar{display:none}.crew-card{flex:0 0 70vw;max-width:280px;scroll-snap-align:center}.news-mobile-carousel{overflow:visible;position:relative;touch-action:pan-y}.news-mobile-track{display:flex}.news-mobile-item{flex:0 0 78%;padding:0 .3rem;box-sizing:border-box;transition:opacity .4s ease,transform .4s ease;opacity:.3;transform:scale(.93)}.news-mobile-item.is-active{opacity:1;transform:scale(1)}.news-mobile-item .news-card{opacity:1;transform:none}.news-mobile-dots{display:flex;justify-content:center;gap:.4rem;margin-top:1rem}.contact-content{grid-template-columns:1fr;text-align:center;gap:3rem}.contact-info{grid-template-columns:1fr;text-align:center}.contact-socials{flex-wrap:wrap;justify-content:center}.footer-inner{flex-direction:column;gap:1rem;text-align:center}.video-banner{padding:6rem 0}.mobile-link{font-size:1.1rem}.audition-page{padding:6rem 1rem 3rem}.form-row{grid-template-columns:1fr}}@media(max-width:480px){.container{padding:0 1rem}.hero-title{font-size:clamp(2.5rem,12vw,5rem)}.section-title{font-size:clamp(2.5rem,10vw,4rem)}.about-stats{grid-template-columns:1fr 1fr;gap:1rem}.stat{padding:1.5rem 1rem}.stat-number{font-size:2.5rem}.crew-card{flex:0 0 75vw}.contact-title{font-size:clamp(2.5rem,12vw,5rem)}}.gallery-page{padding-top:120px;padding-bottom:6rem;min-height:100vh}.gallery-header{text-align:center;margin-bottom:3rem}.gallery-page-title{font-family:var(--font-display);font-size:clamp(3rem,8vw,7rem);letter-spacing:.05em;line-height:1}.gallery-desc{font-family:var(--font-kr);color:var(--text-dim);font-size:.9rem;margin-top:.8rem}.gallery-filters{display:flex;justify-content:center;gap:.8rem;margin-bottom:2.5rem;flex-wrap:wrap}.filter-btn{padding:.5em 1.4em;font-family:var(--font-display);font-size:.8rem;font-weight:700;letter-spacing:.15em;color:var(--text-dim);background:transparent;border:1px solid var(--border);border-radius:50px;cursor:pointer;transition:all .3s}.filter-btn:hover,.filter-btn.active{color:#0a0a0a;background:var(--accent);border-color:var(--accent)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.gallery-item{position:relative;aspect-ratio:1;overflow:hidden;cursor:pointer;opacity:0;transform:scale(.95);transition:opacity .4s,transform .4s}.gallery-item.show{opacity:1;transform:scale(1)}.gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}.gallery-item:after{content:"";position:absolute;inset:0;background:#0000;transition:background .3s}.gallery-item:hover:after{background:#0003}.gallery-item:hover img{transform:scale(1.08)}.gallery-like-btn{position:absolute;bottom:8px;right:8px;z-index:2;display:flex;align-items:center;gap:4px;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:none;border-radius:20px;padding:6px 10px;cursor:pointer;transition:transform .2s,background .3s}.gallery-like-btn:hover{background:#000000b3;transform:scale(1.1)}.gallery-like-btn.liked svg{animation:likePopGallery .35s ease}@keyframes likePopGallery{0%{transform:scale(1)}40%{transform:scale(1.3)}to{transform:scale(1)}}.gallery-like-count{font-family:Outfit,sans-serif;font-size:.72rem;font-weight:700;color:#fff;min-width:12px;text-align:center}.lightbox{position:fixed;inset:0;z-index:9999;background:#000000f2;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s}.lightbox.active{opacity:1;pointer-events:all}.lightbox-img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:4px;animation:lightboxFadeIn .3s ease}@keyframes lightboxFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.lightbox-close{position:absolute;top:1.5rem;right:2rem;font-size:2.5rem;color:#fff;background:none;border:none;cursor:pointer;line-height:1;transition:color .3s;z-index:2}.lightbox-close:hover{color:var(--accent)}.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);font-size:3rem;color:#fff;background:none;border:none;cursor:pointer;padding:1rem;transition:color .3s;z-index:2}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}.lightbox-prev:hover,.lightbox-next:hover,.nav-link.active{color:var(--accent)}@media(max-width:768px){.gallery-grid{grid-template-columns:repeat(3,1fr);gap:3px}.lightbox-prev,.lightbox-next{font-size:2rem}}.gallery-page .class-card,.gallery-page .crew-card,.gallery-page .news-card,.gallery-page .schedule-table-wrapper,.gallery-page .studio-label,.gallery-page .section-header,.gallery-page .sched-item{opacity:1!important;transform:none!important;transition-delay:0s!important}.news-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.news-page-grid .news-card{opacity:1;transform:none}@media(max-width:1024px){.news-page-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.news-page-grid{grid-template-columns:1fr}}.mypage{padding-top:100px;padding-bottom:3rem;min-height:100vh}.mypage-header{text-align:center;margin-bottom:1.5rem}.mypage-title{font-family:var(--font-display);font-size:clamp(2rem,6vw,4rem);letter-spacing:.05em;line-height:1}.mypage-loading{text-align:center;padding:3rem 0;color:var(--text-dim);font-size:.9rem}.mypage-login-prompt{text-align:center;padding:4rem 0}.mypage-login-prompt h2{font-family:var(--font-display);font-size:1.4rem;margin-bottom:.5rem}.mypage-login-prompt p{color:var(--text-dim);margin-bottom:1.5rem;font-size:.9rem}.mypage-google-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.5rem;background:#fff;color:#333;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.mypage-google-btn:hover{transform:translateY(-2px);box-shadow:0 4px 20px #5eeeb440}.mypage-profile-card{display:flex;align-items:center;gap:1.25rem;background:var(--bg-card);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.25rem;margin-bottom:1.25rem}.mypage-avatar{width:64px;height:64px;border-radius:50%;border:2px solid var(--accent);flex-shrink:0}.mypage-name{font-size:1.15rem;font-weight:700;margin-bottom:.15rem}.mypage-email{color:var(--text-dim);font-size:.8rem;margin-bottom:.1rem}.mypage-joined{color:var(--text-dim);font-size:.75rem}.mypage-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.5rem}.mypage-stat-card{background:var(--bg-card);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.25rem;text-align:center;transition:border-color .3s}.mypage-stat-card:hover{border-color:var(--accent)}.mypage-stat-icon{color:var(--accent);margin-bottom:.5rem}.mypage-stat-value{font-size:1.8rem;font-weight:800;line-height:1;margin-bottom:.3rem}.mypage-stat-label{color:var(--text-dim);font-size:.8rem}.mypage-fee-card{background:var(--bg-card);border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:.85rem 1rem;margin-bottom:.75rem;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.mypage-fee-label{color:var(--text-dim);font-size:.8rem}.mypage-fee-value{font-weight:700;font-size:.95rem;color:var(--accent)}.mypage-fee-card.unpaid{border-color:#ff505040}.mypage-fee-value.unpaid{color:#ff5050}.mypage-attendance-section{background:var(--bg-card);border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:.85rem 1rem}.mypage-attendance-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.6rem;font-size:.8rem;color:var(--text-dim)}.mypage-month-nav{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:.6rem}.mypage-month-arrow{background:none;border:1px solid rgba(255,255,255,.15);color:#fff;width:28px;height:28px;border-radius:50%;font-size:1.1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s,opacity .2s}.mypage-month-arrow:hover{border-color:var(--accent)}.mypage-month-arrow:disabled{opacity:.25;cursor:default}.mypage-month-label{font-size:.85rem;font-weight:600;color:#fff;min-width:100px;text-align:center}.mypage-attendance-count{font-weight:700;color:var(--accent);margin-left:.25rem}.mypage-attendance-list{display:flex;flex-wrap:wrap;gap:.35rem}.mypage-attendance-tag{padding:.2rem .5rem;background:#ffffff0f;border-radius:5px;font-size:.75rem;color:#ffffffb3}.mypage-logout-btn{display:block;margin:0 auto;padding:.55rem 2rem;background:transparent;border:1px solid var(--text-dim);color:var(--text-dim);border-radius:8px;font-size:.85rem;cursor:pointer;transition:border-color .3s,color .3s}.mypage-logout-btn:hover{border-color:var(--accent2);color:var(--accent2)}.mypage-section{margin-bottom:0;padding:1.25rem 0}.mypage-section.accent{background:#5eeeb41a;border-top:1px solid rgba(94,238,180,.15);border-bottom:1px solid rgba(94,238,180,.15);margin-left:-1rem;margin-right:-1rem;padding-left:1rem;padding-right:1rem}.mypage-section-title{font-size:1rem;font-weight:700;margin-bottom:.75rem;letter-spacing:.02em;text-align:center}.mypage-class-list{display:flex;flex-direction:column;gap:.5rem}.mypage-class-row{display:flex;align-items:center;justify-content:space-between;background:var(--bg-card);border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:.75rem 1rem;transition:border-color .3s}.mypage-class-row:hover{border-color:var(--accent)}.mypage-class-info{display:flex;align-items:center;gap:.5rem;min-width:0}.mypage-class-info .mypage-class-name{font-weight:700;font-size:.85rem}.mypage-class-info .mypage-class-instructor{color:var(--text-dim);font-size:.75rem}.mypage-class-meta{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.mypage-class-days{color:#fff;font-weight:600;font-size:.75rem}.mypage-class-time{color:var(--text-dim);font-size:.75rem}.mypage-class-studio{font-size:.65rem;font-weight:400;color:var(--text-dim);padding:.1rem .35rem;border:1px solid rgba(255,255,255,.15);border-radius:4px}.mypage-section-title svg{vertical-align:-3px;margin-right:.3rem}.mypage-mail-badge{display:inline-flex;align-items:center;justify-content:center;background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;min-width:18px;height:18px;border-radius:9px;margin-left:.4rem;padding:0 5px}.mypage-mail-list{display:flex;flex-direction:column;gap:.4rem}.mypage-mail-item{background:var(--bg-card);border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:.7rem .85rem;cursor:pointer;transition:border-color .2s}.mypage-mail-item:hover{border-color:#ffffff26}.mypage-mail-item.unread{border-color:#5eeeb440}.mypage-mail-row{display:flex;align-items:center;gap:.5rem;font-size:.8rem}.mypage-mail-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0}.mypage-mail-type{font-size:.65rem;font-weight:600;padding:.15rem .4rem;border-radius:4px;white-space:nowrap;flex-shrink:0}.mypage-mail-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.mypage-mail-date{color:var(--text-dim);font-size:.7rem;white-space:nowrap;flex-shrink:0}.mypage-mail-arrow{color:var(--text-dim);font-size:1rem;transition:transform .2s;flex-shrink:0}.mypage-mail-arrow.open{transform:rotate(90deg)}.mypage-mail-body{margin-top:.6rem;padding-top:.6rem;border-top:1px solid rgba(255,255,255,.06);font-size:.8rem;color:#ffffffbf;line-height:1.5;white-space:pre-wrap}.mypage-regfee{color:var(--text-dim);font-size:.75rem;text-align:left;margin-top:.5rem;padding-left:.25rem}.mypage-empty{text-align:center;color:var(--text-dim);padding:1.5rem 1rem;background:var(--bg-card);border:1px solid rgba(255,255,255,.06);border-radius:10px;font-size:.85rem}@media(max-width:600px){.mypage{padding-top:80px;padding-bottom:2rem}.mypage-profile-card{flex-direction:column;text-align:center;padding:1rem;gap:.75rem}.mypage-avatar{width:56px;height:56px}.mypage-stats{grid-template-columns:1fr;gap:.5rem}.mypage-class-row{flex-direction:column;align-items:flex-start;gap:.35rem;padding:.65rem .85rem}.mypage-class-meta{flex-wrap:wrap}.mypage-fee-card,.mypage-attendance-section{padding:.7rem .85rem}}.name-prompt-overlay{position:fixed;inset:0;z-index:10000;background:#000000d9;display:flex;align-items:center;justify-content:center;padding:20px}.name-prompt-card{background:#111;border:1px solid #222;border-radius:16px;padding:40px 32px;max-width:400px;width:100%;text-align:center}.name-prompt-title{font-size:1.5rem;font-weight:700;color:#fff;margin:0 0 12px;letter-spacing:1px}.name-prompt-desc{color:#d4d4d8;font-size:.92rem;margin:0 0 6px;line-height:1.5}.name-prompt-sub{color:#52525b;font-size:.75rem;margin:0 0 24px}.name-prompt-input{width:100%;padding:14px 16px;background:#1a1a1a;border:1px solid #333;border-radius:10px;color:#fff;font-size:1rem;font-family:inherit;text-align:center;outline:none;transition:border-color .2s;box-sizing:border-box}.name-prompt-input:focus{border-color:#5eeeb4}.name-prompt-input::placeholder{color:#555}.name-prompt-error{color:#f87171;font-size:.78rem;margin-top:8px}.name-prompt-btn{width:100%;margin-top:16px;padding:14px;background:#5eeeb4;color:#000;font-size:.95rem;font-weight:700;font-family:inherit;border:none;border-radius:10px;cursor:pointer;transition:opacity .2s}.name-prompt-btn:hover{opacity:.85}.name-prompt-btn:disabled{opacity:.5;cursor:not-allowed}.mypage-feedback-list{display:flex;flex-direction:column;gap:10px}.mypage-fb-item{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:16px}.mypage-fb-item.pending{border-style:dashed;opacity:.7}.mypage-fb-header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}.mypage-fb-class{font-size:.85rem;font-weight:600;color:#e4e4e7;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mypage-fb-badge{font-size:.62rem;font-weight:700;padding:2px 10px;border-radius:20px;white-space:nowrap}.mypage-fb-badge.done{background:#22c55e26;color:#22c55e}.mypage-fb-badge.pending{background:#f59e0b26;color:#f59e0b}.mypage-fb-instructor{font-size:.72rem;color:#a855f7;font-weight:600;margin-bottom:8px}.mypage-fb-summary{margin-bottom:12px}.mypage-fb-summary-label,.mypage-fb-timestamps-label{font-size:.68rem;font-weight:700;color:#52525b;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}.mypage-fb-summary-text{font-size:.82rem;color:#a1a1aa;line-height:1.6;background:#0003;border-radius:8px;padding:10px 14px}.mypage-fb-timestamps{margin-bottom:12px}.mypage-fb-ts-item{display:flex;align-items:flex-start;gap:10px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.04);font-size:.8rem}.mypage-fb-ts-item:last-child{border-bottom:none}.mypage-fb-ts-time{font-family:SF Mono,monospace;font-size:.72rem;font-weight:700;color:#a855f7;background:#a855f71a;padding:2px 8px;border-radius:4px;white-space:nowrap}.mypage-fb-ts-text{color:#a1a1aa;line-height:1.4}.mypage-fb-ts-item.good .mypage-fb-ts-time{color:#22c55e;background:#22c55e1a}.mypage-fb-ts-item.good .mypage-fb-ts-text{color:#22c55e}.mypage-fb-cheer{background:#a855f70f;border-left:3px solid #a855f7;border-radius:0 8px 8px 0;padding:12px 16px;margin-bottom:12px}.mypage-fb-cheer-text{font-size:.82rem;color:#e4e4e7;line-height:1.5;font-style:italic}.mypage-fb-cheer-from{font-size:.72rem;color:#a855f7;font-weight:600;margin-top:6px;text-align:right}.mypage-fb-content{font-size:.82rem;color:#a1a1aa;line-height:1.5;background:#0003;border-radius:8px;padding:10px 14px;margin-bottom:10px}.mypage-fb-content.empty{color:#52525b;font-style:italic}.mypage-fb-meta{display:flex;justify-content:space-between;align-items:center;font-size:.7rem;color:#52525b}.mypage-fb-video-link{color:#a855f7;font-weight:600;text-decoration:none}.mypage-fb-video-link:hover{text-decoration:underline}
