*,:before,:after{box-sizing:border-box;margin:0;padding:0}main.badminton-page{color:#1f2937;background-color:#f9fafb;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;display:flex;position:relative}main.badminton-page h1{text-align:center;color:#1f2937;margin-bottom:2rem;font-size:1.875rem;font-weight:700}.lang-switcher{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:.25rem;display:flex;position:absolute;top:1.5rem;right:1.5rem;box-shadow:0 1px 2px #0000000d}.lang-switcher button{cursor:pointer;color:#6b7280;background-color:#0000;border:none;border-radius:.375rem;padding:.375rem .75rem;font-size:.875rem;font-weight:500;transition:all .2s}.lang-switcher button:hover{color:#4b5563}.lang-switcher button.active{color:#2563eb;background-color:#eff6ff}.card-form{background-color:#fff;border:1px solid #f3f4f6;border-radius:.75rem;flex-direction:column;gap:1.5rem;width:100%;max-width:28rem;padding:1.5rem;display:flex;box-shadow:0 1px 2px #0000000d}.technique-picker{position:relative}.technique-picker-header{cursor:pointer;-webkit-user-select:none;user-select:none;background-color:#fff;border:1px solid #d1d5db;border-radius:.5rem;justify-content:space-between;align-items:center;padding:.75rem 1rem;transition:border-color .15s,box-shadow .15s;display:flex}.technique-picker-header:hover{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.placeholder-label{color:#9ca3af}.selected-label{color:#111827;font-weight:500}.chevron{color:#9ca3af;font-size:.7rem;transition:transform .2s;display:inline-block}.chevron.open{transform:rotate(180deg)}.technique-dropdown{z-index:50;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;width:100%;padding:.375rem;position:absolute;top:calc(100% + 4px);left:0;overflow:hidden;box-shadow:0 8px 24px #0000001a}.tech-option{color:#374151;cursor:pointer;border-radius:.375rem;padding:.5rem .75rem;font-size:.9rem;transition:background .1s}.tech-option:hover{background:#f3f4f6}.tech-option--selected{color:#2563eb;font-weight:500;background:#eff6ff!important}.tech-group{margin:1px 0}.tech-group-header{color:#374151;cursor:pointer;border-radius:.375rem;justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.9rem;font-weight:500;transition:background .1s;display:flex}.tech-group-header:hover{background:#f3f4f6}.group-arrow{color:#9ca3af;font-size:.8rem;transition:transform .2s;display:inline-block}.group-arrow.open{transform:rotate(180deg)}.tech-group-children{border-left:2px solid #e5e7eb;margin:2px 0 4px .75rem;padding-left:.75rem}.tech-child{color:#4b5563;cursor:pointer;border-radius:.375rem;padding:.4rem .75rem;font-size:.875rem;transition:background .1s}.tech-child:hover{color:#111827;background:#f3f4f6}.tech-child.tech-option--selected{color:#2563eb;background:#eff6ff;font-weight:500}.drop-zone{text-align:center;cursor:pointer;background-color:#f9fafb;border:2px dashed #d1d5db;border-radius:.75rem;padding:2.5rem;transition:all .2s}.drop-zone:hover{border-color:#60a5fa}.drop-zone.dragging{background-color:#fef2f2;border-color:#ef4444;transform:scale(1.02)}.drop-zone input[type=file]{display:none}.drop-label{font-size:1.125rem}.drop-sublabel{opacity:.7;margin-top:.25rem;font-size:.875rem}.drop-zone.dragging .drop-label{color:#ef4444;font-weight:700}.drop-zone:not(.dragging) .drop-label,.drop-zone:not(.dragging) .drop-sublabel{color:#6b7280}.file-selected{color:#16a34a;justify-content:center;align-items:center;gap:.5rem;font-weight:600;display:flex}.btn-submit{color:#fff;cursor:pointer;background-color:#2563eb;border:none;border-radius:.5rem;padding:.75rem;font-size:1rem;font-weight:700;transition:all .2s;box-shadow:0 4px 6px -1px #0000001a}.btn-submit:hover:not(:disabled){background-color:#1d4ed8}.btn-submit:disabled{cursor:not-allowed;background-color:#93c5fd}.btn-submit:active:not(:disabled){transform:scale(.98)}.loading-indicator{flex-direction:column;align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.loading-indicator span{color:#4b5563;font-size:.875rem;font-weight:500}.shuttle-svg{width:4rem;height:4rem}.error-banner{color:#dc2626;text-align:center;background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;padding:1rem;font-size:.875rem}.modal-overlay{z-index:100;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;background:#0009;position:absolute;inset:0}.modal-card{background:#fff;border-radius:1rem;flex-direction:column;width:100%;max-width:42rem;max-height:90vh;animation:.25s modalIn;display:flex;position:relative;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040}@keyframes modalIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{z-index:1;background:#fff;border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex;position:sticky;top:0}.modal-header h2{color:#1f2937;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;display:flex}.modal-close{cursor:pointer;color:#9ca3af;background:0 0;border:none;border-radius:9999px;padding:.5rem;transition:all .15s;display:flex}.modal-close:hover{color:#4b5563;background:#f3f4f6}.modal-body{flex-direction:column;gap:2rem;padding:1.5rem;display:flex}.section-header{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.section-icon{border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;display:flex}.section-icon.red{color:#ef4444;background:#fee2e2}.section-icon.blue{color:#3b82f6;background:#dbeafe}.section-icon.amber{color:#f59e0b;background:#fef3c7}.section-title{text-transform:uppercase;letter-spacing:.05em;color:#1f2937;font-size:.75rem;font-weight:700}.feedback-box{color:#1f2937;border-radius:.75rem;padding:1.25rem;line-height:1.6;box-shadow:0 1px 2px #0000000a}.feedback-box.red{background:#fef2f2;border:1px solid #fecaca}.feedback-box.blue{background:#eff6ff;border:1px solid #bfdbfe}.feedback-box.amber{background:#fffbeb;border:1px solid #fde68a}.improvement-list{flex-direction:column;gap:.75rem;list-style:none;display:flex}.improvement-item{gap:.75rem;display:flex}.improvement-num{color:#3b82f6;flex-shrink:0;font-weight:700}.modal-footer{background:#f9fafb;border-top:1px solid #f9fafb;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.btn-export{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem 1.25rem;font-size:.875rem;font-weight:500;transition:all .15s;display:flex;box-shadow:0 1px 2px #0000000d}.btn-export:hover{background:#f9fafb}.btn-export:active{transform:scale(.95)}.btn-got-it{color:#fff;cursor:pointer;background:#111827;border:none;border-radius:.5rem;padding:.5rem 1.5rem;font-size:.875rem;font-weight:500;transition:all .15s;box-shadow:0 1px 2px #0000001a}.btn-got-it:hover{background:#1f2937}.btn-got-it:active{transform:scale(.95)}
