@charset "UTF-8";body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd{margin:0}ul,ol{list-style:none;padding:0;margin:0}html{scroll-behavior:smooth;min-height:100vh;background-color:#1e2a4a}body{min-height:100vh;text-rendering:optimizeSpeed;line-height:1.5;font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:#212529;background-color:#1e2a4a;margin:0;padding:0}#root{min-height:100vh;background-color:#1e2a4a}a:not([class]){text-decoration-skip-ink:auto}img,picture{max-width:100%;display:block}input,button,textarea,select{font:inherit}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}button{background:none;border:none;cursor:pointer;padding:0}input,textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-radius:0;padding:0;outline:none}a{text-decoration:none;color:inherit}table{border-collapse:collapse;border-spacing:0}fieldset{border:0;padding:0;margin:0;min-width:0}legend{padding:0}.login-form-container{width:100%;max-width:640px;margin:0 auto}.login-form{width:100%;position:relative}.login-form .form-error{color:#ff3b6a;font-size:.875rem;margin-bottom:1rem;text-align:center;padding:.25rem;background:#ff3b6a14;border-radius:4px}.login-form .form-group{margin-bottom:1.5rem}.login-form .form-group label{display:block;color:#fff;font-size:1rem;font-weight:600;margin-bottom:.25rem}.login-form .form-group input{width:100%;background:#fff;border:none;border-radius:4px;padding:1rem;font-size:1rem;line-height:1.6}.login-form .form-actions{display:flex;justify-content:center;margin-top:2rem}.login-form .form-actions .login-button{width:280px;padding:1rem 0;background:transparent;border:2px solid #FFFFFF;border-radius:48px;color:#fff;font-weight:700;text-align:center;transition:background .25s ease,color .25s ease;cursor:pointer}.login-form .form-actions .login-button:hover{background:#fff;color:#212529}.login-form .form-actions .login-button:disabled{opacity:.7;cursor:not-allowed}.login-form .forgot-password-link{text-align:center;margin-top:1rem}.login-form .forgot-password-link .forgot-password-text{color:#fffc;font-size:.875rem;text-decoration:underline;transition:color .25s ease}.login-form .forgot-password-link .forgot-password-text:hover{color:#fff}@media (max-width: 768px){.login-form-container{max-width:100%}.form-actions .login-button{width:100%;max-width:280px}}.register-form-container{width:100%;max-width:640px;margin:0 auto}.register-form{width:100%;position:relative}.register-form .form-error{color:#ff3b6a;font-size:.875rem;margin-bottom:1rem;text-align:center;padding:.25rem;background:#ff3b6a14;border-radius:4px}.register-form .form-group{margin-bottom:1.5rem}.register-form .form-group label{display:block;color:#fff;font-size:1rem;font-weight:600;margin-bottom:.25rem}.register-form .form-group input[type=text],.register-form .form-group input[type=email],.register-form .form-group input[type=password],.register-form .form-group input[type=date],.register-form .form-group select{width:100%;background:#fff;border:none;border-radius:4px;padding:1rem;font-size:1rem;line-height:1.6}.register-form .form-group .gender-group-label,.register-form .form-group .platform-group-label{display:block;color:#fff;font-size:1rem;font-weight:600;margin-bottom:.25rem}.register-form .form-group .radio-group{display:flex;gap:1rem;margin-top:.25rem}.register-form .form-group .radio-group .radio-label{display:flex;align-items:center;color:#fff;cursor:pointer;position:relative;padding-left:28px}.register-form .form-group .radio-group .radio-label input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;position:absolute;width:18px;height:18px;left:0;top:50%;transform:translateY(-50%);margin:0;border:2px solid #FFFFFF;border-radius:50%;background-color:transparent;outline:none}.register-form .form-group .radio-group .radio-label input[type=radio]:checked:after{content:"";position:absolute;left:3px;top:3px;width:8px;height:8px;border-radius:50%;background:#fff}.register-form .form-group .radio-group .radio-label span{margin-left:8px}.register-form .form-group .checkbox-group{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-top:.25rem}.register-form .form-group .checkbox-group .checkbox-label{display:flex;align-items:center;color:#fff;cursor:pointer;min-width:100px;position:relative;padding-left:28px}.register-form .form-group .checkbox-group .checkbox-label input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;position:absolute;width:18px;height:18px;left:0;top:50%;transform:translateY(-50%);margin:0;border:2px solid #FFFFFF;background-color:transparent;outline:none}.register-form .form-group .checkbox-group .checkbox-label input[type=checkbox]:checked:after{content:"✓";position:absolute;left:2px;top:-3px;color:#fff;font-size:14px;line-height:1}.register-form .form-group .checkbox-group .checkbox-label span{margin-left:8px}.register-form .form-group .other-platform-input{margin-top:1rem}.register-form .form-group .other-platform-input label{display:block;color:#fff;font-size:.875rem;margin-bottom:.25rem}.register-form .form-group .other-platform-input input{width:100%;background:#fff;border:none;border-radius:4px;padding:1rem;font-size:1rem;line-height:1.6}.register-form .form-actions{display:flex;justify-content:center;margin-top:2rem}.register-form .form-actions .register-button{width:280px;padding:1rem 0;background:transparent;border:2px solid #FFFFFF;border-radius:48px;color:#fff;font-weight:700;text-align:center;transition:background .25s ease,color .25s ease;cursor:pointer}.register-form .form-actions .register-button:hover{background:#fff;color:#212529}.register-form .form-actions .register-button:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 768px){.register-form-container{max-width:100%}.radio-group,.checkbox-group{flex-wrap:wrap}.form-actions .register-button{width:100%;max-width:280px}}@media (max-width: 576px){.register-form .form-group .radio-group,.register-form .form-group .checkbox-group{flex-direction:column;gap:.25rem}.register-form .form-group .radio-group .radio-label,.register-form .form-group .radio-group .checkbox-label,.register-form .form-group .checkbox-group .radio-label,.register-form .form-group .checkbox-group .checkbox-label{margin-bottom:.25rem}}.register-page{min-height:100vh;background-color:#212529;position:relative;display:flex;flex-direction:column;justify-content:center}.register-page>*{position:relative;z-index:1}.register-page .admin-link-container{position:absolute;top:24px;right:32px}.register-page .admin-link-container .admin-link{display:inline-block;font-size:.875rem;color:#fff;padding:.25rem .5rem;border:1px solid rgba(255,255,255,.35);border-radius:2px;background:#ffffff0f;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:opacity .2s ease}.register-page .admin-link-container .admin-link:hover{opacity:.8}.register-page .register-logo-container{position:absolute;top:40px;left:60px}.register-page .register-logo-container .register-logo-image{height:50px;width:auto}.register-page-content{width:100%;max-width:860px;margin:0 auto;padding:100px 40px;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.register-title{text-align:center;color:#fff;font-size:2rem;letter-spacing:.08em;font-weight:700;margin:0 0 1rem}.register-page-links{margin:1rem 0;text-align:center}.register-page-links .login-link{color:#fff;text-decoration:none;font-size:1rem;transition:opacity .2s ease;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:2px}.register-page-links .login-link:hover{opacity:.8}.register-form-wrapper{width:100%;position:relative;padding:1.5rem 0}.register-form-wrapper:before,.register-form-wrapper:after{content:"";position:absolute;left:0;right:0;height:1px;background:#fff9}.register-form-wrapper:before{top:0}.register-form-wrapper:after{bottom:0}.register-footer{width:100%;padding:2rem 5% 1.5rem;font-size:.75rem;color:#fff;display:flex;justify-content:space-between;align-items:flex-start}@media (max-width: 992px){.register-page-content{max-width:640px}.register-logo-container{left:24px;top:28px}}@media (max-width: 768px){.register-page-content{padding-top:0}}@media (max-width: 576px){.register-page-content{max-width:90%}.register-footer{flex-direction:column;gap:.5rem}}.register-complete-page{min-height:100vh;background-color:#212529;position:relative;display:flex;flex-direction:column;justify-content:center}.register-complete-page:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#0000008c,#000000d9);z-index:0}.register-complete-page>*{position:relative;z-index:1}.register-complete-page .register-logo-container{position:absolute;top:40px;left:60px}.register-complete-page .register-logo-container .register-logo-image{height:56px;width:auto}.register-complete-content{width:100%;max-width:700px;margin:0 auto;padding:0 40px;display:flex;flex-direction:column;align-items:center;gap:1.5rem;text-align:center}.register-complete-title{color:#fff;font-size:2rem;letter-spacing:.08em;font-weight:700;margin:0 0 1rem}.register-complete-message{color:#fff;margin:1rem 0;font-size:1.125rem;line-height:1.8}.register-complete-message p{margin-bottom:1rem}.register-complete-message p:last-child{margin-bottom:0}.register-complete-actions{margin:2rem 0}.register-complete-actions .login-button{display:inline-block;width:280px;padding:1rem 0;background:transparent;border:2px solid #FFFFFF;border-radius:48px;color:#fff;font-weight:700;text-align:center;text-decoration:none;transition:background .25s ease,color .25s ease}.register-complete-actions .login-button:hover{background:#fff;color:#212529}.register-footer{position:absolute;bottom:0;width:100%;padding:2rem 5% 1.5rem;font-size:.75rem;color:#fff;display:flex;justify-content:space-between;align-items:flex-start}.register-footer:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:#fff9}.register-footer .footer-company{display:flex;align-items:center;gap:.5rem}.register-footer .footer-company .footer-logo{height:32px;width:auto}.register-footer .footer-company .company-info{line-height:1.4}.register-footer .copyright{opacity:.8;white-space:nowrap}@media (max-width: 992px){.register-complete-content{max-width:640px}.register-logo-container{left:24px;top:28px}}@media (max-width: 768px){.register-complete-content{padding-top:0}.register-complete-message{font-size:1rem}}@media (max-width: 576px){.register-complete-content{max-width:90%}.register-footer{flex-direction:column;gap:.5rem}.register-complete-actions .login-button{width:100%;max-width:280px}}.login-page,.privacy-policy-page{min-height:100vh;background-color:#212529;position:relative;display:flex;flex-direction:column;justify-content:center}.login-page>*,.privacy-policy-page>*{position:relative;z-index:1}.login-page .admin-link-container,.privacy-policy-page .admin-link-container{position:absolute;top:24px;right:32px}.login-page .admin-link-container .admin-link,.privacy-policy-page .admin-link-container .admin-link{display:inline-block;font-size:.875rem;color:#fff;padding:.25rem .5rem;border:1px solid rgba(255,255,255,.35);border-radius:2px;background:#ffffff0f;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:opacity .2s ease}.login-page .admin-link-container .admin-link:hover,.privacy-policy-page .admin-link-container .admin-link:hover{opacity:.8}.login-page .login-logo-container,.privacy-policy-page .login-logo-container{position:absolute;top:40px;left:60px}.login-page .login-logo-container .login-logo-image,.privacy-policy-page .login-logo-container .login-logo-image{height:56px;width:auto}.login-page-content{width:100%;max-width:860px;margin:0 auto;padding:0 40px;display:flex;flex-direction:column;align-items:center;gap:1.5rem;position:relative;z-index:2}.login-page-content--privacy{max-width:1200px}.login-title{text-align:center;color:#fff;font-size:2rem;letter-spacing:.08em;font-weight:700;margin:0 0 1rem}@media (max-width: 768px){.login-title{font-size:1.5rem}}.login-page-links{margin:1rem 0;text-align:center}.login-page-links .register-link{color:#fff;text-decoration:none;font-size:1rem;transition:opacity .2s ease;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:2px}.login-page-links .register-link:hover{opacity:.8}.login-form-wrapper{width:100%;position:relative;padding:1.5rem 0}.login-form-wrapper:before,.login-form-wrapper:after{content:"";position:absolute;left:0;right:0;height:1px;background:#fff9}.login-form-wrapper:before{top:0}.login-form-wrapper:after{bottom:0}.login-divider{display:flex;align-items:center;width:100%;max-width:280px;margin:.5rem 0}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:#fff6}.login-divider span{padding:0 1rem;color:#ffffffb3;font-size:.875rem;white-space:nowrap}.login-footer{position:absolute;bottom:0;width:100%;padding:2rem 5% 1.5rem;font-size:.75rem;color:#fff;display:flex;justify-content:space-between;align-items:flex-start;z-index:2;background-color:#000}.login-footer:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:#fff9}.login-footer .footer-company{display:flex;align-items:center;gap:.5rem}.login-footer .footer-company .footer-logo{height:32px;width:auto}.login-footer .footer-company .company-info{line-height:1.4}.login-footer .footer-links{display:flex;gap:.25rem;align-items:center}.login-footer .footer-links .footer-link{color:#fff;text-decoration:none;font-size:.75rem;transition:opacity .2s ease}.login-footer .footer-links .footer-link:hover{opacity:.8;text-decoration:underline}.login-footer .footer-links .footer-link-separator{color:#fff;opacity:.6}.login-footer .copyright{opacity:.8;white-space:nowrap}@media (max-width: 992px){.login-page-content{max-width:640px}.login-logo-container{left:24px;top:28px}}@media (max-width: 768px){.login-page-content{padding-top:0}}@media (max-width: 576px){.login-page,.privacy-policy-page{padding-bottom:0;padding-top:120px;min-height:auto;justify-content:flex-start}.login-logo-container{top:20px;left:20px}.login-logo-container .login-logo-image{height:40px}.login-page-content{max-width:90%;margin-bottom:2rem}.login-footer{flex-direction:column;gap:.5rem;position:relative;background:#000c;padding:1rem 5%}}.privacy-content-wrapper{background:#ffffff0f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:40px 40px 150px;max-height:600px;overflow-y:auto}@media (max-width: 768px){.privacy-content-wrapper{width:100%;max-width:100%;border-radius:0;border-left:none;border-right:none;padding:20px;max-height:none;overflow-y:visible;margin:0 -20px}}.privacy-content-wrapper::-webkit-scrollbar{width:8px}.privacy-content-wrapper::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.privacy-content-wrapper::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}.privacy-content-wrapper::-webkit-scrollbar-thumb:hover{background:#fff6}.privacy-content{color:#ffffffe6}.privacy-content .privacy-content-subtitle{font-size:14px;color:#ffffffb3;margin-bottom:24px}.privacy-content .privacy-content-footer{margin-top:40px;text-align:right;font-size:14px;color:#ffffffb3}.privacy-content h2{font-size:24px;font-weight:700;margin:32px 0 24px;color:#fff;border-bottom:1px solid rgba(255,255,255,.3);padding-bottom:12px}.privacy-content a{color:#4a90e2}.privacy-content section{margin-bottom:24px}.privacy-content section h3{font-size:18px;font-weight:700;margin-bottom:16px;color:#fffffff2}.privacy-content section p{font-size:14px;line-height:1.8;color:#fffc;margin-bottom:12px}.privacy-content section ol,.privacy-content section ul{margin:12px 0;padding-left:24px}.privacy-content section ol li,.privacy-content section ul li{font-size:14px;line-height:1.8;color:#fffc;margin-bottom:8px}.privacy-content section ol{list-style-type:decimal}.privacy-content section ul{list-style-type:disc}.privacy-content .privacy-policy-footer{margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.2);text-align:right}.privacy-content .privacy-policy-footer p{font-size:12px;color:#fff9;margin-bottom:4px}@media (max-width: 768px){.login-page-content{padding:0}.login-page-content .privacy-content-wrapper{margin-bottom:20px}}.back-to-top-container{text-align:center;margin-top:40px;margin-bottom:20px}.back-to-top-container .back-to-top-button{display:inline-block;padding:12px 32px;background:#ffffff1a;border:1px solid rgba(255,255,255,.3);border-radius:4px;color:#fff;text-decoration:none;font-size:14px;font-weight:500;transition:all .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.back-to-top-container .back-to-top-button:hover{background:#ffffff26;border-color:#ffffff80;transform:translateY(-1px)}.back-to-top-container .back-to-top-button:active{transform:translateY(0)}@media (max-width: 768px){.back-to-top-container{margin-top:30px;margin-bottom:10px}}body{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;line-height:1.5;color:#212529;background-color:#1e2a4a}*,*:before,*:after{box-sizing:border-box}a{color:#1e2a4a;text-decoration:none}a:hover{text-decoration:underline}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}.header{position:relative;color:#fff;z-index:900}.header__container{display:flex;align-items:center;flex-wrap:wrap;height:60px;padding:40px 20px;justify-content:space-between}.header__logo{display:flex;align-items:center}.header__logo-link{display:flex;align-items:center;color:#fff;text-decoration:none}.header__logo-image{max-height:40px;width:auto}.header__search{flex:1;max-width:600px;margin:0 20px}.header__search-form{display:flex;position:relative}.header__search-input{width:100%;padding:8px 16px;border-radius:20px;border:none;background-color:#343a40;color:#fff;font-size:.9rem}.header__search-input::placeholder{color:#adb5bd}.header__search-input:focus{outline:none;background-color:#495057}.header__search-button{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;border:none;background-color:#9c27b0;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}.header__search-button:hover{background-color:#771e86}.header__search-icon{width:18px;height:18px;fill:currentColor}.header__actions{display:flex;align-items:center}.header__admin-link{color:#dee2e6;text-decoration:none;font-size:.8rem;padding:5px 10px;border:1px solid #6C757D;border-radius:4px;transition:all .3s ease}.header__admin-link:hover{background-color:#343a40;color:#fff}.header__nav{display:flex;justify-content:space-between;align-items:center;padding:10px 20px}@media (max-width: 768px){.header__nav{padding:10px}}.header__categories{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:5px}.header__categories::-webkit-scrollbar{display:none}.header__category-link{color:gray;height:40px;border-radius:4px;font-size:1rem;background:linear-gradient(#3f385a,#0d0919);border:1px solid #423158;text-decoration:none;white-space:nowrap;transition:color .3s ease,opacity .3s ease;padding:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-family:inherit}.header__category-link:hover{color:#fff;opacity:.8;text-decoration:none}.header__category-link--active{color:#fff;font-weight:500}.header__category-link--loading{opacity:.6;cursor:wait;pointer-events:none}.header__category-link:disabled{cursor:not-allowed;opacity:.6}.header__sort{min-width:100px}.header__sort-select{background-color:transparent;border:1px solid #6C757D;color:#dee2e6;padding:5px 10px;border-radius:4px;font-size:.8rem;cursor:pointer}.header__sort-select:focus{outline:none;border-color:#ced4da}.header__sort-select option{background-color:#343a40;color:#fff}main{margin-top:110px;margin-left:64px;padding:20px}@media (max-width: 768px){.header__search{max-width:300px}.header__categories{gap:10px}.header__category-link{font-size:.8rem}}@media (max-width: 576px){.header__container{padding:0 10px}.header__search{max-width:200px;margin:0 10px}.header__logo-text{display:none}.header__admin-link{font-size:.7rem;padding:4px 8px}}.sidebar{position:fixed;left:0;top:0;bottom:0;width:64px;background-color:#212529;color:#fff;z-index:1000;display:flex;flex-direction:column;align-items:center;padding-top:20px;box-shadow:2px 0 5px #0000001a;transition:width .3s ease;overflow-x:hidden}@media (max-width: 768px){.sidebar{top:auto;left:0;right:0;bottom:0;width:100%;height:60px;flex-direction:row;justify-content:space-around;padding:0;box-shadow:0 -2px 5px #0000001a}}.sidebar--expanded{width:240px;align-items:flex-start}.sidebar--expanded .sidebar__link{padding-right:24px}.sidebar__menu{display:flex;flex-direction:column;gap:20px;width:100%}@media (max-width: 768px){.sidebar__menu{flex-direction:row;justify-content:space-around;gap:5px;padding:0 10px}}.sidebar__item{display:flex;justify-content:flex-start;align-items:center;width:100%;padding-left:12px}@media (max-width: 768px){.sidebar__item{justify-content:center;padding:0;width:20%}.sidebar__item:first-child{display:none}}.sidebar__link{display:flex;justify-content:flex-start;align-items:center;width:100%;height:40px;color:#ced4da;border-radius:8px;transition:all .3s ease;padding:0 12px;text-decoration:none;border:none;background-color:transparent;cursor:pointer}@media (max-width: 768px){.sidebar__link{justify-content:center;padding:10px 0;height:40px;border-radius:0}}.sidebar__link:hover{color:#fff;background-color:#ffffff1a}.sidebar__link--active{color:#9c27b0;position:relative}.sidebar__link--active:after{content:"";position:absolute;left:-12px;width:3px;height:20px;background-color:#9c27b0;border-radius:0 3px 3px 0}@media (max-width: 768px){.sidebar__link--active:after{left:50%;transform:translate(-50%);width:20px;height:3px;bottom:-5px;top:auto;border-radius:3px}}.sidebar__link--active:hover{color:#9c27b0}.sidebar__label{margin-left:16px;font-size:14px;white-space:nowrap;opacity:0;transform:translate(-20px);transition:all .3s ease}.sidebar--expanded .sidebar__label{opacity:1;transform:translate(0)}@media (max-width: 768px){.sidebar__label{display:none}}.sidebar__icon{min-width:24px;height:24px;fill:currentColor}@media (max-width: 768px){.sidebar__icon{min-width:20px;height:20px}}.discord-link-prompt-modal__title{display:flex;align-items:center;gap:12px;font-size:1.25rem;font-weight:600}.discord-link-prompt-modal__icon{width:32px;height:32px;color:#5865f2}.discord-link-prompt-modal__message{font-size:1rem;line-height:1.6;margin-bottom:16px;color:#333}.discord-link-prompt-modal__checkbox{margin-top:8px}.discord-link-prompt-modal__checkbox .MuiFormControlLabel-label{font-size:.875rem;color:#666}.discord-link-prompt-modal__actions{padding:16px 24px;gap:12px}.discord-link-prompt-modal__link-btn{background-color:#5865f2!important;color:#fff!important}.discord-link-prompt-modal__link-btn:hover{background-color:#4752c4!important}@media (prefers-color-scheme: dark){.discord-link-prompt-modal__message{color:#e0e0e0}.discord-link-prompt-modal__checkbox .MuiFormControlLabel-label{color:#aaa}}.layout{display:flex;flex-direction:column;min-height:100vh;background:url(/assets/background-Twpo8lrQ.jpg) no-repeat center center fixed;background-size:cover;color:#fff;transition:margin-left .3s ease}.layout__main{margin-top:0;margin-left:64px;flex:1;padding:0 20px 40px;min-height:100vh;position:relative;transition:margin-left .3s ease}.layout--sidebar-expanded .layout__main{margin-left:240px}@media (max-width: 768px){.layout__main{margin-left:0;padding:0 15px 15px;margin-top:0}.layout--sidebar-expanded .layout__main{margin-left:0}}@media (max-width: 576px){.layout__main{padding:0 10px 10px}}.forgot-password-form-container{width:100%;max-width:640px;margin:0 auto}.forgot-password-form{width:100%;position:relative}.forgot-password-form h2{color:#fff;font-size:1.25rem;font-weight:700;margin-bottom:1rem;text-align:center}.forgot-password-form p{color:#fff;font-size:1rem;margin-bottom:2rem;text-align:center;line-height:1.6}.forgot-password-form .form-error{color:#ff3b6a;font-size:.875rem;margin-bottom:1rem;text-align:center;padding:.25rem;background:#ff3b6a14;border-radius:4px}.forgot-password-form .form-group{margin-bottom:1.5rem}.forgot-password-form .form-group label{display:block;color:#fff;font-size:1rem;font-weight:600;margin-bottom:.25rem}.forgot-password-form .form-group input{width:100%;background:#fff;border:none;border-radius:4px;padding:1rem;font-size:1rem;line-height:1.6}.forgot-password-form .form-actions{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-top:2rem}.forgot-password-form .form-actions .reset-button{width:280px;padding:1rem 0;background:transparent;border:2px solid #FFFFFF;border-radius:48px;color:#fff;font-weight:700;text-align:center;transition:background .25s ease,color .25s ease;cursor:pointer}.forgot-password-form .form-actions .reset-button:hover{background:#fff;color:#212529}.forgot-password-form .form-actions .reset-button:disabled{opacity:.7;cursor:not-allowed}.forgot-password-form .form-actions .back-button{width:280px;padding:1rem 0;background:transparent;border:1px solid rgba(255,255,255,.5);border-radius:48px;color:#fffc;font-weight:500;text-align:center;transition:all .25s ease;cursor:pointer}.forgot-password-form .form-actions .back-button:hover{border-color:#fff;color:#fff}.forgot-password-form .form-actions .back-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.forgot-password-form-container{max-width:100%}.form-actions .reset-button,.form-actions .back-button,.success-message .back-to-login-button{width:100%;max-width:280px}}.reset-password-form-container{width:100%;max-width:640px;margin:0 auto}.reset-password-form{width:100%;position:relative}.reset-password-form h2{color:#fff;font-size:1.25rem;font-weight:700;margin-bottom:1rem;text-align:center}.reset-password-form p{color:#fff;font-size:1rem;margin-bottom:2rem;text-align:center;line-height:1.6}.reset-password-form .form-error{color:#ff3b6a;font-size:.875rem;margin-bottom:1rem;text-align:center;padding:.25rem;background:#ff3b6a14;border-radius:4px}.reset-password-form .form-group{margin-bottom:1.5rem}.reset-password-form .form-group label{display:block;color:#fff;font-size:1rem;font-weight:600;margin-bottom:.25rem}.reset-password-form .form-group input{width:100%;background:#fff;border:none;border-radius:4px;padding:1rem;font-size:1rem;line-height:1.6}.reset-password-form .form-actions{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-top:2rem}.reset-password-form .form-actions .reset-button{width:280px;padding:1rem 0;background:transparent;border:2px solid #FFFFFF;border-radius:48px;color:#fff;font-weight:700;text-align:center;transition:background .25s ease,color .25s ease;cursor:pointer}.reset-password-form .form-actions .reset-button:hover{background:#fff;color:#212529}.reset-password-form .form-actions .reset-button:disabled{opacity:.7;cursor:not-allowed}.reset-password-form .form-actions .back-button{width:280px;padding:1rem 0;background:transparent;border:1px solid rgba(255,255,255,.5);border-radius:48px;color:#fffc;font-weight:500;text-align:center;transition:all .25s ease;cursor:pointer}.reset-password-form .form-actions .back-button:hover{border-color:#fff;color:#fff}.reset-password-form .form-actions .back-button:disabled{opacity:.5;cursor:not-allowed}.success-message{text-align:center;color:#fff}.success-message h3{font-size:1.25rem;font-weight:700;margin-bottom:1.5rem;color:#fff}.success-message p{font-size:1rem;line-height:1.6;margin-bottom:2rem;color:#fff}.success-message .back-to-login-button{width:280px;padding:1rem 0;background:transparent;border:2px solid #FFFFFF;border-radius:48px;color:#fff;font-weight:700;text-align:center;transition:background .25s ease,color .25s ease;cursor:pointer}.success-message .back-to-login-button:hover{background:#fff;color:#212529}@media (max-width: 768px){.reset-password-form-container{max-width:100%}.form-actions .reset-button,.form-actions .back-button,.success-message .back-to-login-button{width:100%;max-width:280px}}.discord-login-button-container{width:100%;display:flex;flex-direction:column;align-items:center;margin-top:1rem}.discord-login-button-container .discord-login-error{color:#ff3b6a;font-size:.875rem;margin-bottom:.5rem;text-align:center;padding:.25rem;background:#ff3b6a14;border-radius:4px}.discord-login-button{display:flex;align-items:center;justify-content:center;gap:.5rem;width:280px;padding:1rem 0;background:#5865f2;border:2px solid #5865F2;border-radius:48px;color:#fff;font-weight:700;text-align:center;transition:background .25s ease,border-color .25s ease,opacity .25s ease;cursor:pointer}.discord-login-button .discord-icon{width:20px;height:20px}.discord-login-button:hover{background:#4752c4;border-color:#4752c4}.discord-login-button:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 768px){.discord-login-button{width:100%;max-width:280px}}.profile-form{max-width:800px;margin:0;padding:2rem;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}.profile-form__title{font-size:1.8rem;margin-bottom:1.5rem;color:#333;border-bottom:2px solid #e0e0e0;padding-bottom:.5rem}.profile-form__success{padding:.8rem;background-color:#e6f7e6;color:#2e7d32;border-radius:4px;margin-bottom:1rem;border-left:4px solid #2e7d32}.profile-form__error{padding:.8rem;background-color:#ffebee;color:#c62828;border-radius:4px;margin-bottom:1rem;border-left:4px solid #c62828}.profile-form__group{margin-bottom:1.5rem}.profile-form__label{display:block;margin-bottom:.5rem;font-weight:500;color:#424242}.profile-form__input{width:100%;padding:.75rem;border:1px solid #e0e0e0;border-radius:4px;font-size:1rem;transition:border-color .3s}.profile-form__input:focus{border-color:#2196f3;outline:none;box-shadow:0 0 0 2px #2196f333}.profile-form__help-text{margin-top:.25rem;font-size:.875rem;color:#666;font-style:italic}.profile-form__age-display{margin-top:.25rem;font-size:.875rem;color:#2196f3;font-weight:500}.profile-form__validation-error{margin-top:.25rem;font-size:.875rem;color:#c62828;font-weight:500}.profile-form__info{background-color:#f5f5f5;padding:1rem;margin-bottom:1.5rem;border-radius:4px}.profile-form__info p{margin-top:0;color:#616161;font-style:italic;margin-bottom:.5rem}.profile-form__static-field{display:flex;margin-bottom:.5rem}.profile-form__static-label{font-weight:500;width:80px;color:#424242}.profile-form__static-value{color:#757575}.profile-form__actions{display:flex;justify-content:flex-end;margin-top:1.5rem}.profile-form__submit-btn{padding:.75rem 1.5rem;background-color:#2196f3;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .3s}.profile-form__submit-btn:hover{background-color:#1976d2}.profile-form__submit-btn:disabled{background-color:#bdbdbd;cursor:not-allowed}.profile-form__loading{text-align:center;padding:2rem;color:#757575;font-style:italic}.profile-image-upload{margin:20px 0}.profile-image-upload__container{display:flex;align-items:flex-start;gap:30px}@media (max-width: 768px){.profile-image-upload__container{flex-direction:column;align-items:center}}.profile-image-upload__preview{flex-shrink:0;width:200px;height:200px;border-radius:50%;overflow:hidden;border:3px solid #e0e0e0;background-color:#f5f5f5;display:flex;align-items:center;justify-content:center}.profile-image-upload__image{width:100%;height:100%;object-fit:cover}.profile-image-upload__placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#999}.profile-image-upload__placeholder-icon{font-size:60px;margin-bottom:10px}.profile-image-upload__placeholder-text{font-size:14px}.profile-image-upload__controls{flex:1;display:flex;flex-direction:column;gap:15px}.profile-image-upload__input{display:none}.profile-image-upload__buttons{display:flex;gap:10px;flex-wrap:wrap}.profile-image-upload__button{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease}.profile-image-upload__button:disabled{opacity:.6;cursor:not-allowed}.profile-image-upload__button--select{background-color:#007bff;color:#fff}.profile-image-upload__button--select:hover:not(:disabled){background-color:#0056b3}.profile-image-upload__button--upload{background-color:#28a745;color:#fff}.profile-image-upload__button--upload:hover:not(:disabled){background-color:#218838}.profile-image-upload__button--cancel{background-color:#6c757d;color:#fff}.profile-image-upload__button--cancel:hover:not(:disabled){background-color:#5a6268}.profile-image-upload__button--delete{background-color:#dc3545;color:#fff}.profile-image-upload__button--delete:hover:not(:disabled){background-color:#c82333}.profile-image-upload__info{margin-top:10px}.profile-image-upload__hint{font-size:12px;color:#666;margin:0}.category-progress-view{display:flex;flex-direction:column;gap:1.5rem}.category-progress-view__overall{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1.5rem}.category-progress-view__overall-header{margin-bottom:1rem}.category-progress-view__overall-title{font-size:1.125rem;font-weight:700;color:#fff;margin:0}.category-progress-view__overall-content{display:flex;flex-direction:column;gap:1rem}.category-progress-view__overall-percentage{font-size:2.5rem;font-weight:700;color:#4a6fe3;line-height:1}.category-progress-view__overall-bar{width:100%;height:12px;background:#ffffff1a;border-radius:6px;overflow:hidden}.category-progress-view__overall-bar-fill{height:100%;background:linear-gradient(90deg,#4a6fe3,#5a7ff1);border-radius:6px;transition:width .3s ease}.category-progress-view__overall-stats{font-size:.875rem;color:#ffffffb3;font-weight:500}.category-progress-view__categories{display:flex;flex-direction:column;gap:1rem}.category-progress-view__categories-title{font-size:1.125rem;font-weight:700;color:#fff;margin:0;padding:0 .5rem}.category-progress-view__categories-list{display:flex;flex-direction:column;gap:1rem}.category-progress-view__category-card{display:flex;gap:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1rem;cursor:pointer;transition:background-color .2s ease}.category-progress-view__category-card:hover{background:#ffffff14}.category-progress-view__category-thumbnail{flex-shrink:0;width:180px;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background:#ffffff0d}.category-progress-view__thumbnail-image{width:100%;height:100%;object-fit:cover;display:block}.category-progress-view__thumbnail-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;border-radius:8px}.category-progress-view__placeholder-text{font-size:1.25rem;font-weight:700;color:#fff}.category-progress-view__category-content{flex:1;display:flex;flex-direction:column;gap:.5rem;justify-content:center;min-width:0}.category-progress-view__category-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.category-progress-view__category-name{font-size:1rem;font-weight:700;color:#fff;margin:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.category-progress-view__category-count{font-size:.875rem;color:#ffffffb3;white-space:nowrap}.category-progress-view__category-bar-container{display:flex;align-items:center;gap:.5rem}.category-progress-view__category-bar{flex:1;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden;min-width:0}.category-progress-view__category-bar-fill{height:100%;background:linear-gradient(90deg,#4a6fe3,#5a7ff1);border-radius:4px;transition:width .3s ease}.category-progress-view__category-percentage{font-size:.875rem;color:#ffffffb3;font-weight:500;min-width:40px;text-align:right}@media (max-width: 768px){.category-progress-view__category-card{padding:1rem}.category-progress-view__category-thumbnail{width:140px}.category-progress-view__placeholder-text{font-size:1.125rem}.category-progress-view__category-name{font-size:.875rem}.category-progress-view__category-count{font-size:.75rem}.category-progress-view__category-percentage{font-size:.75rem;min-width:35px}.category-progress-view__overall-percentage{font-size:2rem}}@media (max-width: 576px){.category-progress-view{gap:1rem}.category-progress-view__overall{padding:1rem}.category-progress-view__category-card{padding:.5rem 1rem}.category-progress-view__category-thumbnail{width:120px}.category-progress-view__category-header{gap:.5rem}.category-progress-view__category-name{font-size:.875rem}}.discord-link-section__error{padding:.75rem 1rem;margin-bottom:1rem;background-color:#f443361a;border:1px solid rgba(244,67,54,.3);border-radius:4px;color:#f44336;font-size:.9rem}.discord-link-section__description{color:#6c757d;margin-bottom:1rem;font-size:.95rem;line-height:1.6}.discord-link-section__linked{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.discord-link-section__user-info{display:flex;align-items:center;gap:.75rem}.discord-link-section__avatar{width:48px;height:48px;border-radius:50%;object-fit:cover}.discord-link-section__avatar--default{display:flex;align-items:center;justify-content:center;background-color:#5865f2;color:#fff;font-weight:600;font-size:1.2rem}.discord-link-section__user-details{display:flex;flex-direction:column}.discord-link-section__username{font-weight:600;color:#fff;font-size:1rem}.discord-link-section__status{color:#28a745;font-size:.85rem}.discord-link-section__link-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;background-color:#5865f2;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease}.discord-link-section__link-btn:hover:not(:disabled){background-color:#2939ee}.discord-link-section__link-btn:disabled{opacity:.7;cursor:not-allowed}.discord-link-section__discord-icon{width:20px;height:20px}.discord-link-section__unlink-btn{padding:.5rem 1rem;background-color:transparent;color:#dc3545;border:1px solid #DC3545;border-radius:4px;font-size:.9rem;cursor:pointer;transition:all .2s ease}.discord-link-section__unlink-btn:hover{background-color:#dc3545;color:#fff}@media (max-width: 768px){.discord-link-section__linked{flex-direction:column;align-items:flex-start}.discord-link-section__unlink-btn,.discord-link-section__link-btn{width:100%}}.progress-share-card-container{display:flex;flex-direction:column;align-items:center;gap:24px;padding:16px}.progress-share-card{width:600px;max-width:100%;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);border-radius:16px;padding:24px;color:#fff;box-shadow:0 8px 32px #0000004d}.progress-share-card--loading,.progress-share-card--error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:16px;background:#1a1a2e}.progress-share-card__header{display:flex;justify-content:center;align-items:center;margin-bottom:16px}.progress-share-card__logo-img{height:32px;width:auto;object-fit:contain}.progress-share-card__user{text-align:center;margin-bottom:24px}.progress-share-card__username{font-size:1.25rem;font-weight:600;color:#f0f0f0}.progress-share-card__overall{margin-bottom:24px}.progress-share-card__overall-label{font-size:.875rem;color:#f0f0f0;font-weight:500;margin-bottom:8px}.progress-share-card__bar-container{display:flex;align-items:center;gap:12px}.progress-share-card__bar{flex:1;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.progress-share-card__bar-fill{height:100%;background:linear-gradient(90deg,#4ade80,#22c55e);border-radius:4px;transition:width .5s ease-out}.progress-share-card__overall-count{font-size:.75rem;color:#888;white-space:nowrap}.progress-share-card__categories{margin-top:16px}.progress-share-card__categories-title{font-size:.75rem;color:#888;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}.progress-share-card__category-row{margin-bottom:12px}.progress-share-card__category-row:last-child{margin-bottom:0}.progress-share-card__category-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.progress-share-card__category-name{font-size:.875rem;color:#f0f0f0;font-weight:500}.progress-share-card__category-count{font-size:.75rem;color:#888}.progress-share-card__category-bar{height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.progress-share-card__category-bar-fill{height:100%;background:linear-gradient(90deg,#4ade80,#22c55e);border-radius:3px;transition:width .5s ease-out}.progress-share-card__footer{text-align:center;color:#666;font-size:.75rem}.progress-share-card__date{opacity:.7}.progress-share-card-actions{display:flex;justify-content:center;width:100%}.progress-share-card-actions__btn--download{background-color:#4ade80!important;color:#1a1a2e!important;font-size:1rem!important;padding:12px 24px!important;font-weight:600!important}.progress-share-card-actions__btn--download:hover{background-color:#22c55e!important}@media (max-width: 480px){.progress-share-card{width:100%;padding:16px}.progress-share-card-actions{flex-direction:column;width:100%}.progress-share-card-actions__btn{width:100%}}.my-page{max-width:100%;margin:0 auto;padding:2rem}.my-page__header{margin-bottom:2rem;border-bottom:1px solid #e0e0e0;padding-bottom:1rem}.my-page__title{font-size:2rem;margin-bottom:.5rem;color:#fff}.my-page__welcome{font-size:1.1rem;color:#fff}.my-page__user-name{font-weight:600;color:#9c27b0}.my-page__loading{text-align:center;padding:3rem 0;color:#757575;font-style:italic}.my-page__error{max-width:600px;margin:0 auto;padding:2rem;text-align:center;background-color:#ffebee;border-radius:8px;color:#c62828}.my-page__error p{margin-bottom:1rem}.my-page__retry-btn{padding:.75rem 1.5rem;background-color:#f44336;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .3s}.my-page__retry-btn:hover{background-color:#d32f2f}.my-page__content{display:flex;flex-direction:column}.my-page__tabs{display:flex;gap:0;margin-bottom:2rem;border-bottom:2px solid rgba(255,255,255,.1)}.my-page__tab{padding:.75rem 1.5rem;background:transparent;border:none;color:#ffffff80;font-size:1rem;font-weight:500;cursor:pointer;position:relative;transition:color .3s ease}.my-page__tab:hover{color:#fffc}.my-page__tab--active{color:#fff}.my-page__tab--active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:#4a6fe3}.my-page__message{padding:1rem;border-radius:6px;margin-bottom:1.5rem;font-size:14px}.my-page__message--success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.my-page__message--error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.my-page__section{margin-bottom:2rem;padding:1.5rem;border-radius:8px}.my-page__section--share{background:linear-gradient(135deg,#4ade801a,#1a1a2e80);border:1px solid rgba(74,222,128,.3)}.my-page__section-title{font-size:1.2rem;font-weight:600;color:#fff;margin-bottom:1rem}.my-page__section-description{color:#ffffffb3;font-size:.95rem;margin-bottom:1rem}.my-page__share-btn{display:inline-flex;align-items:center;gap:8px;padding:.75rem 1.5rem;background-color:#4ade80;color:#1a1a2e;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.my-page__share-btn svg{font-size:1.2rem}.my-page__share-btn:hover{background-color:#22c55e;transform:translateY(-2px);box-shadow:0 4px 12px #4ade8066}.my-page__share-dialog .MuiDialogContent-root{padding:16px;background-color:#16213e}.my-page__share-dialog .MuiDialogTitle-root{background-color:#1a1a2e;color:#fff}.my-page__share-dialog .MuiPaper-root{background-color:#1a1a2e}.my-page__legal-section{margin:2rem 0;padding:1.5rem 0;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.my-page__legal-links{display:flex;gap:1rem;flex-wrap:wrap}.my-page__legal-link{padding:.75rem 1.5rem;background-color:transparent;color:#fff;border:1px solid rgba(255,255,255,.5);border-radius:4px;text-decoration:none;font-size:.95rem;transition:all .3s ease}.my-page__legal-link:hover{background-color:#ffffff1a;border-color:#fff}.my-page__logout-section{margin-top:40px;margin-bottom:40px;padding-top:40px;border-top:1px solid white}.my-page__logout-btn{width:100%;max-width:400px;padding:1rem 2rem;background-color:transparent;color:#fff;border:2px solid white;border-radius:4px;font-size:1.1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.my-page__logout-btn:hover{background-color:#fff;color:#212529}@media (max-width: 768px){.my-page{padding:1rem 0 64px}.my-page__title{font-size:1.5rem}.my-page__legal-section{margin:1.5rem 0;padding:1rem 0}.my-page__legal-links{flex-direction:column}.my-page__legal-links .my-page__legal-link{width:100%;text-align:center}.my-page__logout-section{margin-top:20px;margin-bottom:20px;padding-top:20px}}.discord-link-callback{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#212529;padding:2rem}.discord-link-callback__loading{text-align:center;color:#fff}.discord-link-callback__loading p{margin-top:1rem;font-size:1.1rem}.discord-link-callback__error{text-align:center;max-width:400px;padding:2rem;background-color:#ffffff0d;border-radius:8px;color:#fff}.discord-link-callback__error-icon{width:60px;height:60px;margin:0 auto 1rem;background-color:#dc3545;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:#fff}.discord-link-callback h2{margin-bottom:1rem;font-size:1.5rem}.discord-link-callback p{margin-bottom:1.5rem;color:#6c757d;line-height:1.6}.discord-link-callback__back-btn{padding:.75rem 2rem;background-color:#4a6fe3;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .2s ease}.discord-link-callback__back-btn:hover{background-color:#214ed9}.pagination{display:flex;flex-direction:column;gap:1.25rem;margin:2.5rem 0;padding:1rem}.pagination__info{display:flex;justify-content:center}@media (max-width: 768px){.pagination__info{display:none}}.pagination__info-text{font-size:.875rem;color:#fff;font-weight:500}.pagination__controls{display:flex;justify-content:center;align-items:center;gap:.75rem}@media (max-width: 768px){.pagination__controls{display:none}}.pagination__button{display:flex;align-items:center;gap:.375rem;padding:.75rem 1rem;border:1px solid transparent;background:linear-gradient(135deg,#fff,#f8f9fa);color:var(--text-primary, #495057);border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000000d,0 1px 2px #0000001a;position:relative;overflow:hidden}.pagination__button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .5s}.pagination__button:hover:not(.pagination__button--disabled){background:linear-gradient(135deg,#9c27b0,#771e86);color:#fff;border-color:transparent;box-shadow:0 4px 12px #9c27b04d,0 2px 4px #9c27b033;transform:translateY(-1px)}.pagination__button:hover:not(.pagination__button--disabled):before{left:100%}.pagination__button:active:not(.pagination__button--disabled){transform:translateY(0);box-shadow:0 2px 4px #9c27b033}.pagination__button--disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#f8f9fa,#e9ecef);color:var(--text-disabled, #6c757d);box-shadow:0 1px 2px #0000000d}.pagination__button-icon{width:16px;height:16px;transition:transform .2s ease}.pagination__button:hover:not(.pagination__button--disabled) .pagination__button-icon{transform:scale(1.1)}@media (max-width: 480px){.pagination__button-text{display:none}}.pagination__pages{display:flex;align-items:center;gap:.375rem}.pagination__page{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border:1px solid transparent;background:linear-gradient(135deg,#fff,#f8f9fa);color:var(--text-primary, #495057);border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000000d,0 1px 2px #0000001a;position:relative;overflow:hidden}.pagination__page:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .5s}.pagination__page:hover:not(.pagination__page--active){background:linear-gradient(135deg,#e6b5ee,#d88be5);border-color:transparent;box-shadow:0 4px 8px #9c27b026,0 2px 4px #9c27b01a;transform:translateY(-1px);color:#9c27b0}.pagination__page:hover:not(.pagination__page--active):before{left:100%}.pagination__page:active:not(.pagination__page--active){transform:translateY(0)}.pagination__page--active{background:linear-gradient(135deg,#9c27b0,#771e86);color:#fff;border-color:transparent;cursor:default;box-shadow:0 4px 12px #9c27b066,0 2px 6px #9c27b04d;transform:translateY(-1px)}.pagination__page--active:before{background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent)}.pagination__ellipsis{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;color:var(--text-secondary, #6c757d);font-size:1rem;font-weight:700;letter-spacing:.1em}.pagination__mobile{display:none;justify-content:space-between;align-items:center;padding:.5rem 1rem;gap:1rem}@media (max-width: 768px){.pagination__mobile{display:flex}}.pagination__mobile-button{display:flex;align-items:center;justify-content:center;padding:.875rem 1.25rem;border:1px solid transparent;background:linear-gradient(135deg,#fff,#f8f9fa);color:var(--text-primary, #495057);border-radius:.75rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);min-width:90px;box-shadow:0 2px 6px #00000014,0 1px 3px #0000001f;position:relative;overflow:hidden}.pagination__mobile-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .5s}.pagination__mobile-button:hover:not(.pagination__mobile-button--disabled){background:linear-gradient(135deg,#9c27b0,#771e86);color:#fff;border-color:transparent;box-shadow:0 4px 12px #9c27b04d,0 2px 6px #9c27b033;transform:translateY(-2px)}.pagination__mobile-button:hover:not(.pagination__mobile-button--disabled):before{left:100%}.pagination__mobile-button:active:not(.pagination__mobile-button--disabled){transform:translateY(0);box-shadow:0 2px 6px #9c27b033}.pagination__mobile-button--disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#f8f9fa,#e9ecef);color:var(--text-disabled, #6c757d);box-shadow:0 1px 3px #00000014}.pagination__mobile-info{font-size:.9rem;font-weight:700;color:var(--text-primary, #495057);text-align:center;min-width:70px;padding:.5rem;color:#fff;background:linear-gradient(135deg,#9c27b01a,#9c27b00d);border-radius:.5rem;border:1px solid rgba(156,39,176,.2)}@media (prefers-color-scheme: dark){.pagination__info-text{color:var(--text-secondary-dark, #aaa)}.pagination__button{border-color:var(--border-color-dark, #444);background:var(--background-color-dark, #2a2a2a);color:var(--text-primary-dark, #fff)}.pagination__button:hover:not(.pagination__button--disabled){background:var(--primary-color, #007bff);border-color:var(--primary-color, #007bff)}.pagination__button--disabled{background:var(--background-disabled-dark, #1a1a1a);color:var(--text-disabled-dark, #666)}.pagination__page{border-color:var(--border-color-dark, #444);background:var(--background-color-dark, #2a2a2a);color:var(--text-primary-dark, #fff)}.pagination__page:hover:not(.pagination__page--active){background:var(--background-hover-dark, #3a3a3a);border-color:var(--primary-color, #007bff)}.pagination__ellipsis{color:var(--text-secondary-dark, #aaa)}.pagination__mobile-button{border-color:var(--border-color-dark, #444);background:var(--background-color-dark, #2a2a2a);color:var(--text-primary-dark, #fff)}.pagination__mobile-button:hover:not(.pagination__mobile-button--disabled){background:var(--primary-color, #007bff);border-color:var(--primary-color, #007bff)}.pagination__mobile-button--disabled{background:var(--background-disabled-dark, #1a1a1a);color:var(--text-disabled-dark, #666)}.pagination__mobile-info{color:var(--text-primary-dark, #fff)}}.pagination__button:active,.pagination__page:active,.pagination__mobile-button:active{transform:translateY(1px)}.pagination__button:focus,.pagination__page:focus,.pagination__mobile-button:focus{outline:2px solid #9C27B0;outline-offset:2px}@media (prefers-contrast: high){.pagination__button,.pagination__page,.pagination__mobile-button{border-width:2px}.pagination__page--active{border-width:3px}}.video-list-page{width:100%;max-width:100%;margin:0 auto;padding:30px 20px;min-height:calc(100vh - 70px)}.video-list-page__header{margin-bottom:30px;display:flex;justify-content:space-between;align-items:center}.video-list-page__title{font-size:1.8rem;font-weight:700;color:#fff;margin:0}.video-list-page__content{margin-top:20px;margin-bottom:40px}.video-list-page__error{text-align:center;padding:40px 0}.video-list-page__error p{color:#e57373;margin-bottom:20px;font-size:1rem}.video-list-page__error button{background-color:#3a3a55;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;transition:background-color .3s ease}.video-list-page__error button:hover{background-color:#4a4a75}.video-list-page__category-section{margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}.video-list-page__section-title{font-size:1.4rem;font-weight:600;color:#fff;margin:0 0 20px}.video-list-page__retry-btn{background-color:#3a3a55;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;transition:background-color .3s ease}.video-list-page__retry-btn:hover{background-color:#4a4a75}.video-list-page__pagination{margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}.video-list-page__browse-btn{width:280px;padding:1rem 0;background:transparent;border:2px solid #FFFFFF;border-radius:48px;color:#fff;font-weight:700;text-align:center;transition:background .25s ease,color .25s ease;cursor:pointer}.video-list-page__browse-btn:hover{background:#fff;color:#212529}.video-list-page__browse-btn:disabled{opacity:.7;cursor:not-allowed}.video-list-page__empty-message{text-align:center;padding:60px 20px;color:#a0a0a0}.video-list-page__empty-message p{margin-bottom:20px;font-size:1rem;line-height:1.6}.video-list-page__empty-message .video-list-page__browse-btn{margin-top:30px;display:inline-block}.global-nav{display:flex;justify-content:center;background-color:#1a1a2e;padding:10px 0;margin-bottom:20px}.global-nav__item{padding:8px 16px;margin:0 5px;color:#a0a0a0;text-decoration:none;font-weight:500;transition:color .3s ease}.global-nav__item:hover,.global-nav__item--active{color:#fff}@media (max-width: 768px){.video-list-page{padding:20px 15px}.video-list-page__title{font-size:1.5rem}.video-list-page__browse-btn{width:100%;max-width:280px}}@media (max-width: 480px){.video-list-page{padding:15px 10px}.video-list-page__title{font-size:1.2rem}.video-list-page__header{margin-bottom:15px}}.video-card{display:flex;flex-direction:column;background-color:#1a1a2e;border-radius:8px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer;height:100%}.video-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0003}.video-card:hover .video-card__play-icon{opacity:1;transform:translate(-50%,-50%) scale(1.1)}.video-card__thumbnail{position:relative;width:100%;padding-top:56.25%;overflow:hidden}.video-card__thumbnail img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.video-card__duration{position:absolute;bottom:8px;right:8px;background-color:#000000e6;color:#fff;padding:2px 6px;border-radius:4px;font-size:.875rem;font-weight:500}.video-card__progress{position:absolute;bottom:0;left:0;right:0;height:8px;background-color:#0003}.video-card__progress-bar{height:100%;transition:width .3s ease}.video-card__play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;background-color:#000000b3;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;opacity:.7;transition:opacity .3s ease,transform .3s ease}.video-card__play-icon svg{width:24px;height:24px}.video-card__info{padding:12px;display:flex;flex-direction:column;flex-grow:1}.video-card__title{margin:0 0 8px;font-size:1rem;font-weight:600;color:#fff;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.video-card__stats{display:flex;align-items:center;margin-bottom:8px;font-size:.875rem;color:#a0a0a0}.video-card__views,.video-card__likes,.video-card__comments{display:flex;align-items:center;margin-right:12px}.video-card__views svg,.video-card__likes svg,.video-card__comments svg{width:16px;height:16px;margin-right:4px}.video-card__date{font-size:.75rem;color:#6c757d;margin-top:8px}.video-card__watch-status{margin:8px 0;display:flex;align-items:center;gap:8px}.video-card__badge{display:inline-block;padding:4px 8px;font-size:.75rem;font-weight:500;border-radius:4px}.video-card__badge--completed{background-color:#e8f5e9;color:#2e7d32}.video-card__badge--progress{background-color:#fff3e0;color:#e65100}.video-card__progress-display{display:flex;align-items:center;gap:8px}.video-card__progress-display-bar{flex:1;height:4px;background-color:#fff3;border-radius:2px;overflow:hidden}.video-card__progress-display-bar-fill{height:100%;transition:width .3s ease;border-radius:2px}.video-card__progress-display-text{font-size:.75rem;color:#a0a0a0;font-weight:500;min-width:fit-content}.video-card__categories{margin-top:auto}.video-card__category{display:inline-block;background-color:#2c2c44;color:#a0a0a0;padding:4px 8px;border-radius:4px;font-size:.75rem;margin-right:6px;margin-bottom:6px}.video-card__category:hover{background-color:#3a3a55}.video-card__delete-button{display:flex;align-items:center;background:transparent;border:1px solid #fff;border-radius:4px;color:#fff;padding:4px 8px;font-size:.75rem;cursor:pointer;transition:background-color .3s ease,color .3s ease;margin-left:auto}.video-card__delete-button svg{width:14px;height:14px;margin-right:4px;fill:#fff}.video-card__delete-button:hover{background-color:#fff;color:#1a1a2e}.video-card__delete-button:hover svg{fill:#1a1a2e}.video-card__delete-button:focus{outline:2px solid #fff;outline-offset:2px}.video-list{width:100%}.video-list__sort{display:flex;align-items:center;gap:8px;margin-bottom:16px}.video-list__sort-label{font-size:14px;color:#fff}.video-list__sort-select{padding:8px 12px;border:1px solid #DEE2E6;border-radius:4px;background-color:#f8f9fa;color:#212529;font-size:14px;cursor:pointer}.video-list__sort-select:focus{outline:none;border-color:#1e2a4a}.video-list__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;width:100%}.video-list__item{width:100%;height:100%}.video-list__placeholder{height:0;width:0}.video-list__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 0}.video-list__loading p{margin-top:16px;color:#a0a0a0;font-size:.875rem}.video-list__loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-radius:50%;border-top-color:#a0a0a0;animation:spin 1s ease-in-out infinite}.video-list__empty{padding:40px 0;text-align:center;color:#a0a0a0;width:100%}.video-list__empty p{font-size:1rem}.video-list__categories{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:10px;padding:10px 0;margin-bottom:20px;scrollbar-width:none;-ms-overflow-style:none}.video-list__categories::-webkit-scrollbar{display:none}.video-list__category-btn{white-space:nowrap;padding:6px 12px;border-radius:20px;background-color:#2c2c44;color:#a0a0a0;border:none;cursor:pointer;transition:background-color .3s ease,color .3s ease;font-size:.875rem;min-width:max-content}.video-list__category-btn:hover{background-color:#3a3a55}.video-list__category-btn--active{background-color:#4a4a75;color:#fff}@media (max-width: 1200px){.video-list__grid{grid-template-columns:repeat(3,1fr);gap:20px}}@media (max-width: 768px){.video-list__grid{grid-template-columns:repeat(2,1fr);gap:15px}}@media (max-width: 480px){.video-list__grid{grid-template-columns:1fr;gap:10px}}.search-page{width:100%;max-width:100%;margin:0 auto;padding:20px}.search-page__header{margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}@media (max-width: 768px){.search-page__header{flex-direction:column;align-items:flex-start}}.search-page__title{font-size:24px;font-weight:700;color:#fff;margin:0}.search-page__sort{display:flex;align-items:center;gap:8px}.search-page__sort-label{font-size:14px;color:#fff}.search-page__sort-select{padding:8px 12px;border:1px solid #DEE2E6;border-radius:4px;background-color:#f8f9fa;color:#212529;font-size:14px;cursor:pointer}.search-page__sort-select:focus{outline:none;border-color:#1e2a4a}.search-page__error{background-color:#dc35451a;color:#dc3545;padding:16px;border-radius:4px;margin-bottom:24px}.search-page__error p{margin:0 0 12px}.search-page__retry-btn{padding:8px 16px;background-color:#1e2a4a;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:600}.search-page__retry-btn:hover{background-color:#0f1526}.search-page__no-results{background-color:#212529;padding:24px;border-radius:8px;text-align:center;margin:32px 0}.search-page__no-results p{margin:8px 0}.search-page__no-results p:first-child{font-size:18px;font-weight:600;color:#fff}.search-page__no-results p:last-child{color:#6c757d}.search-page__content{margin-bottom:32px}.search-page__related-section{background-color:#f8f9fa;padding:24px;border-radius:8px;margin-top:32px}.search-page__section-title{font-size:18px;font-weight:600;margin:0 0 16px;color:#fff}.search-page__related-keywords{display:flex;flex-wrap:wrap;gap:12px}.search-page__hint{width:100%;text-align:center;color:#6c757d;margin:16px 0 0;font-size:14px}.related-videos{padding:0 10px}.related-videos__title{font-size:18px;font-weight:600;margin-bottom:16px}.related-videos__list{display:flex;flex-direction:column;gap:16px}.related-videos__item{display:flex;gap:12px;text-decoration:none;color:inherit;transition:background-color .2s;padding:8px;border-radius:8px}.related-videos__item:hover{opacity:.6;text-decoration:none}.related-videos__item:hover .related-videos__play-icon{opacity:1}.related-videos__thumbnail{position:relative;width:120px;height:68px;border-radius:4px;overflow:hidden;flex-shrink:0}.related-videos__image{width:100%;height:100%;object-fit:cover;background-color:#e0e0e0;border-radius:4px}.related-videos__play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;transition:opacity .2s ease}.related-videos__play-icon svg{width:32px;height:32px;color:#fff;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}.related-videos__duration{position:absolute;bottom:4px;right:4px;background-color:#000000b3;color:#fff;padding:1px 4px;border-radius:2px;font-size:12px}.related-videos__info{flex:1;min-width:0}.related-videos__item-title{font-size:14px;font-weight:500;margin:0 0 6px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.related-videos__meta{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#fff;margin:0}.related-videos__views,.related-videos__date{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.related-videos__empty{color:#777;font-style:italic;text-align:center;padding:20px 0}@media (max-width: 768px){.related-videos{padding:0}.related-videos__thumbnail{width:100px;height:56px}}.video-comments{margin-top:30px;padding-top:20px;border-top:1px solid #eee;max-width:100%;overflow-x:hidden;box-sizing:border-box}.video-comments__title{font-size:20px;font-weight:600;margin-bottom:20px;display:flex;align-items:center;gap:8px}.video-comments__count{font-size:14px;color:#888;font-weight:400}.video-comments__form{display:flex;flex-direction:column;gap:10px;margin-bottom:30px}@media (min-width: 768px){.video-comments__form{flex-direction:row;align-items:flex-start;gap:15px}}.video-comments__message{padding:12px 16px;border-radius:6px;font-size:14px;margin-bottom:10px}.video-comments__message--error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.video-comments__message--success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.video-comments__input-wrapper{flex:1;display:flex;flex-direction:column}.video-comments__input{width:100%;min-height:80px;padding:12px;border:1px solid #ddd;border-radius:8px;resize:vertical;font-family:inherit;font-size:14px;color:#fff;background-color:transparent;word-break:break-word;overflow-wrap:break-word;max-width:100%;box-sizing:border-box}.video-comments__input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.video-comments__input:disabled{background-color:#f8f8f8;cursor:not-allowed;opacity:.6}.video-comments__input::placeholder{color:#999}.video-comments__counter{display:flex;justify-content:flex-end;margin-top:5px}.video-comments__counter-text{font-size:12px;color:#fff;transition:color .2s ease}.video-comments__counter-text--warning{color:#fd7e14}.video-comments__counter-text--error{color:#dc3545}.video-comments__submit{align-self:flex-end;background-color:#007bff;color:#fff;border:none;border-radius:4px;padding:10px 20px;font-weight:500;cursor:pointer;transition:background-color .2s;margin-top:10px}@media (min-width: 768px){.video-comments__submit{align-self:flex-start;min-width:100px;margin-top:0;height:fit-content}}.video-comments__submit:hover:not(:disabled){background-color:#0069d9}.video-comments__submit:disabled{background-color:#97c4f5;cursor:not-allowed}.video-comments__list{display:flex;flex-direction:column;gap:20px;max-width:100%;overflow-x:hidden}.video-comments__item{border-radius:8px;padding:16px;overflow:hidden;word-wrap:break-word;word-break:break-word;max-width:100%;box-sizing:border-box}.video-comments__item--pinned{background:linear-gradient(135deg,#4ade801a,#1a1a2e4d);border:1px solid rgba(74,222,128,.3)}.video-comments__pin-badge{display:flex;align-items:center;justify-content:center;font-size:14px;margin-right:4px}.video-comments__header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.video-comments__avatar{width:40px;height:40px;border-radius:50%;background-color:#e0e0e0;background-size:cover;background-position:center}.video-comments__author{font-weight:600;font-size:14px}.video-comments__date{color:#fff;font-size:12px;margin-left:auto}.video-comments__body p{font-size:14px;line-height:1.5;margin:0;white-space:pre-wrap;color:#fff;word-break:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:100%}.video-comments__body .timestamp-link{background:none;border:none;color:#94e3ff;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:400;text-decoration:none;padding:0;border-radius:0;transition:text-decoration .1s ease}.video-comments__body .timestamp-link:hover{text-decoration:underline;color:#94e3ff}.video-comments__body .timestamp-link:active{color:#94e3ff}.video-comments__content--truncated{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.video-comments__read-more{background:none;border:none;color:#fff;cursor:pointer;font-size:14px;padding:4px 0;margin-top:8px;text-decoration:underline;transition:opacity .2s}.video-comments__read-more:hover{opacity:.8}.video-comments__empty{color:#fff;font-style:italic;text-align:center;padding:20px 0}.video-comments__empty svg{width:48px;height:48px;color:#666;margin-bottom:12px}.video-comments__empty p{margin:0}.video-comments__empty p:first-of-type{font-weight:600;margin-bottom:4px}.video-comments__loading{color:#888;text-align:center;padding:20px 0;font-style:italic}.video-comments__load-more{display:flex;justify-content:center;margin-top:20px;padding-top:20px}.video-comments__load-more-button{background-color:#6c757d;color:#fff;border:none;border-radius:4px;padding:10px 20px;font-size:14px;cursor:pointer;transition:background-color .2s}.video-comments__load-more-button:hover:not(:disabled){background-color:#5a6268}.video-comments__load-more-button:disabled{background-color:#adb5bd;cursor:not-allowed}.comment-reply{padding:1rem;background:#ffffff08;border-radius:8px;margin-bottom:1rem;position:relative}.comment-reply:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:#007bff;border-radius:0 0 3px 3px}.comment-reply__header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;position:relative}.comment-reply__avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#4a6fe3,#7b9cf7);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid rgba(255,255,255,.2);box-shadow:0 2px 6px #0000004d}.comment-reply__avatar-fallback{color:#fff;font-weight:700;font-size:.9rem}.comment-reply__meta{flex:1;min-width:0}.comment-reply__author{font-weight:600;color:#fff;font-size:.875rem;display:block;line-height:1.3}.comment-reply__time{color:#999;font-size:.75rem;font-weight:500}.comment-reply__actions{position:relative}.comment-reply__actions:hover .comment-reply__menu{opacity:1;visibility:visible;transform:translateY(0)}.comment-reply__menu-trigger{background:none;border:none;color:#999;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease}.comment-reply__menu-trigger svg{width:16px;height:16px}.comment-reply__menu-trigger:hover{background:#ffffff1a;color:#fff}.comment-reply__menu{position:absolute;top:100%;right:0;background:#2a2a2a;border:1px solid rgba(255,255,255,.15);border-radius:6px;box-shadow:0 4px 16px #0006;z-index:10;min-width:100px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .2s ease}.comment-reply__menu button{width:100%;background:none;border:none;padding:.25rem .5rem;text-align:left;cursor:pointer;transition:background .2s ease;font-size:.75rem;color:#fff}.comment-reply__menu button:first-child{border-radius:6px 6px 0 0}.comment-reply__menu button:last-child{border-radius:0 0 6px 6px}.comment-reply__menu button:hover{background:#ffffff1a}.comment-reply__menu button.danger{color:#dc3545}.comment-reply__menu button.danger:hover{background:#dc354526}.comment-reply__body{margin-left:calc(32px + .5rem)}.comment-reply__content{color:#fff;line-height:1.5;margin:0;word-wrap:break-word;white-space:pre-wrap;font-size:.875rem}.comment-reply__like-actions{margin-top:.25rem;margin-left:calc(32px + .5rem)}.comment-reply__like-button{background:none;border:none;color:#999;cursor:pointer;font-size:.75rem;display:flex;align-items:center;gap:.25rem;padding:.25rem;border-radius:4px;transition:all .2s ease}.comment-reply__like-button svg{width:14px;height:14px}.comment-reply__like-button:hover:not(:disabled){color:#ff6b81}.comment-reply__like-button:disabled{opacity:.5;cursor:not-allowed}.comment-reply__like-button--active{color:#ff6b81}.comment-reply__like-button--active:hover:not(:disabled){color:#999}.comment-reply__edit-form .comment-reply__edit-input{width:100%;min-height:60px;padding:.25rem;border:2px solid #007bff;border-radius:6px;font-family:inherit;font-size:.875rem;line-height:1.5;resize:vertical;color:#fff;background-color:transparent;transition:border-color .2s ease}.comment-reply__edit-form .comment-reply__edit-input:focus{outline:none;border-color:#0056b3;box-shadow:0 0 0 2px #007bff40}.comment-reply__edit-form .comment-reply__edit-actions{display:flex;gap:.25rem;margin-top:.25rem;justify-content:flex-end}.comment-reply__edit-form .comment-reply__edit-actions button{padding:.25rem .5rem;border:none;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease}.comment-reply__edit-form .comment-reply__edit-actions button.cancel{background:#ffffff26;color:#fff}.comment-reply__edit-form .comment-reply__edit-actions button.cancel:hover{background:#ffffff40}.comment-reply__edit-form .comment-reply__edit-actions button.save{background:#007bff;color:#fff}.comment-reply__edit-form .comment-reply__edit-actions button.save:hover:not(:disabled){background:#0069d9}.comment-reply__edit-form .comment-reply__edit-actions button.save:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.comment-reply{padding:.5rem}.comment-reply__avatar{width:28px;height:28px}.comment-reply__avatar-fallback{font-size:.8rem}.comment-reply__body{margin-left:calc(28px + .5rem)}.comment-reply__author,.comment-reply__content{font-size:.75rem}}@media (max-width: 576px){.comment-reply{padding:.25rem}.comment-reply__header{gap:.25rem}.comment-reply__avatar{width:24px;height:24px}.comment-reply__avatar-fallback{font-size:.7rem}.comment-reply__body{margin-left:calc(24px + .25rem)}.comment-reply__edit-form .comment-reply__edit-actions{flex-direction:column}.comment-reply__edit-form .comment-reply__edit-actions button{width:100%}}@media (prefers-reduced-motion: reduce){.comment-reply__menu-trigger,.comment-reply__menu,.comment-reply__edit-input{transition:none}}.comment-thread{margin-bottom:2rem}.comment-thread .comment-main{padding:1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.1);transition:all .2s ease}.comment-thread .comment-main:hover{border-color:#fff3}.comment-thread .comment-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;position:relative}.comment-thread .comment-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#4a6fe3,#7b9cf7);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid rgba(255,255,255,.2);box-shadow:0 2px 8px #0000004d}.comment-thread .comment-avatar__fallback{color:#fff;font-weight:700;font-size:1.2rem}.comment-thread .comment-meta{flex:1;min-width:0}.comment-thread .comment-author{font-weight:600;color:#fff;font-size:1.05rem;display:block;line-height:1.3}.comment-thread .comment-time{color:#999;font-size:.875rem;font-weight:500}.comment-thread .comment-actions-menu{position:relative}.comment-thread .comment-actions-menu .comment-menu-trigger{background:none;border:none;color:#999;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease}.comment-thread .comment-actions-menu .comment-menu-trigger svg{width:18px;height:18px}.comment-thread .comment-actions-menu .comment-menu-trigger:hover{background:#ffffff1a;color:#fff}.comment-thread .comment-actions-menu .comment-menu{position:absolute;top:100%;right:0;background:#2a2a2a;border:1px solid rgba(255,255,255,.15);border-radius:8px;box-shadow:0 4px 16px #0006;z-index:10;min-width:120px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .2s ease}.comment-thread .comment-actions-menu .comment-menu button{width:100%;background:none;border:none;padding:.5rem 1rem;text-align:left;cursor:pointer;transition:background .2s ease;font-size:.875rem;color:#fff}.comment-thread .comment-actions-menu .comment-menu button:first-child{border-radius:8px 8px 0 0}.comment-thread .comment-actions-menu .comment-menu button:last-child{border-radius:0 0 8px 8px}.comment-thread .comment-actions-menu .comment-menu button:hover{background:#ffffff1a}.comment-thread .comment-actions-menu .comment-menu button.danger{color:#dc3545}.comment-thread .comment-actions-menu .comment-menu button.danger:hover{background:#dc354526}.comment-thread .comment-actions-menu:hover .comment-menu{opacity:1;visibility:visible;transform:translateY(0)}.comment-thread .comment-body{margin-bottom:1rem}.comment-thread .comment-content{color:#fff;line-height:1.6;margin:0;word-wrap:break-word;white-space:pre-wrap;font-size:14px}.comment-thread .comment-edit-form .comment-edit-input{width:100%;min-height:80px;padding:.5rem;border:2px solid #007bff;border-radius:8px;font-family:inherit;font-size:inherit;line-height:1.6;resize:vertical;color:#fff;background-color:transparent;transition:border-color .2s ease}.comment-thread .comment-edit-form .comment-edit-input:focus{outline:none;border-color:#0056b3;box-shadow:0 0 0 2px #007bff40}.comment-thread .comment-edit-form .comment-edit-actions{display:flex;gap:.5rem;margin-top:.5rem;justify-content:flex-end}.comment-thread .comment-edit-form .comment-edit-actions button{padding:.25rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.comment-thread .comment-edit-form .comment-edit-actions button.cancel{background:#ffffff26;color:#fff}.comment-thread .comment-edit-form .comment-edit-actions button.cancel:hover{background:#ffffff40}.comment-thread .comment-edit-form .comment-edit-actions button.save{background:#007bff;color:#fff}.comment-thread .comment-edit-form .comment-edit-actions button.save:hover:not(:disabled){background:#0069d9}.comment-thread .comment-edit-form .comment-edit-actions button.save:disabled{opacity:.5;cursor:not-allowed}.comment-thread .comment-actions{display:flex;gap:1rem}.comment-thread .comment-actions button{background:none;border:none;color:#999;cursor:pointer;font-size:.875rem;font-weight:500;display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:6px;transition:all .2s ease}.comment-thread .comment-actions button svg{width:16px;height:16px;transition:transform .2s ease}.comment-thread .comment-actions button svg.rotated{transform:rotate(180deg)}.comment-thread .comment-actions button:hover:not(:disabled){background:#ffffff1a;color:#fff}.comment-thread .comment-actions button:disabled{opacity:.5;cursor:not-allowed}.comment-thread .comment-actions button.like-button:hover:not(:disabled){color:#ff6b81}.comment-thread .comment-actions button.like-button--active{color:#ff6b81}.comment-thread .comment-actions button.like-button--active:hover:not(:disabled){color:#999}.comment-thread .comment-actions button.like-button .like-count{font-size:.75rem}.comment-thread .comment-actions button.reply-button:hover:not(:disabled){color:#28a745}.comment-thread .comment-actions button.toggle-replies:hover{color:#17a2b8}.reply-form{display:flex;gap:1rem;margin:1.5rem 0 1.5rem 2rem;padding:1.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;position:relative}.reply-form:before{content:"";position:absolute;top:-1px;left:-2rem;width:2px;height:calc(100% + 2px);background:#007bff;border-radius:1px}.reply-form .reply-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#4a6fe3,#7b9cf7);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid rgba(255,255,255,.2);box-shadow:0 2px 6px #0000004d}.reply-form .reply-avatar__fallback{color:#fff;font-weight:700;font-size:1rem}.reply-form .reply-input-wrapper{flex:1;min-width:0}.reply-form .reply-input{width:100%;min-height:60px;padding:.5rem;border:1px solid #ddd;border-radius:8px;font-family:inherit;font-size:.875rem;line-height:1.5;resize:vertical;color:#fff;background-color:transparent;transition:all .2s ease}.reply-form .reply-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.reply-form .reply-input:disabled{background:#ffffff0d;color:#999;cursor:not-allowed}.reply-form .reply-input::placeholder{color:#999}.reply-form .reply-actions{display:flex;gap:.5rem;margin-top:.5rem;justify-content:flex-end}.reply-form .reply-actions button{padding:.25rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.reply-form .reply-actions button:first-child{background:#ffffff26;color:#fff}.reply-form .reply-actions button:first-child:hover:not(:disabled){background:#ffffff40}.reply-form .reply-actions button.primary{background:#007bff;color:#fff}.reply-form .reply-actions button.primary:hover:not(:disabled){background:#0069d9}.reply-form .reply-actions button.primary:disabled{opacity:.5;cursor:not-allowed}.reply-form .reply-hint{font-size:.75rem;color:#999;margin-top:.25rem;text-align:right}.replies{margin-left:2rem;margin-top:1.5rem;position:relative}.replies:before{content:"";position:absolute;top:0;left:-1.5rem;width:2px;height:100%;background:linear-gradient(to bottom,#007bff,transparent);border-radius:1px}@media (max-width: 768px){.comment-thread .comment-main{padding:1rem}.comment-thread .comment-avatar{width:40px;height:40px}.comment-thread .comment-avatar__fallback{font-size:1.1rem}.comment-thread .comment-author{font-size:1rem}.reply-form{margin-left:1.5rem;padding:1rem}.reply-form:before{left:-1.5rem}.reply-form .reply-avatar{width:32px;height:32px}.reply-form .reply-avatar__fallback{font-size:.9rem}.replies{margin-left:1.5rem}.replies:before{left:-.5rem}}@media (max-width: 576px){.comment-thread{margin-bottom:1.5rem}.comment-thread .comment-main{padding:.5rem}.comment-thread .comment-header{gap:.25rem}.comment-thread .comment-avatar{width:36px;height:36px}.comment-thread .comment-avatar__fallback{font-size:1rem}.comment-thread .comment-actions{flex-wrap:wrap;gap:.5rem}.comment-thread .comment-actions button{font-size:.75rem;padding:.25rem}.reply-form{flex-direction:column;margin-left:1rem;padding:.5rem}.reply-form:before{left:-1rem}.reply-form .reply-avatar{width:28px;height:28px;align-self:flex-start}.reply-form .reply-avatar__fallback{font-size:.8rem}.reply-form .reply-actions{flex-direction:column}.reply-form .reply-actions button{width:100%}.replies{margin-left:1rem}.replies:before{display:none}}@media (prefers-reduced-motion: reduce){.comment-thread .comment-main{transition:none}.comment-actions button svg{transition:none}.comment-menu,.reply-input{transition:none}}.video-info{margin-top:20px}.video-info__stats{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #eee}.video-info__views,.video-info__likes,.video-info__download,.video-info__category,.video-info__duration{display:flex;align-items:center;gap:5px;font-size:14px;color:#fff}.video-info__views svg,.video-info__likes svg,.video-info__download svg,.video-info__category svg,.video-info__duration svg{width:18px;height:18px}.video-info__favorite-button{background:transparent;border:none;color:#999;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.video-info__favorite-button svg{width:18px;height:18px;transition:all .2s ease}.video-info__favorite-button:hover,.video-info__favorite-button--active{color:#f44336}.video-info__download-button{background:#333;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:6px 12px;display:flex;align-items:center;gap:5px;font-size:14px;transition:all .2s ease}.video-info__download-button svg{width:18px;height:18px;transition:all .2s ease}.video-info__download-button:hover{background:#444}.video-info__download-button:disabled{cursor:not-allowed;opacity:.7}.video-info__download-button--active{background:#2e7d32}.video-info__download-button--active:hover{background:#388e3c}.video-info__download-button--loading{background:#666}.video-info__download-button--loading .downloading-icon{animation:rotate 1.5s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.video-info__download-error{color:#f44336;font-size:12px;margin-top:4px}.video-info__category{background:linear-gradient(#3f385a,#0d0919);border:1px solid #423158;border-radius:4px;padding:3px 8px;font-size:12px;color:#fff;text-decoration:none;transition:all .3s ease}.video-info__category:hover{opacity:.6;text-decoration:none;color:#fff}.video-info__description{margin-bottom:24px}.video-info__description h2{font-size:18px;font-weight:600;margin-bottom:12px}.video-info__description p{font-size:14px;line-height:1.5;color:#fff;white-space:pre-line;word-break:break-word}.video-info__description .timestamp-link{background:none;border:none;color:#94e3ff;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:400;text-decoration:none;padding:0;border-radius:0;transition:text-decoration .1s ease}.video-info__description .timestamp-link:hover{text-decoration:underline;color:#94e3ff}.video-info__description .timestamp-link:active{color:#94e3ff}.video-info__tags{margin-bottom:24px}.video-info__tags h2{font-size:18px;font-weight:600;margin-bottom:12px}.video-info__tags-list{display:flex;flex-wrap:wrap;gap:8px}.video-info__tag{background-color:#f0f0f0;padding:5px 10px;border-radius:16px;font-size:13px;color:#555}.video-info__tag:hover{background-color:#e0e0e0}.video-player{position:relative;width:100%;background-color:#000;border-radius:8px;overflow:hidden}.video-player__video{width:100%;height:500px}@media (max-width: 768px){.video-player__video{height:300px}}.video-player__video{display:block}.video-player__quality-control{position:absolute;right:12px;top:12px;z-index:3;display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:6px;background:#000000c7;color:#fff;font-size:13px;box-shadow:0 2px 8px #00000059}.video-player__quality-control label{line-height:1}.video-player__quality-control select{min-width:112px;padding:3px 8px;border:1px solid rgba(255,255,255,.42);border-radius:4px;background:#181818eb;color:#fff;font-size:13px}.video-player__quality-control select option{background:#1a1a1a;color:#fff}.video-detail-page{max-width:1280px;margin:0 auto;padding:20px}.video-detail-page__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px}.video-detail-page__title{font-size:24px;font-weight:700;margin:0;flex:1;min-width:200px}.video-detail-page__back-button{padding:8px 12px;background-color:#f0f0f0;border:none;border-radius:4px;cursor:pointer;font-size:14px}.video-detail-page__back-button:hover{background-color:#e0e0e0}.video-detail-page__content{display:flex;flex-direction:column;gap:30px}@media (min-width: 992px){.video-detail-page__content{flex-direction:row}}.video-detail-page__main-column{flex:1;min-width:0}.video-detail-page__side-column{width:100%}@media (min-width: 992px){.video-detail-page__side-column{width:320px;min-width:320px}}.video-detail-page__loading{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:300px}.video-detail-page__loading p{margin-top:16px;color:#666}.video-detail-page__loading-spinner{width:50px;height:50px;border:4px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:#007bff;animation:spin 1s linear infinite}.video-detail-page__error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center;padding:20px}.video-detail-page__error h2{color:#d32f2f;margin-bottom:10px}.video-detail-page__error p{margin-bottom:15px;color:#333;max-width:600px}.video-detail-page__error-detail{color:#666;font-size:14px;margin-bottom:20px}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.video-detail-page{padding:10px 10px 64px}.video-detail-page__title{font-size:20px}}
