/* Java forms and accessible controls retain the original PHP theme geometry. */
[hidden] { display: none !important; }
body.modal-open, body.sw-job-open { overflow: hidden; }
button, input, textarea { font-family: inherit; }
.live_form input[type="text"], .live_form button[type="submit"] { font-family: Arial; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
button[data-auth-close], button[data-sw-job-close] { border: 0; padding: 0; background: transparent; }
.form_box .tit { display: flex; justify-content: center; gap: 50px; }
.form_box .tit button { display: block; position: relative; height: 50px; line-height: 50px; border: 0; padding: 0; background: transparent; font-size: 16px; color: #333; cursor: pointer; }
.form_box .tit button[aria-selected="true"]::after { content: ""; width: 20px; height: 4px; border-radius: 10px; background: #ff2442; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); }
.form_box .con .yzm button[data-captcha-refresh] { display: block; width: auto; height: 46px; padding: 0; background: transparent; border: 0; }
.form_box .con .yzm img { display: block; width: 120px; height: 45px; }
.form_box .con li:has(.yzm) > input { padding-right: 145px; }
.form_box .con .form-actions input[type="checkbox"], .form_box .con input[type="checkbox"] { width: auto; height: auto; padding: 0; }
.sw-form-error { margin: 15px 0; color: #c91e36; font-size: 14px; line-height: 1.6; }
.sw-form-note { margin: 15px 0; color: #666; font-size: 14px; line-height: 1.8; }
.tc_box .head, .user_form_box .head { font-weight: normal; }
.form_box .captcha-field { position: relative; margin-top: 15px; }
.form_box .captcha-field > input:not([type="hidden"]) { width: 100%; height: 46px; padding: 0 145px 0 15px; box-sizing: border-box; border: 1px solid #dcdfe6; border-radius: 4px; outline: none; font-size: 15px; color: #606266; }
.form_box .captcha-field > input:focus { border-color: #ff2442; }
.form_box .captcha-field button[data-captcha-refresh] { position: absolute; top: 0; right: 0; width: 140px; height: 46px; border: 0; border-left: 1px solid #dcdfe6; background: transparent; padding: 0 10px; }
.form_box .captcha-field img { display: block; width: 120px; height: 45px; }
.form_box .protocol { margin-top: 15px; font-size: 12px; line-height: 1.8; }
.form_box .protocol input[type="checkbox"] { vertical-align: middle; }
.sw-logout { display: inline; }
.sw-logout button { border: 0; padding: 0; background: transparent; color: inherit; font-size: inherit; cursor: pointer; }
.music_show .aplayer.aplayer-withlrc .aplayer-pic { width: 360px; height: 360px; }
.music_show .aplayer.aplayer-withlrc .aplayer-info { margin-left: 380px; }
.music_show .aplayer .aplayer-lrc { height: 280px; }
.music_show .aplayer .aplayer-lrc::before { height: 3px; }
.music_show .aplayer .aplayer-info .aplayer-music .aplayer-title { font-size: 16px; }
.music_show .aplayer .aplayer-lrc p { font-size: 14px; line-height: 18px !important; height: 18px !important; }
[data-sw-detail-start] { width: 100%; min-height: 360px; display: flex; align-items: center; gap: 20px; border: 0; padding: 0; background: #fff; text-align: left; cursor: pointer; color: #333; font-size: 16px; }
[data-sw-detail-start] > img { width: 360px; height: 360px; object-fit: cover; }
.sw-detail-placeholder-info { display: flex; flex-direction: column; gap: 20px; }
.sw-detail-placeholder-artist { color: #666; font-size: 12px; }
.form_box .con:not([hidden]) { display: block; }
.service_item .hd [data-sw-tab] { cursor: pointer; }
.navBox .nav li:focus-within .subNavbox { visibility: visible; opacity: 1; }
.footer .left > ul { display: flex; flex-wrap: nowrap; gap: 10px; overflow-x: auto; }
.footer .left > ul > a { flex: 0 0 auto; margin-right: 0; white-space: nowrap; }
.footer .left > ul > a::after { right: -6px; }
/* Match the platform policy's reading rhythm despite legacy 17px inline line heights. */
#art_box.sw-policy-content p { line-height: 30px !important; margin: 10px 0; }
#art_box.sw-policy-content p * { line-height: inherit !important; }
#art_box.sw-policy-content > p:first-child { margin-bottom: 21px; }
.myplay { position: fixed; left: 5px; top: 50%; z-index: 99; }
.myplay .close { position: absolute; right: 0; top: 0; z-index: 2; opacity: 0; }
.myplay .close.on { opacity: 1; }
.myplay button.close { border: 0; border-radius: 50%; width: 20px; height: 20px; padding: 0; line-height: 18px; color: #fff; background: #666; font-size: 18px; cursor: pointer; }
.myaplayer { margin: 5px; }
.myaplayer.aplayer-narrow { width: 76px; }
.myaplayer.aplayer-narrow .aplayer-body, .myaplayer.aplayer-narrow .aplayer-pic, .myaplayer .aplayer-pic { width: 76px; height: 76px; }
.myplay audio { max-width: 300px; }
.tc_join { max-height: 90vh; }
.tc_join .scrollbox { max-height: min(360px, 65vh); overflow-y: auto; }
/* Equivalent to the source coverVid centering and cover scaling. */
.hezuo .bg-video { overflow: hidden; }
.hezuo .bg-video video { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
[data-aos] { transition-duration: 1000ms; transition-timing-function: cubic-bezier(.175, .885, .32, 1.275); }
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
    [data-aos] { opacity: 1 !important; transform: none !important; }
}
