@import"https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;600;700&display=swap";:root{font-family:Noto Sans KR,-apple-system,BlinkMacSystemFont,system-ui,Roboto,Helvetica Neue,Segoe UI,Apple SD Gothic Neo,sans-serif;line-height:1.6;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;padding:0;min-width:320px;min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600}p{margin:0}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:2px solid #646cff;outline-offset:2px}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--scrollbar-track, #f1f1f1)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb, #888);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover, #555)}@media(prefers-color-scheme:dark){::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb{background:#444}::-webkit-scrollbar-thumb:hover{background:#666}}.music-request-form-container{max-width:800px;margin:0 auto;padding:2rem 1rem}.music-request-form{background:var(--form-bg, #ffffff);border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}@media(prefers-color-scheme:dark){.music-request-form{--form-bg: #1a1a1a;background:var(--form-bg);box-shadow:0 2px 8px #0000004d}}.submit-message{padding:1rem 1.5rem;border-radius:8px;margin-bottom:2rem;font-weight:500;animation:slideDown .3s ease-out}.submit-message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.submit-message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}@media(prefers-color-scheme:dark){.submit-message.success{background-color:#1e4620;color:#a3d9a5;border-color:#2d5a2e}.submit-message.error{background-color:#4a1e1e;color:#f5a3a3;border-color:#6e2b2b}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-section{margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid var(--border-color, #e0e0e0)}.form-section:last-of-type{border-bottom:none}.form-section h2{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;color:var(--heading-color, #333)}.section-description{color:var(--text-secondary, #666);font-size:.95rem;margin-bottom:1rem}@media(prefers-color-scheme:dark){.form-section{border-bottom-color:#333}.form-section h2{color:#f0f0f0}.section-description{color:#aaa}}.form-field{margin-bottom:1.5rem}.form-field label{display:block;font-weight:500;margin-bottom:.5rem;color:var(--label-color, #444)}.form-field .required{color:#dc3545}@media(prefers-color-scheme:dark){.form-field label{color:#e0e0e0}}.form-field input[type=text],.form-field input[type=email],.form-field input[type=tel],.form-field input[type=url],.form-field textarea,.form-field select{width:100%;padding:.75rem 1rem;font-size:1rem;border:2px solid var(--input-border, #ddd);border-radius:8px;background-color:var(--input-bg, #fff);color:var(--input-text, #333);transition:border-color .2s,box-shadow .2s;font-family:inherit}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--placeholder-color, #999)}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e21a}.form-field input.error,.form-field textarea.error,.form-field select.error{border-color:#dc3545}.form-field input.error:focus,.form-field textarea.error:focus,.form-field select.error:focus{box-shadow:0 0 0 3px #dc35451a}.error-message{display:block;color:#dc3545;font-size:.875rem;margin-top:.5rem;font-weight:500}@media(prefers-color-scheme:dark){.form-field input,.form-field textarea,.form-field select{background-color:#2a2a2a;border-color:#444;color:#f0f0f0}.form-field input::placeholder,.form-field textarea::placeholder{color:#777}}.form-field textarea{resize:vertical;min-height:100px;line-height:1.5}.char-count{text-align:right;font-size:.875rem;color:var(--text-secondary, #666);margin-top:.25rem}@media(prefers-color-scheme:dark){.char-count{color:#aaa}}.form-field select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:12px;padding-right:2.5rem}@media(prefers-color-scheme:dark){.form-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23f0f0f0' d='M6 9L1 4h10z'/%3E%3C/svg%3E")}}.song-examples{display:flex;flex-direction:column;gap:1rem}.song-example-field{display:flex;gap:.5rem;align-items:center}.song-example-field input{flex:1;padding:.75rem 1rem;font-size:1rem;border:2px solid var(--input-border, #ddd);border-radius:8px;background-color:var(--input-bg, #fff);color:var(--input-text, #333);transition:border-color .2s,box-shadow .2s}.song-example-field input:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e21a}.song-example-field input.error{border-color:#dc3545}@media(prefers-color-scheme:dark){.song-example-field input{background-color:#2a2a2a;border-color:#444;color:#f0f0f0}}.btn-remove{padding:.75rem 1rem;background-color:#dc3545;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1.2rem;font-weight:700;transition:background-color .2s;min-width:44px;height:44px}.btn-remove:hover{background-color:#c82333}.btn-remove:focus{outline:2px solid #dc3545;outline-offset:2px}.btn-add{padding:.75rem 1.5rem;background-color:var(--btn-secondary-bg, #6c757d);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:background-color .2s;margin-top:.5rem}.btn-add:hover{background-color:#5a6268}.btn-add:focus{outline:2px solid #6c757d;outline-offset:2px}@media(prefers-color-scheme:dark){.btn-add{background-color:#4a5259}.btn-add:hover{background-color:#5a6268}}.form-actions{margin-top:2rem;text-align:center}.btn-submit{padding:1rem 3rem;background-color:#4a90e2;color:#fff;border:none;border-radius:8px;font-size:1.125rem;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s;min-width:200px}.btn-submit:hover:not(:disabled){background-color:#357abd;transform:translateY(-2px)}.btn-submit:active:not(:disabled){transform:translateY(0)}.btn-submit:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.btn-submit:focus{outline:2px solid #4a90e2;outline-offset:2px}@media(prefers-color-scheme:dark){.btn-submit:disabled{background-color:#555}}@media(max-width:768px){.music-request-form-container{padding:1rem .5rem}.music-request-form{padding:1.5rem 1rem}.form-section h2{font-size:1.25rem}.song-example-field{flex-direction:column;align-items:stretch}.btn-remove{width:100%}.btn-submit{width:100%;min-width:auto}}@media(max-width:480px){.music-request-form{padding:1rem .75rem}.form-section h2{font-size:1.125rem}.form-field input,.form-field textarea,.form-field select{font-size:16px}}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{text-align:center;padding:3rem 1rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.app-header h1{font-size:2.5rem;font-weight:700;margin:0 0 .5rem;text-shadow:0 2px 4px rgba(0,0,0,.1)}.app-subtitle{font-size:1.125rem;opacity:.95;margin:0;font-weight:400}.app-main{flex:1;background-color:var(--bg-color, #f5f5f5);padding:2rem 0}.app-footer{text-align:center;padding:1.5rem;background-color:var(--footer-bg, #333);color:var(--footer-text, #fff);font-size:.9rem}.app-footer p{margin:0}@media(prefers-color-scheme:dark){.app-main{background-color:#0a0a0a}.app-footer{background-color:#1a1a1a;color:#ccc}}@media(max-width:768px){.app-header h1{font-size:2rem}.app-subtitle{font-size:1rem}.app-header{padding:2rem 1rem 1.5rem}.app-main{padding:1rem 0}}@media(max-width:480px){.app-header h1{font-size:1.5rem}.app-subtitle{font-size:.9rem}}
