.live-events{max-width:900px;margin:0 auto;padding:1.25rem;font-family:Segoe UI,sans-serif;width:100%;box-sizing:border-box}.live-title{font-size:2rem;font-weight:700;color:#2c3e50;text-align:center;margin-bottom:2rem;padding-bottom:.5rem;border-bottom:.25rem solid #3498db;letter-spacing:.05rem;line-height:1.4}.no-events-message{text-align:center;margin-top:40px;font-size:18px;color:#7f8c8d;font-style:italic}.eventCard{background:#fff;border-radius:1rem;box-shadow:0 .25rem .75rem #0000001a;margin-bottom:2rem;padding:1.5rem;transition:transform .2s;width:100%;box-sizing:border-box}.tournamentHeader{text-align:center;margin-bottom:16px}.tournamentName{font-size:22px;font-weight:700;color:#1e1e1e}.roundName{font-size:18px;font-weight:600;color:#666;margin-top:4px}.status{font-size:16px;font-weight:500;color:#777;margin-top:4px}.eventHeader{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.teamBlock{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0}.playerImg img{width:5rem;height:5rem;object-fit:cover;border-radius:50%;border:.05rem solid #ddd}.teamName{font-size:.9rem;font-weight:500;color:#333;text-align:center;margin-top:.5rem;word-break:break-word;line-height:1.2}.setScore{flex:0 0 auto;font-size:1.5rem;font-weight:700;color:#0a66c2;text-align:center;min-width:3rem;padding:0 .5rem}.pointScore{text-align:center;font-size:20px;font-weight:700;margin:12px 0;color:#111}.eventTable{margin-top:16px;overflow-x:auto}.eventTable table{width:100%;border-collapse:collapse;font-size:14px}.eventTable th,.eventTable td{border:1px solid #ddd;padding:10px;text-align:center;vertical-align:middle}.eventTable th{background-color:#f3f3f3;font-weight:700}.eventButton{display:block;margin:16px auto 0;padding:10px 24px;background-color:#0a66c2;color:#fff;border:none;border-radius:24px;font-size:16px;cursor:pointer;transition:background-color .2s}.eventButton:hover{background-color:#084d99}@media (max-width: 768px){.live-events{padding:1rem}.live-title{font-size:1.75rem}.playerImg img{width:4rem;height:4rem}.teamName{font-size:.8rem}.setScore{font-size:1.1rem;min-width:2.5rem}}@media (max-width: 480px){.live-events{padding:.75rem}.live-title{font-size:1.5rem;margin-bottom:1rem}.eventCard{margin-bottom:1rem;padding:1rem;border-radius:.75rem}.tournamentName{font-size:1.1rem}.roundName{font-size:.9rem}.status{font-size:.8rem}.eventHeader{gap:.25rem}.playerImg img{width:3.5rem;height:3.5rem}.teamName{font-size:.75rem;margin-top:.25rem}.setScore{font-size:1rem;min-width:2rem;padding:0 .25rem}.pointScore{font-size:.9rem;margin:.75rem 0}.eventTable{margin-top:1rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.eventTable table{font-size:.75rem;min-width:100%}.eventTable th,.eventTable td{padding:.5rem .25rem;font-size:.7rem}.eventButton{margin-top:1rem;padding:.75rem 1.5rem;font-size:.9rem;border-radius:1.5rem}}.msw-toggle-btn{position:fixed;top:1.25rem;right:1.25rem;z-index:9999;padding:.5rem .75rem;color:#fff;border:none;border-radius:.25rem;cursor:pointer;font-size:.75rem;font-weight:700;box-shadow:0 .125rem .25rem #0003;transition:all .2s ease}.msw-toggle-btn.active{background-color:#4caf50}.msw-toggle-btn.inactive{background-color:#f44336}.msw-toggle-btn:hover{transform:translateY(-.0625rem);box-shadow:0 .25rem .5rem #0000004d}.msw-toggle-btn:active{transform:translateY(0);box-shadow:0 .125rem .25rem #0003}@media (max-width: 480px){.msw-toggle-btn{top:1rem;right:1rem;padding:.4rem .6rem;font-size:.7rem}}.ranking-table-container{padding:10px;overflow-x:auto;width:100%;background-color:#fafafa;border-radius:12px;box-shadow:0 2px 8px #00000014}.ranking-table{width:100%;border-collapse:collapse;min-width:190px;text-align:center;align-items:center}.ranking-table th,.ranking-table td{border:1px solid #ddd;padding:12px 16px;font-size:14px}.ranking-table th{background-color:#f0f0f0;font-weight:600;font-size:15px;color:#333}.ranking-table tr:nth-child(2n){background-color:#f9f9f9}.ranking-table tr:hover{background-color:#eef6ff}.ranking-table td{color:#555}.ranking-table td:nth-child(1){font-weight:700}.player-name{font-size:15px;font-weight:600;color:#222}@media (max-width: 768px){.ranking-table th,.ranking-table td{padding:8px 12px;font-size:12px}.ranking-table th{font-size:10px;font-weight:800}.ranking-table td:nth-child(1){font-size:10px}.player-name{font-size:12px}}.ranking-title{font-size:32px;font-weight:700;color:#2c3e50;text-align:center;margin-bottom:30px;padding-bottom:10px;border-bottom:3px solid #3498db;letter-spacing:1px;line-height:1.4}.load-more-button{margin:20px auto;display:block;padding:12px 24px;font-size:16px;font-weight:700;color:#fff;background-color:#3498db;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s ease,transform .2s ease}.load-more-button:hover{background-color:#2980b9;transform:translateY(-2px)}.load-more-button:active{background-color:#2980b9;transform:translateY(0)}.header{position:fixed;top:0;left:0;width:100%;z-index:100;transition:transform .3s ease}@media (max-width: 768px){.header.show{transform:translateY(0)}.header.hide{transform:translateY(-100%)}}@font-face{font-family:Pretendard;src:url(/font/PretendardVariable.woff2) format("woff2");font-weight:100 900;font-display:swap}body{font-family:Pretendard,"sans-serif"}.layout{display:flex;flex-direction:column;min-height:100vh;background:#f5f7fa}.header{background-color:#152238;color:#fff;padding:16px 0;position:fixed;top:0;left:0;width:100%;z-index:100;transition:transform .3s ease}.header-inner{max-width:1440px;margin:0 auto;padding:0 20px;display:flex;align-items:center}.logo{font-size:24px;font-weight:700;cursor:pointer;margin-right:2rem}.logo_img{width:150px}.hamburger{font-size:24px;cursor:pointer;display:none}.main{position:relative;max-width:1440px;margin:60px auto 0;display:flex;flex:1;flex-direction:row;gap:24px;padding:40px 20px;align-items:stretch}.sidebar{flex:1;flex-shrink:0;background-color:#1e2e48;color:#fff;padding:24px;border-radius:12px}.sidebar h3{margin-top:0;font-size:18px;margin-bottom:8px}.sidebar ul{list-style:none;padding-left:0;margin-bottom:20px}.sidebar li{margin-bottom:6px;cursor:pointer;transition:color .2s}.sidebar li:hover{color:#cf0}.contents{flex:1;background-color:#fff;padding:32px;border-radius:12px;box-shadow:0 4px 12px #0000000f;min-width:300px;overflow-x:auto}.ad{width:280px;flex-shrink:0;background-color:#fffde7;padding:24px;border-radius:12px;box-shadow:inset 0 0 10px #ffd70033;text-align:center}.footer{background-color:#1e2e48;color:#c0c6d2;text-align:center;padding:20px;font-size:14px}.arrow{font-size:12px;margin-left:8px}.overlay{position:fixed;top:0;left:0;width:100%;height:100vh;background:#00000080;z-index:50;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.overlay.show{opacity:1;visibility:visible}@media (min-width: 1025px){.overlay{display:none}}@media (max-width: 1024px){.header-inner{justify-content:center;position:relative}.logo{text-align:center}.ad{display:none}}@media (max-width: 768px){.main{flex-direction:column;padding:16px;gap:0;align-items:stretch;margin-top:60px;justify-content:center}.contents{width:100%;flex:none;min-width:0;border-radius:8px;padding:16px}.ad{display:none}.header{padding:12px 0}.header-inner{padding:0 60px}.header.show{transform:translateY(0)}.header.hide{transform:translateY(-100%)}.logo{text-align:center;margin:0 auto;display:block;font-size:20px}.footer{padding:16px;font-size:13px}}.desktop-nav{display:flex;gap:32px;align-items:center}.nav-item{position:relative;cursor:pointer}.nav-item-title{color:#fff;font-size:16px;font-weight:500;padding:8px 0;transition:color .2s ease}.nav-item-title:hover{color:#cf0}.dropdown{position:absolute;top:150%;left:0;background:#fff;box-shadow:0 4px 12px #00000026;min-width:120px;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .2s ease;z-index:1000}.dropdown.show{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-item{padding:12px 16px;color:#333;font-size:14px;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid #f0f0f0}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background-color:#f8f9fa;color:#152238}.hamburger{display:none;position:absolute;left:20px;top:50%;transform:translateY(-50%);font-size:24px;background:none;border:none;color:#fff;cursor:pointer;z-index:103}.sidebar{position:fixed;top:0;left:-280px;width:280px;height:100vh;background-color:#1e2e48;color:#fff;padding:80px 24px 24px;z-index:102;transition:left .3s ease;overflow-y:auto}.sidebar.show{left:0}.nav-section{margin-bottom:20px}.nav-title{display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:16px;font-weight:600;padding:12px 0;margin:0;border-bottom:1px solid rgba(255,255,255,.1);-webkit-user-select:none;user-select:none;transition:color .2s ease}.nav-title:hover{color:#cf0}.arrow{font-size:12px;transition:transform .2s ease}.nav-sublist{list-style:none;padding:0;margin:0;max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease,opacity .3s ease,padding .3s ease}.nav-sublist.open{max-height:200px;opacity:1;padding-top:8px}.nav-sublist li{padding:8px 16px;font-size:14px;cursor:pointer;transition:all .2s ease;border-radius:4px;margin-bottom:4px}.nav-sublist li:hover{color:#cf0;background:#ffd7001a}@media (max-width: 1024px){.desktop-nav{display:none}.hamburger{display:block}}@media (max-width: 768px){.sidebar{width:260px;left:-280px}.nav-title{font-size:15px}.nav-sublist li{font-size:13px;padding:6px 12px}}.loading-mask{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999}.loading-spinner{padding:2rem;border-radius:8px;text-align:center}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-spinner p{margin:0;color:#333;font-size:14px}.tennis-ball-animation{font-size:60px;animation:bounce .6s infinite alternate;margin-bottom:1rem}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-20px)}}.chat-container{width:100%;max-width:600px;margin:auto;border:1px solid #ccc;border-radius:12px;display:flex;flex-direction:column;height:600px;font-family:sans-serif}.chat-header{background-color:#4caf50;color:#fff;padding:10px;text-align:center;font-weight:700;border-top-left-radius:12px;border-top-right-radius:12px}.chat-box{flex:1;padding:10px;overflow-y:auto;background-color:#f9f9f9}.chat-message{display:flex;flex-direction:column;padding:8px 12px;margin:6px 12px;border-radius:16px;font-size:14px;line-height:1.4;word-wrap:break-word;box-shadow:0 1px 3px #0000001a}.chat-input-area{display:flex;border-top:1px solid #ddd}.chat-input{flex:1;padding:10px;border:none;outline:none;font-size:14px}.chat-button{padding:10px 15px;background-color:#4caf50;color:#fff;border:none;cursor:pointer;font-weight:700}.chat-meta{font-size:12px;color:#555;margin-bottom:4px;font-weight:500}.sender{font-weight:700;color:#333;font-size:13px}.chat-bubble-container{display:flex;flex-direction:column;margin:8px 0;align-items:flex-start}.chat-bubble-container.mine{align-items:flex-end}.bubble-row{display:flex;align-items:flex-end;gap:6px}.bubble-row.mine{flex-direction:row-reverse}.chat-bubble{max-width:60%;padding:10px 14px;border-radius:16px;background-color:#f1f1f1;word-break:break-word}.chat-bubble.mine{background-color:#d1edff}.chat-time{font-size:11px;color:#888;white-space:nowrap;margin-bottom:2px}.chat-length-indicator{font-size:12px;color:#888;text-align:right;margin-right:6px}.test-detail{max-width:600px;margin:0 auto;padding:2rem;text-align:center}.test-title{font-size:2rem;margin-bottom:1.5rem}.test-image{width:100%;max-width:400px;border-radius:12px;margin-bottom:1rem}.test-description{font-size:1.1rem;color:#555;margin-bottom:2rem}.start-button{padding:.8rem 2rem;font-size:1rem;background-color:#3498db;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:700}.start-button:hover{background-color:#2980b9}.question-form-container{max-width:640px;margin:1rem auto;padding:1rem;font-family:Noto Sans KR,sans-serif}.question-card{background-color:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:2rem;box-shadow:0 4px 12px #0000000d;transition:all .3s ease}.question-title{font-size:1.2rem;font-weight:600;color:#2d3748;margin-bottom:1.5rem;text-align:center}.options-group{display:flex;flex-direction:column;gap:1rem}.option-button{padding:1rem;border:2px solid #3182ce;border-radius:8px;background-color:#fff;color:#3182ce;font-weight:600;font-size:1rem;transition:background-color .2s,color .2s;cursor:pointer}.option-button:hover{background-color:#2980b9;color:#2b6cb0}.option-button.selected{background-color:#3182ce;color:#fff;box-shadow:0 0 0 2px #63b3ed inset}.progress-indicator{text-align:right;font-size:.9rem;color:#666;margin-bottom:.5rem;margin-top:1rem}@media (max-width: 1023px) and (min-width: 768px){.question-form-container{margin:1rem auto}.question-card{padding:1.5rem}}@media (max-width: 767px){.question-form-container{margin:.5rem auto;padding:.5rem}.question-card{padding:1rem}.question-title{font-size:1.1rem;margin-bottom:1rem}.option-button{padding:.8rem;font-size:.9rem}}.test-header-title{font-size:32px;font-weight:700;color:#2c3e50;text-align:center;margin-bottom:30px;padding-bottom:10px;border-bottom:3px solid #3498db;letter-spacing:1px;line-height:1.4}.test-grid-container{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding:2rem 1rem;max-width:1200px;margin:0 auto}.racket-test-container{margin:0;padding:0}.racket-test-card{position:relative;background-size:cover;background-position:center;background-repeat:no-repeat;border-radius:20px;padding:2rem;color:#fff;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease;box-shadow:0 10px 30px #0003;overflow:hidden}.racket-test-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #667eea66}.racket-test-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#0006;z-index:0}.racket-test-badge{position:absolute;top:1rem;right:1rem;background:#ff6b6b;color:#fff;padding:.3rem .8rem;border-radius:20px;font-size:.8rem;font-weight:600;z-index:2}.racket-test-content{position:relative;z-index:2}.racket-test-title{font-size:1.8rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.1)}.racket-test-description{font-size:1.1rem;margin-bottom:1.5rem;opacity:.9;line-height:1.5}.racket-test-features{display:flex;gap:.5rem;flex-wrap:wrap}.racket-test-features .feature-tag{background:#fff3;color:#fff;padding:.3rem .8rem;border-radius:20px;font-size:.9rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media (max-width: 1023px) and (min-width: 768px){.test-grid-container{grid-template-columns:repeat(2,1fr);gap:1.5rem;padding:1.5rem 1rem}.racket-test-card{padding:2.5rem}.racket-test-title{font-size:2rem}.racket-test-description{font-size:1.2rem}}@media (max-width: 767px){.test-grid-container{grid-template-columns:1fr;gap:1rem;padding:1rem .5rem}.racket-test-card{padding:1.5rem}.racket-test-title{font-size:1.5rem}.racket-test-description{font-size:1rem}}.test-result-container{max-width:700px;margin:50px auto;padding:30px;text-align:center;border-radius:16px;box-shadow:0 4px 20px #0000001a;background-color:#fff}.result-title{font-size:24px;font-weight:700;margin-bottom:30px;color:#333}.player-image{width:180px;height:180px;object-fit:cover;border-radius:50%;margin-bottom:20px;border:4px solid #ddd}.player-kor-name{font-size:22px;font-weight:700;color:#2c3e50;margin-bottom:8px}.player-eng-name{font-size:16px;color:#7f8c8d;margin-bottom:12px}.player-description{font-size:16px;color:#444;line-height:1.5;padding:0 10px}.test-result-container{max-width:800px;margin:40px auto;padding:20px;background-color:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;text-align:center;font-family:Noto Sans KR,sans-serif}.result-title{font-size:1.8rem;font-weight:700;margin-bottom:30px;color:#333}.player-card{display:flex;flex-direction:column;align-items:center}.player-image{width:200px;height:200px;object-fit:cover;border-radius:50%;margin-bottom:20px;border:4px solid #eeeeee}.player-info{text-align:center}.player-kor-name{font-size:1.5rem;font-weight:700;margin:8px 0;color:#2c3e50}.player-eng-name{font-size:1rem;font-style:italic;color:#777;margin-bottom:10px}.player-description{font-size:1rem;line-height:1.6;color:#444;padding:0 10px}.string-result-container{max-width:700px;margin:50px auto;padding:30px;text-align:center;border-radius:16px;box-shadow:0 4px 20px #0000001a;background-color:#fff}.string-card{display:flex;flex-direction:column;align-items:center}.string-image{width:200px;height:200px;object-fit:cover;border-radius:12px;margin-bottom:20px;box-shadow:0 4px 12px #00000026}.string-info{text-align:center}.string-name{font-size:22px;font-weight:700;color:#34495e;margin-bottom:8px}.string-type{font-size:16px;color:#7f8c8d;margin-bottom:10px}.string-description{font-size:16px;color:#555;line-height:1.5}.racket-result-container{max-width:700px;margin:50px auto;padding:30px;text-align:center;border-radius:16px;box-shadow:0 4px 20px #0000001a;background-color:#fff}.result-title{font-size:24px;font-weight:700;margin-bottom:30px;color:#2c3e50}.racket-card{display:flex;flex-direction:column;align-items:center}.racket-image{width:220px;height:auto;border-radius:12px;margin-bottom:20px;box-shadow:0 4px 12px #00000026}.racket-info{text-align:center}.racket-name{font-size:22px;font-weight:700;color:#34495e;margin-bottom:8px}.racket-brand{font-size:16px;color:#7f8c8d;margin-bottom:10px}.racket-description{font-size:16px;color:#555;line-height:1.5}.share-button-title{font-size:20px;font-weight:600;text-align:center;margin-bottom:10px}.share-button-group{display:flex;gap:12px;justify-content:center;margin-top:20px}.url-copy-button{width:48px;height:48px;border:0px;border-radius:24px;color:#fff;background-color:brown;cursor:pointer;font-size:16px;font-weight:800}.result-button-group{display:flex;flex-direction:column;align-items:center;margin-top:32px;gap:16px}.button-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.button-row.single{margin-top:8px}.result-button{background-color:#3498db;color:#fff;border:none;padding:10px 16px;border-radius:8px;font-size:14px;cursor:pointer;transition:background-color .3s ease}.result-button:hover{background-color:#2980b9}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-family:Pretendard;vertical-align:baseline;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}
