
.serene-checkbox[data-v-da9b3040] { position: relative; display: inline-flex; width: 20px; height: 20px; flex: 0 0 20px; vertical-align: middle;
}
.serene-checkbox input[data-v-da9b3040] { position: absolute !important; inset: 0; width: 100% !important; height: 100% !important; padding: 0 !important; margin: 0 !important; opacity: 0; z-index: 1; cursor: pointer;
}
.serene-checkbox-box[data-v-da9b3040] { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; box-sizing: border-box; border: 2px solid #cbd5e1; border-radius: 6px; background: #fff; box-shadow: 0 1px 3px #0f172a08; transition: background .2s, border-color .2s, box-shadow .2s;
}
.serene-checkbox-box svg[data-v-da9b3040] { color: #fff; opacity: 0; transform: scale(.5); transition: opacity .2s, transform .2s cubic-bezier(.2,.8,.2,1);
}
.serene-checkbox input:checked + .serene-checkbox-box[data-v-da9b3040], .serene-checkbox input:indeterminate + .serene-checkbox-box[data-v-da9b3040] { background: #10b981; border-color: #10b981;
}
.serene-checkbox input:checked + .serene-checkbox-box svg[data-v-da9b3040], .serene-checkbox input:indeterminate + .serene-checkbox-box svg[data-v-da9b3040] { opacity: 1; transform: scale(1);
}
.serene-checkbox:hover:not(.is-disabled) .serene-checkbox-box[data-v-da9b3040] { border-color: #34d399; box-shadow: 0 0 0 3px #ecfdf5;
}
.serene-checkbox input:focus-visible + .serene-checkbox-box[data-v-da9b3040] { outline: 2px solid #10b981; outline-offset: 3px;
}
.serene-checkbox.is-disabled[data-v-da9b3040] { opacity: .45;
}
.serene-checkbox.is-disabled input[data-v-da9b3040] { cursor: not-allowed;
}
@media(prefers-reduced-motion: reduce) {
.serene-checkbox-box[data-v-da9b3040], .serene-checkbox-box svg[data-v-da9b3040] { transition: none;
}
}
:root{--el-color-white:#fff;--el-color-black:#000;--el-color-primary-rgb:64, 158, 255;--el-color-success-rgb:103, 194, 58;--el-color-warning-rgb:230, 162, 60;--el-color-danger-rgb:245, 108, 108;--el-color-error-rgb:245, 108, 108;--el-color-info-rgb:144, 147, 153;--el-font-size-extra-large:20px;--el-font-size-large:18px;--el-font-size-medium:16px;--el-font-size-base:14px;--el-font-size-small:13px;--el-font-size-extra-small:12px;--el-font-family:"Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;--el-font-weight-primary:500;--el-font-line-height-primary:24px;--el-index-normal:1;--el-index-top:1000;--el-index-popper:2000;--el-border-radius-base:4px;--el-border-radius-small:2px;--el-border-radius-round:20px;--el-border-radius-circle:100%;--el-transition-duration:.3s;--el-transition-duration-fast:.2s;--el-transition-function-ease-in-out-bezier:cubic-bezier(.645, .045, .355, 1);--el-transition-function-fast-bezier:cubic-bezier(.23, 1, .32, 1);--el-transition-all:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);--el-transition-fade:opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-md-fade:transform var(--el-transition-duration) var(--el-transition-function-fast-bezier), opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-fade-linear:opacity var(--el-transition-duration-fast) linear;--el-transition-border:border-color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-box-shadow:box-shadow var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-color:color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-component-size-large:40px;--el-component-size:32px;--el-component-size-small:24px;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--el-color-primary:#409eff;--el-color-primary-light-3:#79bbff;--el-color-primary-light-5:#a0cfff;--el-color-primary-light-7:#c6e2ff;--el-color-primary-light-8:#d9ecff;--el-color-primary-light-9:#ecf5ff;--el-color-primary-dark-2:#337ecc;--el-color-success:#67c23a;--el-color-success-light-3:#95d475;--el-color-success-light-5:#b3e19d;--el-color-success-light-7:#d1edc4;--el-color-success-light-8:#e1f3d8;--el-color-success-light-9:#f0f9eb;--el-color-success-dark-2:#529b2e;--el-color-warning:#e6a23c;--el-color-warning-light-3:#eebe77;--el-color-warning-light-5:#f3d19e;--el-color-warning-light-7:#f8e3c5;--el-color-warning-light-8:#faecd8;--el-color-warning-light-9:#fdf6ec;--el-color-warning-dark-2:#b88230;--el-color-danger:#f56c6c;--el-color-danger-light-3:#f89898;--el-color-danger-light-5:#fab6b6;--el-color-danger-light-7:#fcd3d3;--el-color-danger-light-8:#fde2e2;--el-color-danger-light-9:#fef0f0;--el-color-danger-dark-2:#c45656;--el-color-error:#f56c6c;--el-color-error-light-3:#f89898;--el-color-error-light-5:#fab6b6;--el-color-error-light-7:#fcd3d3;--el-color-error-light-8:#fde2e2;--el-color-error-light-9:#fef0f0;--el-color-error-dark-2:#c45656;--el-color-info:#909399;--el-color-info-light-3:#b1b3b8;--el-color-info-light-5:#c8c9cc;--el-color-info-light-7:#dedfe0;--el-color-info-light-8:#e9e9eb;--el-color-info-light-9:#f4f4f5;--el-color-info-dark-2:#73767a;--el-bg-color:#fff;--el-bg-color-page:#f2f3f5;--el-bg-color-overlay:#fff;--el-text-color-primary:#303133;--el-text-color-regular:#606266;--el-text-color-secondary:#909399;--el-text-color-placeholder:#a8abb2;--el-text-color-disabled:#c0c4cc;--el-border-color:#dcdfe6;--el-border-color-light:#e4e7ed;--el-border-color-lighter:#ebeef5;--el-border-color-extra-light:#f2f6fc;--el-border-color-dark:#d4d7de;--el-border-color-darker:#cdd0d6;--el-fill-color:#f0f2f5;--el-fill-color-light:#f5f7fa;--el-fill-color-lighter:#fafafa;--el-fill-color-extra-light:#fafcff;--el-fill-color-dark:#ebedf0;--el-fill-color-darker:#e6e8eb;--el-fill-color-blank:#fff;--el-box-shadow:0px 12px 32px 4px #0000000a, 0px 8px 20px #00000014;--el-box-shadow-light:0px 0px 12px #0000001f;--el-box-shadow-lighter:0px 0px 6px #0000001f;--el-box-shadow-dark:0px 16px 48px 16px #00000014, 0px 12px 32px #0000001f, 0px 8px 16px -8px #00000029;--el-disabled-bg-color:var(--el-fill-color-light);--el-disabled-text-color:var(--el-text-color-placeholder);--el-disabled-border-color:var(--el-border-color-light);--el-overlay-color:#000c;--el-overlay-color-light:#000000b3;--el-overlay-color-lighter:#00000080;--el-mask-color:#ffffffe6;--el-mask-color-extra-light:#ffffff4d;--el-border-width:1px;--el-border-style:solid;--el-border-color-hover:var(--el-text-color-disabled);--el-border:var(--el-border-width) var(--el-border-style) var(--el-border-color);--el-svg-monochrome-grey:var(--el-border-color)}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55, 0, .1, 1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55, 0, .1, 1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:top;transform:scaleY(1)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:bottom;transform:scaleY(1)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:0 0;transform:scale(1)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out, var(--el-transition-duration) padding-top ease-in-out, var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-leave-active,.el-collapse-transition-enter-active{transition:var(--el-transition-duration) max-height ease-in-out, var(--el-transition-duration) padding-top ease-in-out, var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out, var(--el-transition-duration) padding-left ease-in-out, var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55, 0, .1, 1)}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.el-icon{--color:inherit;fill:currentColor;width:1em;height:1em;color:var(--color);line-height:1em;font-size:inherit;justify-content:center;align-items:center;display:inline-flex;position:relative}.el-icon.is-loading{animation:2s linear infinite rotating}.el-icon svg{width:1em;height:1em}.el-button{--el-button-font-weight:var(--el-font-weight-primary);--el-button-border-color:var(--el-border-color);--el-button-bg-color:var(--el-fill-color-blank);--el-button-text-color:var(--el-text-color-regular);--el-button-disabled-text-color:var(--el-disabled-text-color);--el-button-disabled-bg-color:var(--el-fill-color-blank);--el-button-disabled-border-color:var(--el-border-color-light);--el-button-divide-border-color:#ffffff80;--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-color-primary-light-9);--el-button-hover-border-color:var(--el-color-primary-light-7);--el-button-active-text-color:var(--el-button-hover-text-color);--el-button-active-border-color:var(--el-color-primary);--el-button-active-bg-color:var(--el-button-hover-bg-color);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-hover-link-text-color:var(--el-text-color-secondary);--el-button-active-color:var(--el-text-color-primary);white-space:nowrap;cursor:pointer;height:32px;color:var(--el-button-text-color);text-align:center;box-sizing:border-box;line-height:1;font-weight:var(--el-button-font-weight);-webkit-user-select:none;user-select:none;vertical-align:middle;-webkit-appearance:none;background-color:var(--el-button-bg-color);border:var(--el-border);border-color:var(--el-button-border-color);outline:none;justify-content:center;align-items:center;transition:all .1s;display:inline-flex}.el-button:hover{color:var(--el-button-hover-text-color);border-color:var(--el-button-hover-border-color);background-color:var(--el-button-hover-bg-color);outline:none}.el-button:active{color:var(--el-button-active-text-color);border-color:var(--el-button-active-border-color);background-color:var(--el-button-active-bg-color);outline:none}.el-button:focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px;transition:outline-offset,outline}.el-button>span{align-items:center;display:inline-flex}.el-button+.el-button{margin-left:12px}.el-button{font-size:var(--el-font-size-base);border-radius:var(--el-border-radius-base);padding:8px 15px}.el-button.is-round{padding:8px 15px}.el-button::-moz-focus-inner{border:0}.el-button [class*=el-icon]+span{margin-left:6px}.el-button [class*=el-icon] svg{vertical-align:bottom}.el-button.is-plain{--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-fill-color-blank);--el-button-hover-border-color:var(--el-color-primary)}.el-button.is-active{color:var(--el-button-active-text-color);border-color:var(--el-button-active-border-color);background-color:var(--el-button-active-bg-color);outline:none}.el-button.is-disabled,.el-button.is-disabled:hover{color:var(--el-button-disabled-text-color);cursor:not-allowed;background-image:none;background-color:var(--el-button-disabled-bg-color);border-color:var(--el-button-disabled-border-color)}.el-button.is-loading{pointer-events:none;position:relative}.el-button.is-loading:before{z-index:1;pointer-events:none;content:"";border-radius:inherit;background-color:var(--el-mask-color-extra-light);position:absolute;top:-1px;bottom:-1px;left:-1px;right:-1px}.el-button.is-round{border-radius:var(--el-border-radius-round)}.el-button.is-dashed{--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-fill-color-blank);--el-button-hover-border-color:var(--el-color-primary);border-style:dashed}.el-button.is-circle{border-radius:50%;width:32px;padding:8px}.el-button.is-text{color:var(--el-button-text-color);background-color:#0000;border:0 solid #0000}.el-button.is-text.is-disabled{color:var(--el-button-disabled-text-color);background-color:#0000!important}.el-button.is-text:not(.is-disabled):hover{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled):focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px;transition:outline-offset,outline}.el-button.is-text:not(.is-disabled):active{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled).is-has-bg:hover{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg:active{background-color:var(--el-fill-color-dark)}.el-button__text--expand{letter-spacing:.3em;margin-right:-.3em}.el-button.is-link{color:var(--el-button-text-color);background:0 0;border-color:#0000;height:auto;padding:2px}.el-button.is-link:hover{color:var(--el-button-hover-link-text-color)}.el-button.is-link.is-disabled{color:var(--el-button-disabled-text-color);background-color:#0000!important;border-color:#0000!important}.el-button.is-link:not(.is-disabled):hover{background-color:#0000;border-color:#0000}.el-button.is-link:not(.is-disabled):active{color:var(--el-button-active-color);background-color:#0000;border-color:#0000}.el-button--text{color:var(--el-color-primary);background:0 0;border-color:#0000;padding-left:0;padding-right:0}.el-button--text.is-disabled{color:var(--el-button-disabled-text-color);background-color:#0000!important;border-color:#0000!important}.el-button--text:not(.is-disabled):hover{color:var(--el-color-primary-light-3);background-color:#0000;border-color:#0000}.el-button--text:not(.is-disabled):active{color:var(--el-color-primary-dark-2);background-color:#0000;border-color:#0000}.el-button__link--expand{letter-spacing:.3em;margin-right:-.3em}.el-button--primary{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-primary);--el-button-border-color:var(--el-color-primary);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-active-color:var(--el-color-primary-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-primary-light-5);--el-button-hover-bg-color:var(--el-color-primary-light-3);--el-button-hover-border-color:var(--el-color-primary-light-3);--el-button-active-bg-color:var(--el-color-primary-dark-2);--el-button-active-border-color:var(--el-color-primary-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-primary-light-5);--el-button-disabled-border-color:var(--el-color-primary-light-5)}.el-button--primary.is-plain,.el-button--primary.is-text,.el-button--primary.is-link{--el-button-text-color:var(--el-color-primary);--el-button-bg-color:var(--el-color-primary-light-9);--el-button-border-color:var(--el-color-primary-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-primary);--el-button-hover-border-color:var(--el-color-primary);--el-button-active-text-color:var(--el-color-white)}.el-button--primary.is-plain.is-disabled,.el-button--primary.is-plain.is-disabled:hover,.el-button--primary.is-plain.is-disabled:focus,.el-button--primary.is-plain.is-disabled:active,.el-button--primary.is-text.is-disabled,.el-button--primary.is-text.is-disabled:hover,.el-button--primary.is-text.is-disabled:focus,.el-button--primary.is-text.is-disabled:active,.el-button--primary.is-link.is-disabled,.el-button--primary.is-link.is-disabled:hover,.el-button--primary.is-link.is-disabled:focus,.el-button--primary.is-link.is-disabled:active{color:var(--el-color-primary-light-5);background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-8)}.el-button--primary.is-dashed{--el-button-text-color:var(--el-color-primary);--el-button-bg-color:var(--el-color-primary-light-9);--el-button-border-color:var(--el-color-primary-light-5);--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-color-primary-light-9);--el-button-hover-border-color:var(--el-color-primary-light-3);--el-button-active-text-color:var(--el-color-primary-dark-2);--el-button-active-bg-color:var(--el-color-primary-light-9);--el-button-active-border-color:var(--el-color-primary-dark-2)}.el-button--primary.is-dashed.is-disabled,.el-button--primary.is-dashed.is-disabled:hover,.el-button--primary.is-dashed.is-disabled:focus,.el-button--primary.is-dashed.is-disabled:active{color:var(--el-color-primary-light-5);background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-8)}.el-button--success{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-success);--el-button-border-color:var(--el-color-success);--el-button-outline-color:var(--el-color-success-light-5);--el-button-active-color:var(--el-color-success-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-success-light-5);--el-button-hover-bg-color:var(--el-color-success-light-3);--el-button-hover-border-color:var(--el-color-success-light-3);--el-button-active-bg-color:var(--el-color-success-dark-2);--el-button-active-border-color:var(--el-color-success-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-success-light-5);--el-button-disabled-border-color:var(--el-color-success-light-5)}.el-button--success.is-plain,.el-button--success.is-text,.el-button--success.is-link{--el-button-text-color:var(--el-color-success);--el-button-bg-color:var(--el-color-success-light-9);--el-button-border-color:var(--el-color-success-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-success);--el-button-hover-border-color:var(--el-color-success);--el-button-active-text-color:var(--el-color-white)}.el-button--success.is-plain.is-disabled,.el-button--success.is-plain.is-disabled:hover,.el-button--success.is-plain.is-disabled:focus,.el-button--success.is-plain.is-disabled:active,.el-button--success.is-text.is-disabled,.el-button--success.is-text.is-disabled:hover,.el-button--success.is-text.is-disabled:focus,.el-button--success.is-text.is-disabled:active,.el-button--success.is-link.is-disabled,.el-button--success.is-link.is-disabled:hover,.el-button--success.is-link.is-disabled:focus,.el-button--success.is-link.is-disabled:active{color:var(--el-color-success-light-5);background-color:var(--el-color-success-light-9);border-color:var(--el-color-success-light-8)}.el-button--success.is-dashed{--el-button-text-color:var(--el-color-success);--el-button-bg-color:var(--el-color-success-light-9);--el-button-border-color:var(--el-color-success-light-5);--el-button-hover-text-color:var(--el-color-success);--el-button-hover-bg-color:var(--el-color-success-light-9);--el-button-hover-border-color:var(--el-color-success-light-3);--el-button-active-text-color:var(--el-color-success-dark-2);--el-button-active-bg-color:var(--el-color-success-light-9);--el-button-active-border-color:var(--el-color-success-dark-2)}.el-button--success.is-dashed.is-disabled,.el-button--success.is-dashed.is-disabled:hover,.el-button--success.is-dashed.is-disabled:focus,.el-button--success.is-dashed.is-disabled:active{color:var(--el-color-success-light-5);background-color:var(--el-color-success-light-9);border-color:var(--el-color-success-light-8)}.el-button--warning{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-warning);--el-button-border-color:var(--el-color-warning);--el-button-outline-color:var(--el-color-warning-light-5);--el-button-active-color:var(--el-color-warning-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-warning-light-5);--el-button-hover-bg-color:var(--el-color-warning-light-3);--el-button-hover-border-color:var(--el-color-warning-light-3);--el-button-active-bg-color:var(--el-color-warning-dark-2);--el-button-active-border-color:var(--el-color-warning-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-warning-light-5);--el-button-disabled-border-color:var(--el-color-warning-light-5)}.el-button--warning.is-plain,.el-button--warning.is-text,.el-button--warning.is-link{--el-button-text-color:var(--el-color-warning);--el-button-bg-color:var(--el-color-warning-light-9);--el-button-border-color:var(--el-color-warning-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-warning);--el-button-hover-border-color:var(--el-color-warning);--el-button-active-text-color:var(--el-color-white)}.el-button--warning.is-plain.is-disabled,.el-button--warning.is-plain.is-disabled:hover,.el-button--warning.is-plain.is-disabled:focus,.el-button--warning.is-plain.is-disabled:active,.el-button--warning.is-text.is-disabled,.el-button--warning.is-text.is-disabled:hover,.el-button--warning.is-text.is-disabled:focus,.el-button--warning.is-text.is-disabled:active,.el-button--warning.is-link.is-disabled,.el-button--warning.is-link.is-disabled:hover,.el-button--warning.is-link.is-disabled:focus,.el-button--warning.is-link.is-disabled:active{color:var(--el-color-warning-light-5);background-color:var(--el-color-warning-light-9);border-color:var(--el-color-warning-light-8)}.el-button--warning.is-dashed{--el-button-text-color:var(--el-color-warning);--el-button-bg-color:var(--el-color-warning-light-9);--el-button-border-color:var(--el-color-warning-light-5);--el-button-hover-text-color:var(--el-color-warning);--el-button-hover-bg-color:var(--el-color-warning-light-9);--el-button-hover-border-color:var(--el-color-warning-light-3);--el-button-active-text-color:var(--el-color-warning-dark-2);--el-button-active-bg-color:var(--el-color-warning-light-9);--el-button-active-border-color:var(--el-color-warning-dark-2)}.el-button--warning.is-dashed.is-disabled,.el-button--warning.is-dashed.is-disabled:hover,.el-button--warning.is-dashed.is-disabled:focus,.el-button--warning.is-dashed.is-disabled:active{color:var(--el-color-warning-light-5);background-color:var(--el-color-warning-light-9);border-color:var(--el-color-warning-light-8)}.el-button--danger{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-danger);--el-button-border-color:var(--el-color-danger);--el-button-outline-color:var(--el-color-danger-light-5);--el-button-active-color:var(--el-color-danger-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-danger-light-5);--el-button-hover-bg-color:var(--el-color-danger-light-3);--el-button-hover-border-color:var(--el-color-danger-light-3);--el-button-active-bg-color:var(--el-color-danger-dark-2);--el-button-active-border-color:var(--el-color-danger-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-danger-light-5);--el-button-disabled-border-color:var(--el-color-danger-light-5)}.el-button--danger.is-plain,.el-button--danger.is-text,.el-button--danger.is-link{--el-button-text-color:var(--el-color-danger);--el-button-bg-color:var(--el-color-danger-light-9);--el-button-border-color:var(--el-color-danger-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-danger);--el-button-hover-border-color:var(--el-color-danger);--el-button-active-text-color:var(--el-color-white)}.el-button--danger.is-plain.is-disabled,.el-button--danger.is-plain.is-disabled:hover,.el-button--danger.is-plain.is-disabled:focus,.el-button--danger.is-plain.is-disabled:active,.el-button--danger.is-text.is-disabled,.el-button--danger.is-text.is-disabled:hover,.el-button--danger.is-text.is-disabled:focus,.el-button--danger.is-text.is-disabled:active,.el-button--danger.is-link.is-disabled,.el-button--danger.is-link.is-disabled:hover,.el-button--danger.is-link.is-disabled:focus,.el-button--danger.is-link.is-disabled:active{color:var(--el-color-danger-light-5);background-color:var(--el-color-danger-light-9);border-color:var(--el-color-danger-light-8)}.el-button--danger.is-dashed{--el-button-text-color:var(--el-color-danger);--el-button-bg-color:var(--el-color-danger-light-9);--el-button-border-color:var(--el-color-danger-light-5);--el-button-hover-text-color:var(--el-color-danger);--el-button-hover-bg-color:var(--el-color-danger-light-9);--el-button-hover-border-color:var(--el-color-danger-light-3);--el-button-active-text-color:var(--el-color-danger-dark-2);--el-button-active-bg-color:var(--el-color-danger-light-9);--el-button-active-border-color:var(--el-color-danger-dark-2)}.el-button--danger.is-dashed.is-disabled,.el-button--danger.is-dashed.is-disabled:hover,.el-button--danger.is-dashed.is-disabled:focus,.el-button--danger.is-dashed.is-disabled:active{color:var(--el-color-danger-light-5);background-color:var(--el-color-danger-light-9);border-color:var(--el-color-danger-light-8)}.el-button--info{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-info);--el-button-border-color:var(--el-color-info);--el-button-outline-color:var(--el-color-info-light-5);--el-button-active-color:var(--el-color-info-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-info-light-5);--el-button-hover-bg-color:var(--el-color-info-light-3);--el-button-hover-border-color:var(--el-color-info-light-3);--el-button-active-bg-color:var(--el-color-info-dark-2);--el-button-active-border-color:var(--el-color-info-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-info-light-5);--el-button-disabled-border-color:var(--el-color-info-light-5)}.el-button--info.is-plain,.el-button--info.is-text,.el-button--info.is-link{--el-button-text-color:var(--el-color-info);--el-button-bg-color:var(--el-color-info-light-9);--el-button-border-color:var(--el-color-info-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-info);--el-button-hover-border-color:var(--el-color-info);--el-button-active-text-color:var(--el-color-white)}.el-button--info.is-plain.is-disabled,.el-button--info.is-plain.is-disabled:hover,.el-button--info.is-plain.is-disabled:focus,.el-button--info.is-plain.is-disabled:active,.el-button--info.is-text.is-disabled,.el-button--info.is-text.is-disabled:hover,.el-button--info.is-text.is-disabled:focus,.el-button--info.is-text.is-disabled:active,.el-button--info.is-link.is-disabled,.el-button--info.is-link.is-disabled:hover,.el-button--info.is-link.is-disabled:focus,.el-button--info.is-link.is-disabled:active{color:var(--el-color-info-light-5);background-color:var(--el-color-info-light-9);border-color:var(--el-color-info-light-8)}.el-button--info.is-dashed{--el-button-text-color:var(--el-color-info);--el-button-bg-color:var(--el-color-info-light-9);--el-button-border-color:var(--el-color-info-light-5);--el-button-hover-text-color:var(--el-color-info);--el-button-hover-bg-color:var(--el-color-info-light-9);--el-button-hover-border-color:var(--el-color-info-light-3);--el-button-active-text-color:var(--el-color-info-dark-2);--el-button-active-bg-color:var(--el-color-info-light-9);--el-button-active-border-color:var(--el-color-info-dark-2)}.el-button--info.is-dashed.is-disabled,.el-button--info.is-dashed.is-disabled:hover,.el-button--info.is-dashed.is-disabled:focus,.el-button--info.is-dashed.is-disabled:active{color:var(--el-color-info-light-5);background-color:var(--el-color-info-light-9);border-color:var(--el-color-info-light-8)}.el-button--large{--el-button-size:40px;height:var(--el-button-size)}.el-button--large [class*=el-icon]+span{margin-left:8px}.el-button--large{font-size:var(--el-font-size-base);border-radius:var(--el-border-radius-base);padding:12px 19px}.el-button--large.is-round{padding:12px 19px}.el-button--large.is-circle{width:var(--el-button-size);padding:12px}.el-button--small{--el-button-size:24px;height:var(--el-button-size)}.el-button--small [class*=el-icon]+span{margin-left:4px}.el-button--small{border-radius:calc(var(--el-border-radius-base) - 1px);padding:5px 11px;font-size:12px}.el-button--small.is-round{padding:5px 11px}.el-button--small.is-circle{width:var(--el-button-size);padding:5px}.el-textarea{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;vertical-align:bottom;width:100%;font-size:var(--el-font-size-base);display:inline-block;position:relative}.el-textarea__inner{cursor:auto;resize:vertical;box-sizing:border-box;width:100%;line-height:1.5;font-size:inherit;color:var(--el-input-text-color,var(--el-text-color-regular));background-color:var(--el-input-bg-color,var(--el-fill-color-blank));-webkit-appearance:none;box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;border-radius:var(--el-input-border-radius,var(--el-border-radius-base));transition:var(--el-transition-box-shadow);background-image:none;border:none;padding:5px 11px;font-family:inherit;display:block;position:relative;overflow-y:auto}.el-textarea__inner.is-clearable{padding:5px 26px 5px 11px}.el-textarea__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-textarea__inner:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-textarea__inner:focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset;outline:none}.el-textarea__clear{color:var(--el-input-icon-color);cursor:pointer;font-size:14px;position:absolute;top:15px;right:11px;transform:translateY(-50%)}.el-textarea__clear:hover{color:var(--el-input-clear-hover-color)}.el-textarea .el-input__count{color:var(--el-color-info);background:var(--el-fill-color-blank);font-size:12px;line-height:14px;position:absolute;bottom:5px;right:10px}.el-textarea .el-input__count.is-outside{top:100%;right:0;bottom:unset;background:0 0;padding-top:2px;line-height:1;position:absolute}.el-textarea.is-disabled .el-textarea__inner{box-shadow:0 0 0 1px var(--el-disabled-border-color) inset;background-color:var(--el-disabled-bg-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-textarea.is-disabled .el-textarea__inner::placeholder{color:var(--el-text-color-placeholder)}.el-textarea.is-exceed .el-textarea__inner{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-textarea.is-exceed .el-input__count{color:var(--el-color-danger)}.el-input{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;--el-input-height:var(--el-component-size);font-size:var(--el-font-size-base);width:var(--el-input-width);line-height:var(--el-input-height);box-sizing:border-box;vertical-align:middle;display:inline-flex;position:relative}.el-input::-webkit-scrollbar{z-index:11;width:6px}.el-input::-webkit-scrollbar:horizontal{height:6px}.el-input::-webkit-scrollbar-thumb{background:var(--el-text-color-disabled);border-radius:5px;width:6px}.el-input::-webkit-scrollbar-corner{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track-piece{background:var(--el-fill-color-blank);width:6px}.el-input .el-input__clear,.el-input .el-input__password{color:var(--el-input-icon-color);cursor:pointer;font-size:14px}.el-input .el-input__clear:hover,.el-input .el-input__password:hover{color:var(--el-input-clear-hover-color)}.el-input .el-input__count{height:100%;color:var(--el-color-info);align-items:center;font-size:12px;display:inline-flex}.el-input .el-input__count .el-input__count-inner{background:var(--el-fill-color-blank);line-height:initial;padding-left:8px;display:inline-block}.el-input .el-input__count.is-outside{height:unset;padding-top:2px;position:absolute;top:100%;right:0}.el-input .el-input__count.is-outside .el-input__count-inner{background:0 0;padding-left:0;line-height:1}.el-input__wrapper{background-color:var(--el-input-bg-color,var(--el-fill-color-blank));border-radius:var(--el-input-border-radius,var(--el-border-radius-base));cursor:text;transition:var(--el-transition-box-shadow);box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;background-image:none;flex-grow:1;justify-content:center;align-items:center;padding:1px 11px;display:inline-flex;transform:translateZ(0)}.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-input{--el-input-inner-height:calc(var(--el-input-height,32px) - 2px)}.el-input__inner{-webkit-appearance:none;width:100%;color:var(--el-input-text-color,var(--el-text-color-regular));font-size:inherit;height:var(--el-input-inner-height);line-height:var(--el-input-inner-height);box-sizing:border-box;background:0 0;border:none;outline:none;flex-grow:1;padding:0}.el-input__inner:focus{outline:none}.el-input__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-input__inner[type=password]::-ms-reveal{display:none}.el-input__inner[type=number]{line-height:1}.el-input__prefix{white-space:nowrap;height:100%;line-height:var(--el-input-inner-height);text-align:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));transition:all var(--el-transition-duration);pointer-events:none;flex-wrap:nowrap;flex-shrink:0;display:inline-flex}.el-input__prefix-inner{pointer-events:all;justify-content:center;align-items:center;display:inline-flex}.el-input__prefix-inner>:last-child{margin-right:8px}.el-input__prefix-inner>:first-child,.el-input__prefix-inner>:first-child.el-input__icon{margin-left:0}.el-input__suffix{white-space:nowrap;height:100%;line-height:var(--el-input-inner-height);text-align:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));transition:all var(--el-transition-duration);pointer-events:none;flex-wrap:nowrap;flex-shrink:0;display:inline-flex}.el-input__suffix-inner{pointer-events:all;justify-content:center;align-items:center;display:inline-flex}.el-input__suffix-inner>:first-child{margin-left:8px}.el-input .el-input__icon{height:inherit;line-height:inherit;transition:all var(--el-transition-duration);justify-content:center;align-items:center;margin-left:8px;display:flex}.el-input .el-input__clear{transition:color var(--el-transition-duration)}.el-input__validateIcon{pointer-events:none}.el-input.is-active .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-color, ) inset}.el-input.is-disabled{cursor:not-allowed}.el-input.is-disabled .el-input__wrapper{background-color:var(--el-disabled-bg-color);cursor:not-allowed;box-shadow:0 0 0 1px var(--el-disabled-border-color) inset}.el-input.is-disabled .el-input__inner{color:var(--el-disabled-text-color);-webkit-text-fill-color:var(--el-disabled-text-color);cursor:not-allowed}.el-input.is-disabled .el-input__inner::placeholder{color:var(--el-text-color-placeholder)}.el-input.is-disabled .el-input__icon{cursor:not-allowed}.el-input.is-disabled .el-input__prefix-inner,.el-input.is-disabled .el-input__suffix-inner{pointer-events:none}.el-input.is-exceed .el-input__wrapper{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-input.is-exceed .el-input__suffix .el-input__count{color:var(--el-color-danger)}.el-input--large{--el-input-height:var(--el-component-size-large);font-size:14px}.el-input--large .el-input__wrapper{padding:1px 15px}.el-input--large{--el-input-inner-height:calc(var(--el-input-height,40px) - 2px)}.el-input--small{--el-input-height:var(--el-component-size-small);font-size:12px}.el-input--small .el-input__wrapper{padding:1px 7px}.el-input--small{--el-input-inner-height:calc(var(--el-input-height,24px) - 2px)}.el-input-group{align-items:stretch;width:100%;display:inline-flex}.el-input-group__append,.el-input-group__prepend{background-color:var(--el-fill-color-light);color:var(--el-color-info);border-radius:var(--el-input-border-radius);white-space:nowrap;justify-content:center;align-items:center;min-height:100%;padding:0 20px;display:inline-flex;position:relative}.el-input-group__append:focus,.el-input-group__prepend:focus{outline:none}.el-input-group__append .el-select,.el-input-group__append .el-button,.el-input-group__prepend .el-select,.el-input-group__prepend .el-button{flex:1;margin:0 -20px;display:inline-block}.el-input-group__append button.el-button,.el-input-group__append button.el-button:hover,.el-input-group__append div.el-select .el-select__wrapper,.el-input-group__append div.el-select:hover .el-select__wrapper,.el-input-group__prepend button.el-button,.el-input-group__prepend button.el-button:hover,.el-input-group__prepend div.el-select .el-select__wrapper,.el-input-group__prepend div.el-select:hover .el-select__wrapper{color:inherit;background-color:#0000;border-color:#0000}.el-input-group__append .el-button,.el-input-group__append .el-input,.el-input-group__prepend .el-button,.el-input-group__prepend .el-input{font-size:inherit}.el-input-group__prepend{box-shadow:1px 0 0 0 var(--el-input-border-color) inset, 0 1px 0 0 var(--el-input-border-color) inset, 0 -1px 0 0 var(--el-input-border-color) inset;border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group__append{box-shadow:0 1px 0 0 var(--el-input-border-color) inset, 0 -1px 0 0 var(--el-input-border-color) inset, -1px 0 0 0 var(--el-input-border-color) inset;border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.el-input-group--prepend>.el-input__wrapper{border-top-left-radius:0;border-bottom-left-radius:0}.el-input-group--prepend .el-input-group__prepend .el-select .el-select__wrapper{box-shadow:1px 0 0 0 var(--el-input-border-color) inset, 0 1px 0 0 var(--el-input-border-color) inset, 0 -1px 0 0 var(--el-input-border-color) inset;border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group--append>.el-input__wrapper{border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group--append .el-input-group__append .el-select .el-select__wrapper{box-shadow:0 1px 0 0 var(--el-input-border-color) inset, 0 -1px 0 0 var(--el-input-border-color) inset, -1px 0 0 0 var(--el-input-border-color) inset;border-top-left-radius:0;border-bottom-left-radius:0}.el-input-hidden{display:none!important}.el-main{--el-main-padding:20px;box-sizing:border-box;padding:var(--el-main-padding);flex:auto;display:block;overflow:auto}
.serene-select[data-v-3b40b3b1] { position: relative; min-width: 0; width: 100%;
}
.serene-select.is-open[data-v-3b40b3b1] { z-index: 30;
}
.serene-select .serene-select-trigger[data-v-3b40b3b1] { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; padding: 11px 13px; min-height: 42px; border: 1px solid #e2e8f0; border-radius: 12px; background: #f8fafc; color: #334155; font: inherit; font-size: 13px; font-weight: 600; text-align: left; cursor: pointer; transition: border-color .2s, box-shadow .2s, background .2s;
}
.serene-select-trigger span[data-v-3b40b3b1] { overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
}
.serene-select-trigger svg[data-v-3b40b3b1] { color: #94a3b8; flex-shrink: 0; transition: transform .2s;
}
.is-open .serene-select-trigger svg[data-v-3b40b3b1] { transform: rotate(180deg);
}
.serene-select .serene-select-trigger[data-v-3b40b3b1]:hover:not(:disabled), .serene-select .serene-select-trigger[data-v-3b40b3b1]:focus-visible, .is-open .serene-select-trigger[data-v-3b40b3b1] { border-color: #6ee7b7; box-shadow: 0 0 0 3px #10b98112; background: #fff; outline: none;
}
.serene-select .serene-select-menu[data-v-3b40b3b1] { position: absolute; top: calc(100% + 6px); left: 0; right: 0; min-width: 100%; padding: 6px; box-sizing: border-box; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; border: 1px solid #e2e8f0; border-radius: 14px; background: #fff; box-shadow: 0 12px 30px #0f172a14; transform-origin: top;
}
.opens-above .serene-select-menu[data-v-3b40b3b1] { top: auto; bottom: calc(100% + 6px); transform-origin: bottom;
}
.serene-select-menu button[data-v-3b40b3b1] { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; padding: 10px; border: 0; border-radius: 9px; background: #fff; color: #64748b; font: inherit; font-size: 13px; text-align: left; cursor: pointer;
}
.serene-select-menu button[data-active=true][data-v-3b40b3b1] { background: #f1f5f9;
}
.serene-select-menu button[aria-selected=true][data-v-3b40b3b1] { color: #047857; background: #ecfdf5; font-weight: 600;
}
.serene-select-menu svg[data-v-3b40b3b1] { color: #10b981; flex-shrink: 0;
}
.serene-select button[data-v-3b40b3b1]:disabled { opacity: .45; cursor: not-allowed;
}
.serene-dropdown-enter-active[data-v-3b40b3b1], .serene-dropdown-leave-active[data-v-3b40b3b1] { transition: opacity .16s, transform .16s;
}
.serene-dropdown-enter-from[data-v-3b40b3b1], .serene-dropdown-leave-to[data-v-3b40b3b1] { opacity: 0; transform: translateY(-4px) scaleY(.95);
}
@media(prefers-reduced-motion: reduce) {
.serene-select[data-v-3b40b3b1] *, .serene-dropdown-enter-active[data-v-3b40b3b1], .serene-dropdown-leave-active[data-v-3b40b3b1] { transition: none !important;
}
}

/* Keep legacy direct-child rules from styling Element Plus body wrappers. */
.admin-element-theme .admin-stat-card[data-v-db4e32dd],
.admin-element-theme .admin-post-card[data-v-db4e32dd] { padding: 0;
}
.admin-element-theme .admin-stat-card[data-v-db4e32dd] .el-card__body { display: block;
}
.admin-stat-value[data-v-db4e32dd] { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px;
}
.admin-element-theme .admin-console-search[data-v-db4e32dd] { padding: 0; border: 0; background: transparent;
}
.admin-console-search[data-v-db4e32dd] .el-input__inner { padding: 0; color: var(--el-text-color-regular);
}
.admin-console-search[data-v-db4e32dd] .el-input__prefix svg { width: 18px; height: 18px;
}
.admin-element-theme .admin-console-search > .el-button[data-v-db4e32dd] { padding: 8px 16px; color: var(--el-color-white); background: var(--el-color-primary);
}
.admin-profile-trigger[data-v-db4e32dd] .el-avatar { width: 32px; height: 32px;
}
.admin-post-card header[data-v-db4e32dd],
.admin-post-card footer[data-v-db4e32dd] { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px;
}
.admin-post-card header > div[data-v-db4e32dd],
.admin-post-card footer > div[data-v-db4e32dd] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
}
.admin-post-card footer[data-v-db4e32dd] { padding-top: 12px; border-top: 1px solid var(--el-border-color-light); color: var(--el-text-color-secondary);
}
.admin-post-card footer span[data-v-db4e32dd] { display: inline-flex; align-items: center; gap: 4px;
}
.admin-post-card footer svg[data-v-db4e32dd],
.admin-post-card .el-tag svg[data-v-db4e32dd] { width: 14px; height: 14px;
}
.admin-element-theme .admin-post-card h3[data-v-db4e32dd] { color: var(--el-text-color-primary); overflow-wrap: anywhere;
}
.admin-element-theme .admin-post-card p[data-v-db4e32dd] { color: var(--el-text-color-secondary);
}

  /* 样式保持不变 */
.back-to-top[data-v-6f176eef] {
    position: fixed;
    right: 20px;
    bottom: 70px;
    width: 40px;
    height: 40px;
    background-color: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    box-shadow: 0 2px 12px rgba(0,0,0,0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 1000;
}
.fade-enter-active[data-v-6f176eef], .fade-leave-active[data-v-6f176eef] { transition: opacity 0.3s ease;
}
.fade-enter-from[data-v-6f176eef], .fade-leave-to[data-v-6f176eef] { opacity: 0;
}
.back-to-top .icon[data-v-6f176eef] { width: 24px; height: 24px; color: #000000;
}
  
.notification-bar[data-v-7c572b65] {
  display: flex;
  align-items: center;
  padding: 8px 15px;
  background-color: rgba(0, 0, 0, 0.5); /* 您截图中的灰色背景 */
  color: white;
  border-radius: 20px; /* 圆角看起来更像截图 */
  cursor: pointer;
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  transition: all 0.3s ease;
  width: fit-content; /* 让宽度自适应内容 */
  margin-top: 10px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); /* 增加阴影 */
  border: 1px solid rgba(255, 255, 255, 0.1); /* 增加一个细微的边框 */
}
.notification-bar[data-v-7c572b65]:hover {
  background-color: rgba(0, 0, 0, 0.7);
}
.actor-avatar[data-v-7c572b65] {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  margin-right: 10px;
  object-fit: cover; /* 确保图片不变形 */
}

.modal-overlay[data-v-3cd1f2cc] { z-index: 4000;
}
.notification-modal-content[data-v-3cd1f2cc] { position: fixed; top: 0; left: 0; right: 0; bottom: 0; max-width: 600px; margin: 0 auto; background: #f1f1f1; display: flex; flex-direction: column; height: 100%;
}
.modal-header[data-v-3cd1f2cc] { display: flex; justify-content: space-between; align-items: center; padding: 10px 15px; background: white; border-bottom: 1px solid #dcdcdc; flex-shrink: 0;
}
.back-icon[data-v-3cd1f2cc], .clear-btn[data-v-3cd1f2cc], .read-all-btn[data-v-3cd1f2cc] { cursor: pointer; padding: 5px;
}
.notification-header-actions[data-v-3cd1f2cc] { display: flex; align-items: center; gap: 8px;
}
.read-all-btn[data-v-3cd1f2cc], .clear-btn[data-v-3cd1f2cc] { color: #64748b; font-size: 12px; background: transparent; border: 0;
}
.read-all-btn[data-v-3cd1f2cc]:disabled { color: #cbd5e1; cursor: not-allowed;
}
.notification-item.is-read[data-v-3cd1f2cc] { opacity: 0.72;
}
.modal-body[data-v-3cd1f2cc] { flex-grow: 1; overflow-y: auto; -webkit-overflow-scrolling: touch; position: relative;
}
.pull-to-refresh-indicator[data-v-3cd1f2cc] { position: absolute; top: -50px; left: 0; right: 0; height: 50px; display: flex; align-items: center; justify-content: center; gap: 10px; font-size: 14px; color: #888;
}
.pull-to-refresh-indicator .arrow[data-v-3cd1f2cc] { display: inline-block; transition: transform 0.2s;
}
.pull-to-refresh-indicator .arrow.is-refreshing[data-v-3cd1f2cc] { animation: spin-3cd1f2cc 1s linear infinite;
}
@keyframes spin-3cd1f2cc {
from { transform: rotate(0deg);
}
to { transform: rotate(360deg);
}
}

/* --- 【核心修改】 --- */
.notification-item-wrapper[data-v-3cd1f2cc] {
  background: white;
  border-bottom: 1px solid #f1f1f1;
}
.notification-item[data-v-3cd1f2cc] {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 0 12px;
  padding: 15px 15px 0 15px; /* 移除底部 padding */
  align-items: flex-start;
}
.notification-item.is-actionable[data-v-3cd1f2cc] { cursor: pointer;
}
.notification-item.is-actionable[data-v-3cd1f2cc]:hover { background-color: #f9f9f9;
}
.notification-item-wrapper:has(.notification-item.is-actionable:hover) .delete-action-wrapper[data-v-3cd1f2cc] {
  background-color: #f9f9f9; /* 悬浮时，删除按钮的背景也一起变色 */
}

/* Grid 子项 */
.actor-avatar[data-v-3cd1f2cc] { grid-column: 1 / 2; width: 40px; height: 40px; border-radius: 5px;
}
.item-content[data-v-3cd1f2cc] { grid-column: 2 / 3;
}
.post-preview[data-v-3cd1f2cc] { grid-column: 3 / 4; padding-top: 25px;
}

/* 内容样式 */
.actor-name[data-v-3cd1f2cc] { font-weight: bold;
}
.action-text[data-v-3cd1f2cc] { font-size: 14px; margin: 4px 0; color: #333; word-break: break-all;
}
.heart-icon[data-v-3cd1f2cc], .request-icon[data-v-3cd1f2cc] { font-size: 12px;
}
.timestamp[data-v-3cd1f2cc] { font-size: 12px; color: #888; margin-top: 8px;
}

/* 详情按钮 */
.details-btn[data-v-3cd1f2cc] { background-color: #f0f0f0; border: 1px solid #e0e0e0; color: #666; padding: 4px 10px; border-radius: 15px; font-size: 12px; cursor: pointer; white-space: nowrap;
}
.details-btn[data-v-3cd1f2cc]:hover { background-color: #e5e5e5;
}

/* 删除按钮 */
.delete-action-wrapper[data-v-3cd1f2cc] {
  padding: 10px 15px 10px 15px; /* 内边距 */
  transition: background-color 0.2s;
}
.delete-btn[data-v-3cd1f2cc] { font-size: 14px; padding: 8px 0; width: 100%; background-color: #f5f5f5; color: #888; border: none; border-radius: 6px; cursor: pointer; text-align: center; transition: all 0.2s ease;
}
.delete-btn[data-v-3cd1f2cc]:hover { background-color: #e9e9e9; color: #c70000;
}
.delete-btn[data-v-3cd1f2cc]:active { transform: scale(0.98);
}

/* 失效/加载状态 */
.loading[data-v-3cd1f2cc], .empty[data-v-3cd1f2cc], .loading-indicator[data-v-3cd1f2cc] { text-align: center; padding: 20px; color: #888; font-size: 14px;
}
.notification-item-wrapper[data-v-3cd1f2cc]:has(.notification-item.is-invalid) { opacity: 0.5; text-decoration: line-through;
}
.notification-item.is-invalid[data-v-3cd1f2cc] { cursor: not-allowed;
}
.notification-item.is-invalid[data-v-3cd1f2cc]:hover { background-color: transparent;
}
.notification-item.is-invalid + .delete-action-wrapper[data-v-3cd1f2cc] { display: none;
} /* 如果通知无效，也隐藏删除按钮 */
.notification-item.is-invalid .details-btn[data-v-3cd1f2cc] { pointer-events: none; background-color: #eee; color: #aaa;
}

.comment-drawer-overlay { position:fixed;inset:0;z-index:22000;display:flex;align-items:flex-end;justify-content:center;background:rgba(15,23,30,.42);
}
.comment-drawer-panel { --drawer-paper:#fff;--drawer-ink:#26343d;--drawer-muted:#687885;--drawer-line:#e5ebed;background:var(--drawer-paper);color:var(--drawer-ink);width:min(100%,620px);max-height:85dvh;display:flex;flex-direction:column;border-radius:22px 22px 0 0;box-shadow:0 -12px 40px rgba(18,34,42,.16);padding-bottom:env(safe-area-inset-bottom);outline:none;
}
body.site-dark-mode .comment-drawer-panel { --drawer-paper:#1d252c;--drawer-ink:#e5ecf0;--drawer-muted:#acb8c2;--drawer-line:#35414a;
}
.comment-drawer-handle { width:32px;height:4px;border-radius:3px;background:var(--drawer-line);margin:10px auto 0;flex:none;
}
.comment-drawer-header { display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px 16px;border-bottom:1px solid var(--drawer-line);
}
.comment-drawer-header>div { min-width:0;
}
.comment-drawer-header h2 { margin:0;font-size:18px;font-weight:650;
}
.comment-drawer-header h2 span { margin-left:5px;font-size:13px;color:var(--drawer-muted);font-weight:400;
}
.comment-drawer-header p { margin:5px 0 0;font-size:12px;color:var(--drawer-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.comment-drawer-close { display:grid;place-items:center;flex:none;width:40px;height:40px;border:1px solid var(--drawer-line);border-radius:50%;background:transparent;color:var(--drawer-muted);cursor:pointer;
}
.comment-drawer-close svg { width:19px;height:19px;
}
.comment-drawer-content { padding:16px 20px;overflow:auto;overscroll-behavior:contain;min-height:150px;
}
.comment-drawer-panel .interaction-section { margin:0 !important;padding:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important;
}
.comment-drawer-panel .interaction-summary { display:none;
}
.comment-drawer-panel .comments { margin:0;padding:0;
}
.comment-drawer-panel .comment-body { background:transparent;border:0;color:var(--drawer-ink);
}
.comment-drawer-panel .comment-text,.comment-drawer-panel .commenter { color:var(--drawer-ink);
}
.comment-drawer-composer { flex:none;padding:12px 16px;border-top:1px solid var(--drawer-line);
}
.comment-drawer-panel .comment-form { display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 !important;padding:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important;
}
.comment-drawer-panel .comment-reply-context { flex-basis:100%;font-size:12px;color:var(--drawer-muted);display:flex;justify-content:space-between;
}
.comment-drawer-panel .comment-input-shell { flex:1;min-width:0;background:transparent;border:1px solid var(--drawer-line);border-radius:12px;
}
.comment-drawer-panel .comment-input-shell input { box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;background:transparent;color:var(--drawer-ink);border:0;outline:none;font-size:16px;
}
.comment-drawer-panel .comment-submit-button { display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:12px;background:#098667;color:#fff;cursor:pointer;
}
.comment-drawer-panel .comment-submit-button svg { width:19px;height:19px;
}
.comment-drawer-panel .comment-submit-button:disabled { opacity:.4;cursor:default;
}
.comment-drawer-panel button:focus-visible,.comment-drawer-panel .comment-input-shell:focus-within { outline:2px solid #10a583;outline-offset:2px;
}
.comment-sheet-empty { color:var(--drawer-muted);text-align:center;padding:35px 0;font-size:13px;
}
.comment-sheet-login { width:100%;min-height:44px;background:#098667;border:0;border-radius:12px;color:white;cursor:pointer;
}
.comment-drawer-enter-active,.comment-drawer-leave-active { transition:opacity .25s ease;
}
.comment-drawer-enter-active .comment-drawer-panel,.comment-drawer-leave-active .comment-drawer-panel { transition:transform .3s cubic-bezier(.22,.7,.2,1);
}
.comment-drawer-enter-from,.comment-drawer-leave-to { opacity:0;
}
.comment-drawer-enter-from .comment-drawer-panel,.comment-drawer-leave-to .comment-drawer-panel { transform:translateY(100%);
}
@media(max-width:600px) {
.comment-drawer-header { padding:12px 16px;
}.comment-drawer-content { padding:16px;
}
}
@media(prefers-reduced-motion:reduce) {
.comment-drawer-enter-active,.comment-drawer-leave-active,.comment-drawer-enter-active .comment-drawer-panel,.comment-drawer-leave-active .comment-drawer-panel { transition:none;
}
}
body .comment-drawer-panel .comment-body { background:transparent !important;border-color:var(--drawer-line) !important;box-shadow:none !important;
}
body .comment-drawer-panel .comment-text,body .comment-drawer-panel .commenter { color:var(--drawer-ink) !important;
}
body .comment-drawer-panel .comment-input-shell,body .comment-drawer-panel .comment-input-shell input { background:transparent !important;color:var(--drawer-ink) !important;
}
body .comment-drawer-panel .comment-input-shell input::placeholder { color:var(--drawer-muted);
}

/* A quiet discussion sheet: media context, open comments, anchored composer. */
.comment-drawer-overlay { background:rgba(11,19,25,.56);
}
.comment-drawer-panel { --drawer-soft:#f3f6f7;width:min(100%,660px);border:1px solid var(--drawer-line);border-bottom:0;border-radius:28px 28px 0 0;box-shadow:0 -16px 70px rgba(8,23,31,.24);
}
body.site-dark-mode .comment-drawer-panel { --drawer-paper:#182127;--drawer-soft:#202d35;--drawer-line:#2d3c45;--drawer-muted:#9eafb9;
}
.comment-drawer-handle { margin-top:12px;width:36px;height:4px;
}
.comment-drawer-header { padding:20px 24px;border-bottom:0;align-items:flex-start;
}
.comment-drawer-context { display:flex;align-items:center;gap:13px;min-width:0;
}
.comment-drawer-context>div { min-width:0;
}
.comment-drawer-cover { width:42px;height:58px;object-fit:cover;border-radius:7px;box-shadow:0 2px 6px rgba(0,0,0,.1);
}
.comment-drawer-header .comment-drawer-context-label { margin:0 0 6px;color:var(--drawer-muted);font-size:12px;
}
.comment-drawer-header h2 { display:flex;align-items:center;gap:8px;font-size:24px;font-weight:700;letter-spacing:-.6px;
}
.comment-drawer-header h2 span { display:inline-grid;place-items:center;min-width:24px;height:24px;box-sizing:border-box;padding:0 7px;border-radius:7px;background:var(--drawer-soft);font-size:12px;margin:0;letter-spacing:0;
}
.comment-drawer-close { width:36px;height:36px;background:var(--drawer-soft);border:0;
}
.comment-drawer-content { min-height:180px;padding:4px 24px 24px;
}
body .comment-drawer-panel .comment-row-root { padding:18px 0;gap:12px;
}
body .comment-drawer-panel .comment-thread + .comment-thread { border-top:1px solid var(--drawer-line);
}
body .comment-drawer-panel .comment-avatar { width:34px;height:34px;flex:0 0 34px;border:0;box-shadow:none;border-radius:50%;background:var(--drawer-soft);color:var(--drawer-muted);font-size:13px;
}
body .comment-drawer-panel .comment-body { padding:0 !important;border:0 !important;border-radius:0 !important;
}
body .comment-drawer-panel .commenter { font-size:13px;font-weight:650;
}
body .comment-drawer-panel .comment-text { font-size:14px;line-height:1.8;margin:8px 0 10px;
}
body .comment-drawer-panel .comment-author-badge { background:var(--drawer-soft);color:var(--drawer-muted);border-radius:4px;font-size:10px;padding:2px 5px;
}
body .comment-drawer-panel .comment-time { color:var(--drawer-muted);font-size:11px;
}
body .comment-drawer-panel .comment-side-action { opacity:.65;
}
.comment-drawer-composer { margin:0 16px 16px;padding:10px;background:var(--drawer-soft);border:1px solid var(--drawer-line);border-radius:16px;
}
body .comment-drawer-panel .comment-input-shell { border:0;background:transparent;
}
.comment-drawer-panel .comment-submit-button { background:#087e65;border-radius:12px;box-shadow:0 2px 5px rgba(7,126,101,.12);
}
.comment-drawer-panel .comment-submit-button:disabled { opacity:1;background:var(--drawer-line);color:var(--drawer-muted);box-shadow:none;
}
body .comment-drawer-panel .comment-input-shell input { padding-left:4px;
}
.comment-drawer-panel .comment-reply-context { padding:2px 6px 6px;
}
.comment-sheet-empty { margin:0;padding:60px 12px;font-size:14px;line-height:1.7;
}
@media(max-width:600px) {
.comment-drawer-header { padding:18px 18px 14px;
}
.comment-drawer-header h2 { font-size:22px;
}
.comment-drawer-content { padding:4px 18px 18px;
}
.comment-drawer-composer { margin:0 12px 12px;
}
}
.comment-drawer-content { scrollbar-width:thin;scrollbar-color:var(--drawer-line) var(--drawer-paper);
}
body.site-dark-mode .comment-drawer-panel { color-scheme:dark;
}
body .comment-drawer-panel .comment-reply-context { background:transparent !important;border:0 !important;color:var(--drawer-muted) !important;
}
body .comment-drawer-panel .comment-reply-context button { background:transparent !important;color:var(--drawer-accent) !important;
}
/* Keep nested discussions and pagination on the same theme as the sheet. */
.comment-drawer-panel { --drawer-accent:#087e65;
}
body.site-dark-mode .comment-drawer-panel { --drawer-accent:#70cfb6;
}
body .comment-drawer-panel .replies { margin:0 0 18px 46px;padding-left:12px;border-color:var(--drawer-line) !important;
}
body .comment-drawer-panel .reply-item .reply-body { background:var(--drawer-soft) !important;border:1px solid var(--drawer-line) !important;border-radius:12px;padding:12px 12px 38px;box-shadow:none !important;
}
body .comment-drawer-panel .reply-item .comment-side-action { top:auto;bottom:5px;right:8px;transform:none;
}
body .comment-drawer-panel .reply-body .comment-text { margin:6px 0 0;
}
body .comment-drawer-panel .reply-marker { color:var(--drawer-muted) !important;font-weight:400;
}
body .comment-drawer-panel .reply-target { color:var(--drawer-accent) !important;
}
body .comment-drawer-panel .load-more-comments { min-height:44px;margin-top:16px;background:var(--drawer-soft) !important;border:1px solid var(--drawer-line) !important;border-radius:12px;color:var(--drawer-ink) !important;font-weight:500;box-shadow:none !important;
}
body .comment-drawer-panel .load-more-comments-count,
body .comment-drawer-panel .load-more-comments-arrow { color:var(--drawer-muted) !important;font-weight:400;
}
body .comment-drawer-panel .load-more-comments:hover { color:var(--drawer-accent) !important;border-color:var(--drawer-accent) !important;
}
body .comment-drawer-panel .comment-action-button,
body .comment-drawer-panel .comment-reply-action { color:var(--drawer-muted);
}
body .comment-drawer-panel .comment-action-button:hover,
body .comment-drawer-panel .comment-reply-action:hover { background:var(--drawer-soft) !important;color:var(--drawer-accent);
}
body .comment-drawer-panel .comment-delete-button:hover { color:#e76d7d;
}
body .comment-drawer-panel .comment-like-button.is-liked { color:#e76d7d;
}
body .comment-drawer-panel .comment-edit-form textarea,
body .comment-drawer-panel .comment-edit-actions button { background:var(--drawer-paper) !important;color:var(--drawer-ink) !important;border-color:var(--drawer-line) !important;
}
body .comment-drawer-panel .comment-edit-actions { color:var(--drawer-muted);
}
body .comment-drawer-panel .comment-edit-actions .is-primary { background:#087e65 !important;color:#fff !important;border-color:#087e65 !important;
}
@media(max-width:600px) {
body .comment-drawer-panel .replies { margin-left:20px;padding-left:10px;
}
}
/* Movie card layout. Feed tokens are inherited from its containing post. */
.movie-card-vertical.compact-card[data-v-6af4b1b2] {
  --compact-text:var(--feed-ink, #25352f);
  --compact-muted:var(--feed-muted, #66736e);
  --compact-surface:linear-gradient(115deg,rgba(var(--site-media-rgb,148,163,184),var(--preview-tint,.10)),rgba(var(--site-media-rgb,148,163,184),.025) 65%,transparent);
  position:relative;
  display:grid !important;
  grid-template-columns:58px minmax(0,1fr) auto;
  align-items:start;
  gap:10px;
  width:100%;
  height:auto;
  min-height:0;
  box-sizing:border-box;
  margin:0 !important;
  padding:12px 14px 40px !important;
  overflow:visible !important;
  isolation:isolate;
  color:var(--compact-text) !important;
  background:var(--compact-surface) !important;
  border:0 !important;
  border-radius:15px 15px 0 0 !important;
  box-shadow:none !important;
  transform:none !important;
}
.movie-card-vertical.compact-card[data-v-6af4b1b2]::before,
.movie-card-vertical.compact-card[data-v-6af4b1b2]::after { display:none !important;
}
.compact-card .cover-bg.compact-poster[data-v-6af4b1b2] {
  position:relative;inset:auto;display:block;width:58px;height:84px;min-height:0;
  padding:0;border:0;border-radius:8px;overflow:hidden;cursor:pointer;
  background:var(--feed-line,#e5ebe7);box-shadow:0 2px 6px #14291d14;
}
.compact-card .compact-poster img[data-v-6af4b1b2] { display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit;transform:none;
}
.compact-body[data-v-6af4b1b2] { min-width:0;display:grid;gap:7px;padding-top:1px;
}
.compact-heading[data-v-6af4b1b2] { display:flex;flex-wrap:wrap;align-items:center;gap:7px;min-width:0;
}
.compact-card .share-title.compact-title[data-v-6af4b1b2] { flex:0 1 auto;min-width:0;max-width:100%;margin:0;padding:0;color:var(--compact-text) !important;font-size:16px;font-weight:650;line-height:1.4;letter-spacing:.1px;white-space:normal;overflow-wrap:anywhere;
}
.compact-pin[data-v-6af4b1b2] { color:var(--compact-muted);font-size:10px;white-space:nowrap;
}
.compact-rating[data-v-6af4b1b2] { display:flex;align-items:center;gap:6px;flex:0 0 auto;min-height:16px;
}
.compact-douban[data-v-6af4b1b2] { display:grid;place-items:center;width:15px;height:15px;flex:none;border-radius:3px;background:#159d52;color:#fff;font-size:11px;font-weight:700;line-height:1;
}
.is-unrated .compact-douban[data-v-6af4b1b2] { color:var(--compact-muted);background:var(--feed-soft,#edf2ef);
}
.compact-card .rating-score.compact-score[data-v-6af4b1b2] { margin:0;padding:0;color:#9a650e;font-size:12px;font-weight:650;line-height:1.4;white-space:nowrap;font-variant-numeric:tabular-nums;
}
.compact-card .is-unrated .compact-score[data-v-6af4b1b2] { color:var(--compact-muted);font-size:11px;font-weight:400;
}
.compact-stars[data-v-6af4b1b2] { position:relative;display:block;width:58px;height:11px;
}
.compact-stars-base[data-v-6af4b1b2],.compact-stars-fill[data-v-6af4b1b2] { position:absolute;inset:0;display:flex;gap:2px;overflow:hidden;color:#d8ddd7;
}
.compact-stars-fill[data-v-6af4b1b2] { color:#c7922d;
}
.compact-stars svg[data-v-6af4b1b2] { flex:none;width:10px;height:11px;fill:currentColor;stroke-width:0;
}
.compact-card .details-row.compact-credits[data-v-6af4b1b2] { display:grid;gap:1px;min-width:0;margin:0;padding:0;overflow:hidden;color:var(--compact-muted) !important;font-size:11px;line-height:1.6;
}
.cast-label[data-v-6af4b1b2] { color:var(--feed-muted,#66736e);
}
.cast-label[data-v-6af4b1b2] { flex:none;
}
.compact-controls[data-v-6af4b1b2] { display:flex;align-items:center;gap:8px;
}
.compact-play[data-v-6af4b1b2],.compact-menu[data-v-6af4b1b2] .actions-btn { position:relative;display:grid;place-items:center;width:34px;height:34px;padding:8px;border:0;border-radius:50%;background:var(--feed-soft,#edf2ef);color:var(--compact-muted);cursor:pointer;box-shadow:none;transition:background .16s ease,color .16s ease;
}
.compact-bookmark[data-v-6af4b1b2] { color:var(--feed-accent,#087f63);background:var(--feed-accent-soft,#e8f4ee);
}
.compact-bookmark.is-bookmarked[data-v-6af4b1b2] { color:#fff;background:var(--feed-accent,#087f63);
}
.compact-play svg[data-v-6af4b1b2] { width:17px;height:17px;fill:none;stroke-width:1.7;
}
.compact-bookmark.is-bookmarked svg[data-v-6af4b1b2] { fill:currentColor;
}
.compact-menu[data-v-6af4b1b2] .actions-popover { display:flex;flex-direction:row;flex-wrap:wrap;top:calc(100% + 8px);bottom:auto;right:0;width:max-content;min-width:0;max-width:calc(100vw - 40px);height:auto;padding:4px;border:1px solid var(--feed-line,#e5ebe7);border-radius:10px;background:var(--feed-paper,#fff);box-shadow:0 8px 24px #14291d1a;z-index:30;
}
.compact-menu[data-v-6af4b1b2] .popover-item { flex:0 0 auto;width:auto;min-height:40px;padding:0 12px;border-radius:6px;color:var(--compact-text);
}
.compact-menu[data-v-6af4b1b2] .popover-item.action-delete { color:#bd3750;
}
.compact-menu[data-v-6af4b1b2] .popover-item.action-edit { color:var(--feed-accent,#087f63);
}
body .post-item[data-post-type="movie"]:has(.compact-card) { padding:0 !important;row-gap:0;transform:none !important;
}
body .post-item:has(.compact-card) .post-topline { display:none;
}
body .post-item:has(.compact-card) .post-header-actions { display:none;
}
.post-item:has(.compact-menu .actions-popover) { position:relative;z-index:30;overflow:visible;
}
body .post-item:has(.compact-card) > .interaction-section { margin:0 !important;width:100%;box-sizing:border-box;border:0 !important;border-radius:0 0 15px 15px !important;box-shadow:none !important;
}
body.site-dark-mode .compact-card { --compact-surface:linear-gradient(115deg,rgba(var(--site-media-rgb,148,163,184),var(--preview-tint,.12)),transparent 85%);
}
body.site-dark-mode .compact-card .compact-score { color:#dfb96d;
}
body.site-dark-mode .compact-card .is-unrated .compact-score { color:var(--feed-muted);
}
body.site-dark-mode .compact-card .compact-stars-base { color:#46544c;
}
body.site-dark-mode .compact-card .compact-stars-fill { color:#dfb96d;
}
body.site-dark-mode .compact-card .state-pending { color:#c4ced6;background:#34414b;
}
body.site-dark-mode .compact-card .state-playing { color:#f1cf85;background:#483c22;
}
body.site-dark-mode .compact-card .state-finished { color:#93e4c0;background:#234738;
}
body.site-dark-mode .compact-card .compact-bookmark.is-bookmarked { color:#13271e;
}
@media(hover:hover) {
.compact-play[data-v-6af4b1b2]:hover,.compact-menu[data-v-6af4b1b2] .actions-btn:hover { background:var(--feed-line,#e5ebe7);
}
.compact-bookmark.is-bookmarked[data-v-6af4b1b2]:hover { background:#08664f;color:#fff;
}
}
.compact-poster[data-v-6af4b1b2]:focus-visible,.compact-play[data-v-6af4b1b2]:focus-visible,.compact-menu[data-v-6af4b1b2] .actions-btn:focus-visible { outline:2px solid var(--feed-accent,#087f63);outline-offset:3px;
}
@media(max-width:600px) {
.movie-card-vertical.compact-card[data-v-6af4b1b2] { grid-template-columns:50px minmax(0,1fr) 32px;gap:9px;padding:11px 12px 38px !important;
}
.compact-card .cover-bg.compact-poster[data-v-6af4b1b2] { width:50px;height:74px;
}
.compact-body[data-v-6af4b1b2] { gap:3px;padding:0;
}
.compact-heading[data-v-6af4b1b2] { gap:3px;
}
.compact-rating[data-v-6af4b1b2] { flex-basis:100%;
}
.compact-card .share-title.compact-title[data-v-6af4b1b2] { font-size:14px;
}
.compact-card .details-row.compact-credits[data-v-6af4b1b2] { font-size:11px;gap:2px;
}
.compact-controls[data-v-6af4b1b2] { flex-direction:column;gap:10px;
}
.compact-play[data-v-6af4b1b2],.compact-menu[data-v-6af4b1b2] .actions-btn { width:32px;height:32px;padding:7px;
}
.compact-play[data-v-6af4b1b2]::before,.compact-menu[data-v-6af4b1b2] .actions-btn::before { content:'';position:absolute;inset:-5px;
}
}
@media(max-width:360px) {
.movie-card-vertical.compact-card[data-v-6af4b1b2] { grid-template-columns:50px minmax(0,1fr) 32px;gap:8px;
}
.compact-card .cover-bg.compact-poster[data-v-6af4b1b2] { width:50px;height:74px;
}
.compact-card .share-title.compact-title[data-v-6af4b1b2] { font-size:14px;
}
}
@media(prefers-reduced-motion:reduce) {
.compact-play[data-v-6af4b1b2],.compact-menu[data-v-6af4b1b2] .actions-btn { transition:none;
}
}

.interaction-section[data-v-76ddfc18] {
  position: relative;
  margin-top: 12px;
  padding: 0;
  color: #334155;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.interaction-section[data-v-76ddfc18]::before {
  display: none;
}
.likes[data-v-76ddfc18] {
  display: flex;
  align-items: center;
  min-height: 28px;
  padding: 0 5px 10px;
  color: #94a3b8;
  font-size: 12px;
  line-height: 1.4;
}
.like-icon[data-v-76ddfc18] {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  margin-right: 7px;
  color: #fb7185;
}
.likes-list[data-v-76ddfc18] {
  min-width: 0;
  color: #94a3b8;
  font-weight: 700;
}
.likes-list .liker[data-v-76ddfc18]:not(:last-child)::after {
  content: '、';
}
.likes-suffix[data-v-76ddfc18] {
  margin-left: 4px;
  color: #94a3b8;
}
.divider[data-v-76ddfc18] {
  height: 1px;
  margin: 0 0 12px;
  background: #e2e8f0;
}
.comments[data-v-76ddfc18] {
  font-size: 13px;
  line-height: 1.5;
}
.comment-thread + .comment-thread[data-v-76ddfc18] {
  margin-top: 14px;
}
.comment-row[data-v-76ddfc18] {
  position: relative;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  min-width: 0;
  cursor: pointer;
}
.comment-row-root[data-v-76ddfc18] {
  grid-template-columns: 34px minmax(0, 1fr);
}
.comment-avatar[data-v-76ddfc18] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  overflow: hidden;
  color: #059669;
  font-size: 14px;
  font-weight: 800;
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
  border-radius: 50%;
  box-shadow: 0 2px 7px rgba(16, 185, 129, 0.13);
}
.comment-avatar img[data-v-76ddfc18] {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.comment-body[data-v-76ddfc18],
.reply-body[data-v-76ddfc18] {
  min-width: 0;
}
.comment-row-root .comment-body[data-v-76ddfc18] {
  grid-column: 2;
  padding: 10px 68px 10px 12px;
  background: #f8fafc;
  border: 1px solid #f1f5f9;
  border-radius: 14px;
}
.comment-row-root .comment-side-action[data-v-76ddfc18] {
  position: absolute;
  top: 10px;
  right: 8px;
  z-index: 1;
}
.comment-header[data-v-76ddfc18],
.reply-line[data-v-76ddfc18] {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 0;
}
.commenter[data-v-76ddfc18] {
  color: #334155;
  font-size: 13px;
  font-weight: 800;
}
.comment-author-badge[data-v-76ddfc18] {
  display: inline-flex;
  align-items: center;
  padding: 2px 5px;
  color: #4f46e5;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.2;
  background: #eef2ff;
  border-radius: 4px;
}
.comment-time[data-v-76ddfc18] {
  color: #a8b4c4;
  font-size: 11px;
  font-weight: 600;
}
.comment-text[data-v-76ddfc18] {
  margin: 4px 0 0;
  color: #334155;
  font-size: 14px;
  line-height: 1.55;
  word-break: break-word;
}
.comment-edit-form[data-v-76ddfc18] {
  margin-top: 7px;
}
.comment-edit-form textarea[data-v-76ddfc18] {
  width: 100%;
  min-height: 58px;
  box-sizing: border-box;
  padding: 8px 10px;
  resize: vertical;
  color: #334155;
  font: inherit;
  line-height: 1.45;
  background: #fff;
  border: 1px solid #cbd5e1;
  border-radius: 9px;
  outline: none;
}
.comment-edit-form textarea[data-v-76ddfc18]:focus {
  border-color: #818cf8;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);
}
.comment-edit-actions[data-v-76ddfc18] {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  margin-top: 6px;
}
.comment-edit-actions span[data-v-76ddfc18] {
  margin-right: auto;
  color: #94a3b8;
  font-size: 10px;
}
.comment-edit-actions button[data-v-76ddfc18] {
  padding: 5px 9px;
  color: #64748b;
  font-size: 11px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 7px;
  cursor: pointer;
}
.comment-edit-actions button.is-primary[data-v-76ddfc18] {
  color: #fff;
  background: #6366f1;
  border-color: #6366f1;
}
.comment-edit-actions button[data-v-76ddfc18]:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.comment-actions[data-v-76ddfc18] {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 4px;
}
.comment-reply-action[data-v-76ddfc18] {
  padding: 0;
  color: #94a3b8;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  background: transparent;
  border: 0;
  cursor: pointer;
}
.comment-reply-action[data-v-76ddfc18]:hover {
  color: #4f46e5;
}
.comment-side-action[data-v-76ddfc18] {
  display: flex;
  justify-content: flex-end;
  min-width: 30px;
}
.comment-action-button[data-v-76ddfc18] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 28px;
  gap: 3px;
  padding: 0 5px;
  color: #94a3b8;
  background: transparent;
  border: 0;
  border-radius: 999px;
  cursor: pointer;
  transition: color 0.2s ease, background-color 0.2s ease, transform 0.2s ease;
}
.comment-action-button[data-v-76ddfc18] svg {
  width: 16px;
  height: 16px;
}
.comment-action-button[data-v-76ddfc18]:hover {
  color: #64748b;
  background: #f1f5f9;
  transform: translateY(-1px);
}
.comment-action-button[data-v-76ddfc18]:disabled {
  cursor: wait;
  opacity: 0.55;
  transform: none;
}
.comment-like-button.is-liked[data-v-76ddfc18] {
  color: #f43f5e;
  background: rgba(244, 63, 94, 0.08);
}
.comment-delete-button[data-v-76ddfc18]:hover {
  color: #ef4444;
  background: rgba(239, 68, 68, 0.08);
}
.comment-edit-button[data-v-76ddfc18]:hover {
  color: #4f46e5;
  background: rgba(99, 102, 241, 0.08);
}
.comment-like-count[data-v-76ddfc18] {
  min-width: 8px;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
}
.replies[data-v-76ddfc18] {
  position: relative;
  margin: 9px 0 0 54px;
  padding: 0 0 0 12px;
  background: transparent;
  border-left: 2px solid #e2e8f0;
}
.reply-item[data-v-76ddfc18] {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  min-width: 0;
  padding: 0;
  cursor: pointer;
}
.reply-item + .reply-item[data-v-76ddfc18] {
  margin-top: 8px;
}
.reply-item .reply-body[data-v-76ddfc18] {
  padding: 8px 68px 8px 10px;
  background: #f8fafc;
  border: 1px solid #f1f5f9;
  border-radius: 10px;
}
.reply-item .comment-side-action[data-v-76ddfc18] {
  position: absolute;
  top: 50%;
  right: 6px;
  z-index: 1;
  transform: translateY(-50%);
}
.reply-marker[data-v-76ddfc18] {
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
}
.reply-target[data-v-76ddfc18] {
  max-width: 100%;
  overflow: hidden;
  color: #4f46e5;
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.load-more-comments[data-v-76ddfc18] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 6px;
  margin-top: 13px;
  padding: 9px 12px;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
  background: rgba(248, 250, 252, 0.82);
  border: 1px solid rgba(226, 232, 240, 0.9);
  border-radius: 10px;
  cursor: pointer;
  transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}
.load-more-comments[data-v-76ddfc18]:hover {
  color: #4f46e5;
  background: #f8fafc;
  border-color: #c7d2fe;
}
.load-more-comments-count[data-v-76ddfc18] {
  color: #94a3b8;
  font-size: 10px;
  font-weight: 700;
}
.load-more-comments-arrow[data-v-76ddfc18] {
  margin-top: -3px;
  color: #94a3b8;
  font-size: 16px;
  line-height: 1;
}
body.site-dark-mode {
  color: #e2e8f0;
  background: transparent;
  border: 0;
  box-shadow: none;
}
body.site-dark-mode {
  background: rgba(255, 255, 255, 0.1);
}
body.site-dark-mode,body.site-dark-mode,body.site-dark-mode,body.site-dark-mode {
  color: #a1a1aa;
}
body.site-dark-mode,body.site-dark-mode {
  color: #e4e4e7;
}
body.site-dark-mode {
  background: rgba(39, 39, 42, 0.58);
  border-color: rgba(255, 255, 255, 0.08);
}
body.site-dark-mode,body.site-dark-mode {
  color: #e4e4e7;
  background: #27272a;
  border-color: rgba(255, 255, 255, 0.12);
}
body.site-dark-mode {
  color: #c7d2fe;
  background: rgba(99, 102, 241, 0.2);
}
body.site-dark-mode {
  color: #6ee7b7;
  background: rgba(16, 185, 129, 0.14);
  border-color: rgba(110, 231, 183, 0.28);
  box-shadow: none;
}
body.site-dark-mode {
  color: #71717a;
}
body.site-dark-mode {
  color: #d4d4d8;
  background: rgba(255, 255, 255, 0.07);
}
body.site-dark-mode {
  color: #fb7185;
  background: rgba(251, 113, 133, 0.12);
}
body.site-dark-mode {
  color: #f87171;
  background: rgba(248, 113, 113, 0.1);
}
body.site-dark-mode {
  border-left-color: rgba(255, 255, 255, 0.12);
}
body.site-dark-mode {
  background: rgba(39, 39, 42, 0.58);
  border-color: rgba(255, 255, 255, 0.08);
}
body.site-dark-mode {
  color: #a1a1aa;
}
body.site-dark-mode {
  color: #a5b4fc;
}
body.site-dark-mode {
  color: #d4d4d8;
  background: rgba(39, 39, 42, 0.55);
  border-color: rgba(255, 255, 255, 0.08);
}
body.site-dark-mode {
  color: #c7d2fe;
  background: rgba(63, 63, 70, 0.6);
  border-color: rgba(165, 180, 252, 0.3);
}
body.site-dark-mode,body.site-dark-mode {
  color: #71717a;
}
@media (max-width: 600px) {
.comment-row[data-v-76ddfc18] {
    grid-template-columns: 32px minmax(0, 1fr) auto;
    gap: 8px;
}
.comment-row-root[data-v-76ddfc18] {
    grid-template-columns: 32px minmax(0, 1fr);
}
.comment-avatar[data-v-76ddfc18] {
    width: 32px;
    height: 32px;
}
.comment-text[data-v-76ddfc18] {
    font-size: 13px;
}
.replies[data-v-76ddfc18] {
    margin-left: 54px;
    padding-left: 12px;
}
.comment-action-button[data-v-76ddfc18] {
    min-width: 26px;
    height: 26px;
    padding: 0 4px;
}
}
@media (prefers-reduced-motion: reduce) {
.comment-action-button[data-v-76ddfc18],
  .load-more-comments[data-v-76ddfc18] {
    transition: none;
}
}

.interaction-summary:has(.interaction-published) > .likes[data-v-76ddfc18] { flex:0 1 auto;min-width:0;
}
.interaction-summary:has(.interaction-published) > .comment-count-toggle[data-v-76ddfc18] { margin-left:auto;
}
.interaction-published[data-v-76ddfc18] { flex:none;white-space:nowrap;color:#96a0ad;font-size:11px;line-height:1.4;
}
body.site-dark-mode .interaction-published { color:#8e9aa8;
}
@media(max-width:600px) {
.interaction-published[data-v-76ddfc18] { font-size:10px;
}
}

.video-share-container[data-v-c0a19820] {
  position: relative;
  z-index: 1;
  cursor: pointer;
  max-width: 300px; /* 在桌面端限制最大宽度 */
  width: 100%; /* 在移动端撑满可用宽度 */
  border-radius: 8px;
  overflow: hidden;
  display: block;
}
.video-cover[data-v-c0a19820] {
  width: 100%;
  display: block; /* 消除图片下方的微小间隙 */
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  object-fit: cover;
  background-color: #eee;
}
.video-share-container[data-v-c0a19820]::before {
  content: '';
  display: block;
  /* 关键：padding-top 的百分比 = (高 / 宽) * 100% */
  /* 16:9 => (9 / 16) * 100% = 56.25% */
  padding-top: 56.25%;
}
/* 【核心新增】: 播放图标遮罩层的样式 */
.play-icon-overlay[data-v-c0a19820] {
  position: absolute; /* 绝对定位，脱离文档流，浮动在父容器之上 */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex; /* 使用 Flexbox 来实现图标的完美居中 */
  align-items: center;
  justify-content: center;
  background-color: rgba(0, 0, 0, 0.2); /* 轻微的黑色半透明遮罩 */
  /* 默认隐藏，鼠标悬浮时才显示，效果更佳 */
  opacity: 1;
  transition: opacity 0.2s ease-in-out;
  background-color: rgba(0, 0, 0, 0.2);
  transition: opacity 0.2s ease-in-out;
}

/* 鼠标悬浮在整个视频容器上时，显示播放图标 */
.video-share-container:hover .play-icon-overlay[data-v-c0a19820] {
  opacity: 1;
}

/* 【核心新增】: 播放图标本身的样式 */
.play-icon[data-v-c0a19820] {
  width: 60px;   /* 图标大小 */
  height: 60px;
  color: rgba(255, 255, 255, 0.9); /* 图标颜色，带一点透明度 */
  /* 增加阴影，使其在复杂的背景图上也能清晰可见 */
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.5));
}

.post-editor-overlay[data-v-116d4cc0] {
  position: fixed;
  inset: 0;
  z-index: 3000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  overflow: hidden;
  background: rgb(15 23 42 / 48%);
}
.post-editor-modal[data-v-116d4cc0] {
  --editor-surface: rgb(255 255 255 / 96%);
  --editor-glass: rgb(248 250 252 / 88%);
  --editor-chrome: rgb(255 255 255 / 62%);
  --editor-muted: rgb(241 245 249 / 94%);
  --editor-border: rgb(148 163 184 / 28%);
  --editor-text: #0f172a;
  display: flex;
  flex-direction: column;
  width: min(100%, 680px);
  height: min(90dvh, 900px);
  max-height: calc(100dvh - max(24px, env(safe-area-inset-top)));
  box-sizing: border-box;
  overflow: hidden;
  color: var(--editor-text);
  background: var(--editor-glass);
  -webkit-backdrop-filter: blur(20px) saturate(120%);
  backdrop-filter: blur(20px) saturate(120%);
  border: 1px solid var(--editor-border);
  border-radius: 24px 24px 0 0;
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 45%), 0 -12px 38px rgb(15 23 42 / 24%);
}
.post-editor-handle[data-v-116d4cc0] { flex: 0 0 5px; width: 44px; margin: 10px auto 0; background: var(--editor-border); border-radius: 999px;
}
.post-editor-header[data-v-116d4cc0], .post-editor-footer[data-v-116d4cc0] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
  gap: 12px;
  padding: 16px 20px;
  background: var(--editor-chrome);
}
.post-editor-header[data-v-116d4cc0] { border-bottom: 1px solid var(--editor-border);
}
.post-editor-header h2[data-v-116d4cc0] { margin: 0; font-size: 18px;
}
.post-editor-body[data-v-116d4cc0] {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 20px;
  scrollbar-width: thin;
}
.post-editor-footer[data-v-116d4cc0] {
  position: sticky;
  bottom: 0;
  justify-content: flex-end;
  border-top: 1px solid var(--editor-border);
  padding-bottom: max(16px, env(safe-area-inset-bottom));
}
.post-editor-modal button[data-v-116d4cc0] { font: inherit;
}
.post-editor-close[data-v-116d4cc0], .post-editor-cancel[data-v-116d4cc0] {
  min-height: 44px;
  padding: 10px 16px;
  color: var(--editor-text);
  background: var(--editor-muted);
  border: 0;
  border-radius: 10px;
  cursor: pointer;
}
.post-editor-close[data-v-116d4cc0] { width: 44px; padding: 0; font-size: 26px !important;
}
.post-editor-footer .action-btn[data-v-116d4cc0] { width: auto; min-width: 96px; min-height: 44px; background: #059669; border-radius: 10px;
}
.post-editor-footer .action-btn[data-v-116d4cc0]:hover:not(:disabled) { background: #047857;
}
.post-editor-modal button[data-v-116d4cc0]:disabled { opacity: .5; cursor: not-allowed;
}
.post-editor-modal[data-v-116d4cc0] :is(button, input, select, textarea):focus-visible { outline: 2px solid #059669; outline-offset: 3px;
}
.post-editor-modal .form-group[data-v-116d4cc0] :is(input, select, textarea), .post-editor-modal .select-wrapper[data-v-116d4cc0] { min-width: 0;
}
.post-editor-modal[data-v-116d4cc0] :is(input:not([type='checkbox']):not([type='radio']), select, textarea) { color: var(--editor-text); background: var(--editor-surface); border-color: var(--editor-border);
}
.post-editor-modal[data-v-116d4cc0] :is(.form-group label, .form-group-checkbox label, .notification-options h4) { color: var(--editor-text);
}
.post-editor-modal .post-modal-tabs[data-v-116d4cc0] { gap: 4px; border-color: var(--editor-border);
}
.post-editor-modal .post-modal-tabs button[data-v-116d4cc0] { min-height: 44px; padding: 10px 4px;
}
.post-editor-modal .post-modal-tabs button.active[data-v-116d4cc0] { color: #059669; border-color: #059669;
}
.post-editor-modal .option-group[data-v-116d4cc0] { flex-wrap: wrap; gap: 12px;
}
.post-editor-modal .notification-options[data-v-116d4cc0] { border-color: var(--editor-border);
}
.post-editor-modal .upload-placeholder[data-v-116d4cc0] { background: var(--editor-muted); border-color: var(--editor-border);
}
body.site-dark-mode .post-editor-modal {
  --editor-surface: rgb(30 41 59 / 96%);
  --editor-glass: rgb(15 23 42 / 90%);
  --editor-chrome: rgb(30 41 59 / 64%);
  --editor-muted: rgb(30 41 59 / 94%);
  --editor-border: rgb(148 163 184 / 24%);
  --editor-text: #e2e8f0;
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
.post-editor-modal[data-v-116d4cc0] { --editor-glass: #f8fafc;
}
body.site-dark-mode .post-editor-modal { --editor-glass: #0f172a;
}
}
/* App supplies the fade lifecycle, including leave; no mount-only animation. */
.post-editor-overlay.fade-enter-active[data-v-116d4cc0], .post-editor-overlay.fade-leave-active[data-v-116d4cc0] { transition: opacity 220ms ease;
}
.post-editor-overlay.fade-enter-active > .post-editor-modal[data-v-116d4cc0],
.post-editor-overlay.fade-leave-active > .post-editor-modal[data-v-116d4cc0] { transition: transform 220ms cubic-bezier(.22, 1, .36, 1);
}
.post-editor-overlay.fade-enter-from[data-v-116d4cc0], .post-editor-overlay.fade-leave-to[data-v-116d4cc0] { opacity: 0; transform: none;
}
.post-editor-overlay.fade-enter-from > .post-editor-modal[data-v-116d4cc0],
.post-editor-overlay.fade-leave-to > .post-editor-modal[data-v-116d4cc0] { transform: translateY(100%);
}
@media (max-width: 700px) {
.post-editor-modal[data-v-116d4cc0] { width: 100%;
}
.post-editor-header[data-v-116d4cc0], .post-editor-body[data-v-116d4cc0], .post-editor-footer[data-v-116d4cc0] { padding-left: max(16px, env(safe-area-inset-left)); padding-right: max(16px, env(safe-area-inset-right));
}
.post-editor-modal .form-group[data-v-116d4cc0] { flex-direction: column; align-items: stretch; gap: 6px;
}
.post-editor-modal .form-group label[data-v-116d4cc0] { width: auto;
}
.post-editor-modal .form-group[data-v-116d4cc0] :is(input, textarea, select) { font-size: 16px;
}
}
@media (prefers-reduced-motion: reduce) {
.post-editor-overlay.fade-enter-active[data-v-116d4cc0], .post-editor-overlay.fade-leave-active[data-v-116d4cc0],
  .post-editor-overlay.fade-enter-active > .post-editor-modal[data-v-116d4cc0],
  .post-editor-overlay.fade-leave-active > .post-editor-modal[data-v-116d4cc0] { transition: none;
}
}
/* 把 PostModal 相关的 CSS 样式放在这里 */
.notification-options[data-v-116d4cc0] {
  border-top: 1px solid #eee;
  margin-top: 15px;
  padding-top: 15px;
}
.notification-options h4[data-v-116d4cc0] {
  margin-top: 0;
  margin-bottom: 10px;
  font-size: 15px;
  color: #555;
}
.option-group[data-v-116d4cc0] {
  display: flex;
  gap: 20px;
  margin-bottom: 15px;
}
.option-group label[data-v-116d4cc0] {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 14px;
}
.user-select-wrapper select[data-v-116d4cc0] {
  width: 100%;
  min-height: 100px;
  padding: 8px;
  border: 1px solid #ddd;
  border-radius: 4px;
}
.user-select-info[data-v-116d4cc0] {
  font-size: 12px;
  color: #999;
  margin-top: 5px;
}
.cover-preview[data-v-116d4cc0] {
  margin-top: 10px;
  max-width: 200px;
}
.cover-preview img[data-v-116d4cc0] {
  width: 100%;
  border-radius: 8px;
  border: 1px solid #ddd;
}

/* Shared visual treatment for both publishing and editing. */
.serene-post-editor.post-editor-modal[data-v-116d4cc0] {
  --editor-surface: #fff;
  --editor-glass: #fff;
  --editor-chrome: #fff;
  --editor-muted: #f8fafc;
  --editor-border: #e2e8f0;
  --editor-text: #1e293b;
  width: min(640px, 100%); height: auto; max-height: calc(100dvh - 48px);
  border-radius: 24px; backdrop-filter: none;
  box-shadow: 0 24px 80px rgba(15, 23, 42, .2);
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Microsoft YaHei', sans-serif;
}
.serene-post-editor[data-v-116d4cc0] *, .serene-post-editor[data-v-116d4cc0] *::before, .serene-post-editor[data-v-116d4cc0] *::after { box-sizing: border-box;
}
.serene-post-editor .post-editor-handle[data-v-116d4cc0] { display: none;
}
.serene-post-editor .post-editor-header[data-v-116d4cc0] { padding: 20px 24px; border-color: #f1f5f9;
}
.serene-post-editor .post-editor-header h2[data-v-116d4cc0] { font-size: 17px; font-weight: 700; letter-spacing: -.02em;
}
.serene-post-editor .post-editor-close[data-v-116d4cc0] { min-height: 34px; width: 34px; border-radius: 50%; color: #64748b;
}
.serene-post-editor .post-editor-body[data-v-116d4cc0] {
  flex: 0 1 auto; padding: 24px; overflow-x: hidden;
  background: #fff; scrollbar-color: #cbd5e1 transparent;
}
.serene-post-editor .post-modal-tabs[data-v-116d4cc0] {
  padding: 4px; margin: 0 0 20px; gap: 4px; border: 1px solid #f1f5f9;
  border-radius: 14px; background: #f8fafc;
}
.serene-post-editor .post-modal-tabs button[data-v-116d4cc0] {
  flex: 1; min-width: 0; min-height: 38px; padding: 8px 4px;
  border: 1px solid transparent; border-radius: 10px; color: #64748b; font-size: 13px; font-weight: 600;
}
.serene-post-editor .post-modal-tabs button.active[data-v-116d4cc0] {
  color: #059669; background: #fff; border-color: #e2e8f0; box-shadow: 0 2px 5px rgba(15,23,42,.04);
}
.serene-post-editor .form-group[data-v-116d4cc0] { gap: 16px; margin-bottom: 16px;
}
.serene-post-editor .form-group > label[data-v-116d4cc0] { flex: 0 0 72px; width: 72px; margin: 0; text-align: left; font-size: 13px; font-weight: 500; color: #64748b;
}
.serene-post-editor .form-group[data-v-116d4cc0] :is(input, textarea, select) {
  font: inherit; font-size: 13px; line-height: 1.6; padding: 10px 12px;
  border: 1px solid #e2e8f0; border-radius: 12px; box-shadow: none;
  background: #f8fafc; color: #334155; transition: border-color .15s, box-shadow .15s;
}
.serene-post-editor .form-group textarea[data-v-116d4cc0] { width: 100%; min-height: 112px; resize: vertical;
}
.serene-post-editor .form-group[data-v-116d4cc0] :is(input, textarea, select):focus {
  outline: none; border-color: #6ee7b7; background: #fff; box-shadow: 0 0 0 3px #ecfdf5;
}
.serene-post-editor .form-group[data-v-116d4cc0] :is(input, textarea)::placeholder { color: #94a3b8;
}
.serene-post-editor .form-group input[type=file][data-v-116d4cc0] { padding: 7px; font-size: 12px; color: #64748b; background: #fff; border-style: dashed;
}
.serene-post-editor input[type=file][data-v-116d4cc0]::file-selector-button {
  padding: 7px 12px; margin-right: 12px; border: 0; border-radius: 8px;
  background: #ecfdf5; color: #059669; font: inherit; font-weight: 600; cursor: pointer;
}
.serene-post-editor .select-wrapper[data-v-116d4cc0] { flex: 1; width: 100%;
}
.serene-post-editor .form-group select[data-v-116d4cc0] { width: 100%; padding-right: 32px;
}
.serene-post-editor .form-group-checkbox[data-v-116d4cc0] { gap: 9px; margin: 12px 0 0;
}
.serene-post-editor .form-group-checkbox label[data-v-116d4cc0] { color: #64748b; font-size: 13px;
}
.serene-post-editor[data-v-116d4cc0] :is(input[type=checkbox], input[type=radio]) { width: 16px; height: 16px; flex-shrink: 0; margin: 0; accent-color: #10b981;
}
.serene-post-editor .music-subtype-chooser[data-v-116d4cc0] { display: flex; gap: 8px; margin: 0 0 16px;
}
.serene-post-editor .music-subtype-chooser button[data-v-116d4cc0] { padding: 7px 18px; border: 1px solid #e2e8f0; border-radius: 10px; background: #fff; color: #64748b; font-size: 13px;
}
.serene-post-editor .music-subtype-chooser button.active[data-v-116d4cc0] { background: #ecfdf5; color: #059669; border-color: #a7f3d0;
}
.serene-post-editor .notification-options[data-v-116d4cc0] { padding: 16px; margin-top: 20px; border: 1px solid #f1f5f9; border-radius: 14px; background: #f8fafc;
}
.serene-post-editor .notification-options h4[data-v-116d4cc0] { font-size: 12px; color: #475569; margin: 0 0 12px;
}
.serene-post-editor .option-group[data-v-116d4cc0] { margin: 0; gap: 12px 20px;
}
.serene-post-editor .option-group label[data-v-116d4cc0] { gap: 7px; font-size: 12px; color: #64748b;
}
.serene-post-editor .user-select-wrapper[data-v-116d4cc0] { margin-top: 14px;
}
.serene-post-editor .user-select-wrapper select[data-v-116d4cc0] { border-radius: 10px; font: inherit; font-size: 13px;
}
.serene-post-editor .upload-placeholder[data-v-116d4cc0] { border: 1px dashed #a7f3d0; border-radius: 14px; background: #ecfdf5;
}
.serene-post-editor .upload-placeholder .icon-svg[data-v-116d4cc0] { color: #10b981;
}
.serene-post-editor .post-editor-footer[data-v-116d4cc0] { position: static; padding: 16px 24px; background: #f8fafc; border-color: #f1f5f9;
}
.serene-post-editor .post-editor-footer button[data-v-116d4cc0] { min-height: 40px; padding: 9px 24px; font-size: 13px; font-weight: 600; border-radius: 12px;
}
.serene-post-editor .post-editor-cancel[data-v-116d4cc0] { border: 1px solid #e2e8f0; background: #fff; color: #64748b;
}
.serene-post-editor .post-editor-footer .action-btn[data-v-116d4cc0] { background: #10b981; color: white; box-shadow: 0 3px 8px rgba(16,185,129,.15);
}
@media (max-width: 600px) {
.post-editor-overlay[data-v-116d4cc0] { align-items: flex-end; padding: 0;
}
.serene-post-editor.post-editor-modal[data-v-116d4cc0] { max-height: calc(100dvh - 16px); border-radius: 24px 24px 0 0;
}
.serene-post-editor .post-editor-header[data-v-116d4cc0] { padding: 18px 20px;
}
.serene-post-editor .post-editor-body[data-v-116d4cc0] { padding: 20px;
}
.serene-post-editor .form-group[data-v-116d4cc0] { gap: 8px;
}
.serene-post-editor .form-group > label[data-v-116d4cc0] { flex: none; width: auto;
}
.serene-post-editor .form-group[data-v-116d4cc0] :is(input, textarea, select) { width: 100%; font-size: 16px;
}
.serene-post-editor .form-group input[type=file][data-v-116d4cc0] { font-size: 12px;
}
.serene-post-editor .post-editor-footer[data-v-116d4cc0] { padding: 14px 20px max(14px, env(safe-area-inset-bottom));
}
}

.request-modal h2[data-v-b06138d4] { margin-bottom: 10px;
}
.request-keywords[data-v-b06138d4] { font-size: 15px; color: #555; text-align: center; margin-bottom: 20px; background-color: #f7f7f7; padding: 10px; border-radius: var(--radius-md);
}
.request-keywords strong[data-v-b06138d4] { color: var(--theme-color);
}
.type-selector[data-v-b06138d4] { display: grid; grid-template-columns: repeat(auto-fill, minmax(80px, 1fr)); gap: 10px; margin-bottom: 25px;
}
.type-selector button[data-v-b06138d4] { min-height: var(--touch-target); padding: 12px; border: 1px solid #ddd; background-color: #fff; border-radius: var(--radius-md); cursor: pointer; font-size: 15px; transition: all 0.2s ease;
}
.type-selector button[data-v-b06138d4]:hover { border-color: #aaa;
}
.type-selector button.active[data-v-b06138d4] { background-color: var(--theme-color); color: white; border-color: var(--theme-color); font-weight: bold;
}
  :root {
  /* Brand / semantic colors */
  --theme-color: #059669;
  --color-brand-50: #ecfdf5;
  --color-brand-100: #d1fae5;
  --color-brand-300: #6ee7b7;
  --color-brand-500: #10b981;
  --color-brand-600: #059669;
  --color-brand-700: #047857;
  --color-cyan-500: #06b6d4;
  --color-text-strong: #0f172a;
  --color-text: #1e293b;
  --color-text-secondary: #64748b;
  --color-text-muted: #94a3b8;
  --color-border: rgba(148, 163, 184, 0.18);
  --color-border-strong: #e2e8f0;
  --color-surface: #ffffff;
  --color-surface-page: #f2f6f8;
  --color-surface-glass: rgba(255, 255, 255, 0.72);
  --color-surface-glass-strong: rgba(255, 255, 255, 0.84);
  --color-danger: #e11d48;
  --color-danger-soft: #fff1f2;
  --color-warning: #b45309;
  --color-warning-soft: #fffbeb;
  --color-info: #6758d9;
  --color-info-soft: #f4f1ff;
  /* Contextual aliases: these accents stay scoped to search and playback. */
  --color-info-strong: #7464e8;
  --color-player: #ff4c79;
  --color-player-strong: #ec4899;
  --color-player-soft: #fff0f4;

  /* Typography */
  --font-sans: "FZ YuanTi Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    "Helvetica Neue", Arial, "Noto Sans", "PingFang SC", "Microsoft YaHei",
    sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --text-xs: 11px;
  --text-sm: 12px;
  --text-md: 14px;
  --text-lg: 16px;
  --text-xl: 19px;
  --text-2xl: 21px;
  --leading-tight: 1.25;
  --leading-body: 1.55;
  --leading-relaxed: 1.7;

  /* Layout */
  --size-content-max: 600px;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 28px;
  --space-8: 32px;
  --touch-target: 44px;
  --header-height: 52px;

  /* Shape */
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-card: 20px;
  --radius-media: 16px;
  --radius-sheet: 28px;
  --radius-pill: 999px;

  /* Elevation */
  --shadow-card: 0 10px 28px rgba(15, 23, 42, 0.065),
    inset 0 1px 0 rgba(255, 255, 255, 0.64);
  --shadow-card-hover: 0 16px 36px rgba(15, 23, 42, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.76);
  --shadow-float: 0 12px 30px rgba(15, 23, 42, 0.18);
  --shadow-sheet: 0 -18px 48px rgba(15, 23, 42, 0.22);
  --focus-ring: 0 0 0 3px rgba(16, 185, 129, 0.16);

  /* Motion */
  --ease-standard: cubic-bezier(0.16, 1, 0.3, 1);
  --duration-fast: 160ms;
  --duration-normal: 240ms;
  --duration-slow: 440ms;
}
[v-cloak] { display: none !important; }
* {
    -webkit-tap-highlight-color: transparent;
}
html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    overscroll-behavior-x: none;
}
body, html { margin: 0; padding: 0; height: 100%; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; background-color: #f1f1f1; -webkit-font-smoothing: antialiased; overflow: hidden; }
body { overscroll-behavior-x: none; }
#app { width: 100%; max-width: 600px; min-width: 0; height: 100vh; margin: 0 auto; background-color: white; box-shadow: 0 0 10px rgba(0,0,0,0.1); position: relative; overflow: hidden; overflow: clip; overscroll-behavior-x: none; }
.scroll-container { width: 100%; min-width: 0; max-width: 100%; height: 100%; overflow-x: hidden; overflow-y: auto; overscroll-behavior-x: none; touch-action: pan-y pinch-zoom; -webkit-overflow-scrolling: touch; box-sizing: border-box; -ms-overflow-style: none; scrollbar-width: none; }
.scroll-container::-webkit-scrollbar { display: none; }
.top-bar { position: sticky; top: 0; z-index: 1000; display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; column-gap: 8px; align-items: center; padding: 10px 15px; background-color: #ffffff; color: black; height: 30px; border-bottom: 1px solid #dcdcdc; }
.top-bar-actions { display: flex; align-items: center; justify-content: flex-end; gap: 16px; }
.top-bar-actions > * + * {
    margin-left: 0;
  }
.top-bar .title { display: block; width: 100%; margin: 0; color: inherit; font-size: 18px; font-weight: bold; text-align: center; }
.top-bar-icon { color: black; width: 30px; height: 30px; cursor: pointer; }
.top-bar > span {
    /* 【关键】: 添加这一行 */
    cursor: pointer;
    
    /* 其他您可能已有的样式 */
    display: flex;
    align-items: center;
  }
.search-container { flex-grow: 1; margin: 0 15px; position: relative; }
.search-bar-wrapper { display: flex; align-items: center; width: 100%; gap: 10px; }
.search-bar-input-group { position: relative; flex-grow: 1; }
.search-bar-icon { position: absolute; left: 10px; top: 50%; transform: translateY(-50%); width: 20px; height: 20px; color: #999; pointer-events: none; }
.search-input { width: 100%; height: 36px; padding: 0 10px 0 40px; border: none; border-radius: 8px; font-size: 15px; background-color: #f5f5f5; transition: all 0.2s ease; box-sizing: border-box; }
.search-cancel-btn { flex-shrink: 0; background: none; border: none; font-size: 16px; cursor: pointer; padding: 0 5px; color: #576b95; font-weight: 500; }
.search-input:focus { background-color: #efefef; outline: none; box-shadow: 0 0 0 2px rgba(26, 173, 25, 0.2); }
.search-prompt {
    padding: 60px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 15px;
    color: #aaa;
}
.search-prompt .icon-svg {
    width: 48px;
    height: 48px;
}
.search-prompt span {
    font-size: 16px;
}
.title-search-swap-enter-active,
.title-search-swap-leave-active { transition: all 0.25s ease-out; }
.title-search-swap-enter-from { opacity: 0; transform: translateY(-10px); }
.title-search-swap-leave-to { opacity: 0; transform: translateY(10px); }
.moments-container{min-width:0;padding-top:0}
.moments-header{position:relative;min-width:0;margin-bottom:20px}
.cover-photo{width:100%;height:250px;object-fit:cover;display:block;transition: opacity 0.4s ease;}
.user-info{position:absolute;right:15px;bottom:-20px;display:flex;align-items:center}
.user-info .avatar.is-admin { cursor: pointer; }
.user-info .username{color:white;font-weight:bold;text-shadow:1px 1px 2px rgba(0,0,0,.5);margin-right:15px;font-size:16px}
.user-info .avatar{width:70px;height:70px;border-radius:8px;border:2px solid white}
.feed { padding-bottom: 20px; }
/* 动态卡片使用固定的两列骨架，互动区和评论输入框始终跨满整张卡片。 */
.post-item {
  position: relative;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  column-gap: 12px;
  width: min(100%, var(--size-content-max));
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  padding: var(--space-4);
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-card);
}
.post-item:not(.post-item-with-author) .post-content-wrapper {
  grid-column: 1 / -1;
}
.post-author-avatar {
  width: 38px;
  height: 38px;
  flex-shrink: 0;
}
.post-author-avatar img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}
.post-content-wrapper {
  min-width: 0;
  overflow: visible;
}
.post-item > .interaction-section,
.post-item > .comment-form {
  grid-column: 1 / -1;
  width: 100%;
  min-width: 0;
}
.post-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  min-width: 0;
  gap: 10px;
  margin-bottom: 8px;
  padding-right: 112px;
}
.author-name {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 7px;
  color: #334155;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.35;
  cursor: pointer;
}
.pinned-tag {
  display: inline-flex;
  align-items: center;
  padding: 2px 6px;
  color: #d97706;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.2;
  background: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: 5px;
}
.post-header-actions {
  position: absolute;
  top: 32px;
  right: 16px;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 0 0 auto;
  gap: 7px;
  margin-left: auto;
}
.post-item:not(.post-item-with-author) .post-topline {
  height: 0;
  margin: 0;
  padding: 0;
}
.post-type-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 28px;
  box-sizing: border-box;
  padding: 4px 9px;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 9px;
}
.post-type-badge .icon-svg {
  width: 14px;
  height: 14px;
  color: #f59e0b;
}
.post-actions-menu {
  position: relative;
  flex: 0 0 auto;
}
.actions-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 6px;
  color: #94a3b8;
  background: transparent;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  transition: color 0.2s ease, background-color 0.2s ease, transform 0.2s ease;
}
.actions-btn .icon-svg {
  width: 17px;
  height: 17px;
}
.actions-btn:hover,
.actions-btn[aria-expanded='true'] {
  color: #475569;
  background: #f1f5f9;
  transform: translateY(-1px);
}
.actions-popover {
  position: absolute;
  z-index: 10;
  top: calc(100% + 7px);
  right: 0;
  display: flex;
  align-items: stretch;
  min-height: 36px;
  overflow: hidden;
  color: #fff;
  background: #334155;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 11px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.2);
  white-space: nowrap;
}
.popover-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-width: 70px;
  padding: 0 10px;
  color: inherit;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  background: transparent;
  border: 0;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.popover-item + .popover-item {
  border-left: 1px solid rgba(255, 255, 255, 0.12);
}
.popover-item:hover {
  background: rgba(255, 255, 255, 0.12);
}
.popover-item .icon-svg {
  width: 15px;
  height: 15px;
  color: currentColor;
}
.post-text {
  margin: 0;
  color: #1e293b;
  font-size: 15px;
  line-height: 1.6;
  white-space: pre-wrap;
  word-wrap: break-word;
}
.toggle-expansion-btn {
  display: inline-block;
  margin-top: 5px;
  padding: 0;
  color: #576b95;
  font-size: 14px;
  font-weight: 800;
  background: transparent;
  border: 0;
  cursor: pointer;
}
.post-meta {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-height: 18px;
  margin-top: 8px;
  padding-top: 10px;
  color: #94a3b8;
  font-size: 12px;
  font-weight: 700;
  border-top: 1px solid #edf1f5;
}
.post-engagement-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #edf1f5;
}
.post-actions-menu-bottom {
  margin-left: auto;
}
.post-actions-menu-bottom .actions-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  padding: 7px;
}
.post-actions-menu-bottom .actions-popover {
  top: auto;
  bottom: calc(100% + 7px);
}
.post-actions-menu-bottom .actions-btn .icon-svg {
  width: 17px;
  height: 17px;
}
body.site-dark-mode .post-item {
  background: #18181b;
  border-bottom-color: rgba(255, 255, 255, 0.08);
}
body.site-dark-mode .author-name,
body.site-dark-mode .post-text {
  color: #e4e4e7;
}
body.site-dark-mode .post-type-badge {
  color: #a1a1aa;
  background: rgba(39, 39, 42, 0.7);
  border-color: rgba(255, 255, 255, 0.1);
}
body.site-dark-mode .actions-btn {
  color: #71717a;
}
body.site-dark-mode .actions-btn:hover,
body.site-dark-mode .actions-btn[aria-expanded='true'] {
  color: #e4e4e7;
  background: rgba(255, 255, 255, 0.08);
}
body.site-dark-mode .actions-popover {
  color: #f4f4f5;
  background: #27272a;
  border-color: rgba(255, 255, 255, 0.1);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.45);
}
body.site-dark-mode .popover-item + .popover-item {
  border-left-color: rgba(255, 255, 255, 0.1);
}
body.site-dark-mode .post-meta {
  color: #71717a;
  border-top-color: rgba(255, 255, 255, 0.08);
}
body.site-dark-mode .post-engagement-actions {
  border-top-color: rgba(255, 255, 255, 0.08);
}
.comment-form {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 12px;
}
.comment-input-shell {
  display: flex;
  align-items: center;
  min-width: 0;
  flex: 1 1 auto;
  min-height: 40px;
  box-sizing: border-box;
  padding: 0 6px 0 13px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.comment-input-shell:focus-within {
  background: #fff;
  border-color: #a7f3d0;
  box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.1);
}
.comment-input-shell input {
  min-width: 0;
  flex: 1 1 auto;
  padding: 8px 0;
  color: #334155;
  font: inherit;
  font-size: 13px;
  background: transparent;
  border: 0;
  outline: 0;
}
.comment-input-shell input::placeholder {
  color: #94a3b8;
}
.comment-emoji-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  color: #94a3b8;
  font-size: 18px;
  line-height: 1;
  background: transparent;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
}
.comment-emoji-button:hover {
  color: #10b981;
  background: #ecfdf5;
}
.comment-submit-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  padding: 9px;
  color: #fff;
  background: #10b981;
  border: 0;
  border-radius: 50%;
  box-shadow: 0 5px 12px rgba(16, 185, 129, 0.2);
  cursor: pointer;
  transition: color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.comment-submit-button .icon-svg {
  width: 18px;
  height: 18px;
}
.comment-submit-button:hover:not(:disabled) {
  background: #059669;
  box-shadow: 0 7px 16px rgba(16, 185, 129, 0.28);
  transform: translateY(-1px);
}
.comment-submit-button:disabled {
  color: #94a3b8;
  background: #e2e8f0;
  box-shadow: none;
  cursor: not-allowed;
}
body.site-dark-mode .comment-input-shell {
  background: rgba(39, 39, 42, 0.68);
  border-color: rgba(255, 255, 255, 0.1);
}
body.site-dark-mode .comment-input-shell:focus-within {
  background: rgba(39, 39, 42, 0.9);
  border-color: rgba(52, 211, 153, 0.56);
  box-shadow: 0 0 0 3px rgba(52, 211, 153, 0.1);
}
body.site-dark-mode .comment-input-shell input {
  color: #e4e4e7;
}
body.site-dark-mode .comment-emoji-button {
  color: #71717a;
}
body.site-dark-mode .comment-emoji-button:hover {
  color: #6ee7b7;
  background: rgba(16, 185, 129, 0.14);
}
body.site-dark-mode .comment-submit-button:disabled {
  color: #71717a;
  background: #3f3f46;
}
.post-item-with-author > .interaction-section .likes {
  margin-left: 54px;
  width: calc(100% - 54px);
}
.post-item > .interaction-section .likes {
  box-sizing: border-box;
  padding-left: 13px;
}
.post-item-with-author > .post-meta {
  width: 100%;
  margin-left: 0;
  padding-left: 54px;
}
.image-grid { margin-top: 10px; display: grid; gap: 5px; }
.image-grid.grid-1 .grid-item { max-width: 30%; }
.image-grid.grid-2, .image-grid.grid-4 { grid-template-columns: repeat(2, 1fr); max-width: 60%; }
.image-grid.grid-3, .image-grid.grid-5, .image-grid.grid-6, .image-grid.grid-7, .image-grid.grid-8, .image-grid.grid-9 { grid-template-columns: repeat(3, 1fr); max-width: 90%; }
.image-grid .grid-item img { display: block; width: 100%; height: 100%; object-fit: cover; cursor: pointer; }
.image-grid .grid-item { aspect-ratio: 1 / 1; }
.share-card { display: flex; align-items: center; margin-top: 10px; padding: 10px; background-color: #f7f7f7; border-radius: 4px; cursor: pointer; transition: background-color 0.2s; }
.share-card:hover { background-color: #efefef; }
.share-card .share-cover { width: 50px; height: 50px; flex-shrink: 0; margin-right: 10px; object-fit: cover; border-radius: 4px; }
.share-card .share-info { display: flex; flex-direction: column; justify-content: center; overflow: hidden; }
.share-card .share-title-line { display: flex; align-items: center; gap: 8px; }
.share-card .share-title { overflow: hidden; color: #1a1a1a; font-size: 15px; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.share-card .share-subtitle { overflow: hidden; margin-top: 4px; color: #888; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.movie-card-vertical { position: relative; display: flex; height: 120px; margin-top: 10px; overflow: hidden; color: white; border-radius: 8px; cursor: pointer; }
.movie-card-vertical .cover-bg { position: absolute; top: 10px; left: 10px; width: 100px; height: 90%; overflow: hidden; }
.movie-card-vertical .cover-bg img { width: auto; max-width: none; height: 95%; object-fit: cover; object-position: left; border-radius: 6px; }
.movie-card-vertical .info-wrapper { display: flex; justify-content: space-between; width: 10px; flex-grow: 1; padding: 12px 15px 12px 90px; }
.movie-card-vertical .info-main { display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; padding: 5px 0; }
.movie-card-vertical .share-title { display: flex; align-items: center; gap: 8px; overflow: hidden; margin: 0; color: white; font-size: 17px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.movie-card-vertical .rating-row { display: flex; align-items: center; gap: 6px; }
.movie-card-vertical .rating-score { font-size: 14px; font-weight: bold; }
.movie-card-vertical .details-row { overflow: hidden; color: rgba(255,255,255,0.8); font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.movie-card-vertical .category-tag { display: inline-block; margin-right: 6px; padding: 2px 6px; color: black; font-size: 12px; font-weight: 500; background-color: rgba(255,255,255,0.8); border-radius: 4px; }
.movie-card-vertical .info-action { display: flex; flex-direction: column; align-items: center; justify-content: center; flex-shrink: 0; padding-left: 10px; color: white; }
.movie-card-vertical .action-icon .icon-svg { width: 24px; height: 24px; color: currentColor; }
.movie-card-vertical .action-text { margin-top: 2px; font-size: 12px; }
.rating-stars-wrapper { position: relative; display: inline-flex; }
.stars-background, .stars-foreground { display: flex; }
.stars-foreground { position: absolute; top: 0; left: 0; overflow: hidden; white-space: nowrap; }
.rating-stars-wrapper .icon-svg { width: 1em; height: 1em; flex-shrink: 0; font-size: 18px; }
.stars-foreground .icon-svg { color: #ffb400; }
.stars-background .icon-svg { color: rgba(255,255,255,0.5); }
.douban-logo { display: inline-block; padding: 2px 4px; color: white; font-size: 15px; font-weight: bold; line-height: 1; background-color: #007722; border-radius: 3px; }
.login-prompt { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; width: 100%; margin-top: 10px; padding: 20px; color: #888; background-color: #f7f7f7; border: 1px dashed #ddd; border-radius: 8px; cursor: pointer; }
.login-prompt:hover { background-color: #efefef; }
.login-prompt .icon-svg { width: 24px; height: 24px; color: #aaa; }
.login-prompt span { font-size: 14px; }
@media (max-width: 600px) {
  .post-item {
    grid-template-columns: 36px minmax(0, 1fr);
    column-gap: 9px;
    padding-right: 11px;
    padding-left: 11px;
  }

  .post-author-avatar {
    width: 36px;
    height: 36px;
  }

  .author-name {
    font-size: 14px;
  }

  .post-type-badge {
    min-height: 26px;
    padding-right: 8px;
    padding-left: 8px;
    font-size: 11px;
  }

  .post-header-actions {
    top: 25px;
    right: 11px;
  }

  .post-topline {
    padding-right: 94px;
  }

  .post-actions-menu-bottom .actions-btn {
    width: 32px;
    height: 32px;
  }

  .post-item-with-author > .interaction-section .likes {
    margin-left: 45px;
    width: calc(100% - 45px);
  }

  .post-item > .interaction-section .likes {
    padding-left: 10px;
  }

  .post-item-with-author > .post-meta {
    width: 100%;
    margin-left: 0;
    padding-left: 45px;
  }

  .comment-form {
    gap: 7px;
  }

  .comment-submit-button {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
  }
}
.modal-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.6); display: flex; justify-content: center; align-items: center; z-index: 3000; }
.modal-content { background-color: white; padding: 25px 30px; border-radius: 12px; box-shadow: 0 5px 15px rgba(0,0,0,0.3); width: 85%; max-width: 400px ;position: relative; }
.post-editor-modal { max-height: 88vh; box-sizing: border-box; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #cbd5e1 transparent; }
.modal-content h2 { margin-top: 0; margin-bottom: 20px; text-align: center; font-size: 20px; }
.form-group { display: flex; align-items: center; margin-bottom: 12px; }
.form-group label { flex-shrink: 0; width: 80px; text-align: left; margin-right: 10px; font-size: 15px; color: #555; }
.form-group input, .form-group textarea, .form-group select, .select-wrapper { flex-grow: 1; width: 100%; }
.form-group input, .form-group textarea, .form-group select { padding: 10px; font-size: 15px; border: 1px solid #ddd; border-radius: 6px; box-sizing: border-box; font-family: inherit; }
.form-group.full-width { flex-direction: column; align-items: stretch; }
.form-group.full-width label { text-align: left; width: auto; margin-bottom: 8px; }
.form-group textarea { resize: vertical; min-height: 80px; }
.select-wrapper { position: relative; display: inline-block; }
.select-wrapper::after { content: ''; position: absolute; top: 50%; right: 12px; transform: translateY(-50%); width: 0; height: 0; border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 6px solid #888; pointer-events: none; }
.form-group select { -webkit-appearance: none; -moz-appearance: none; appearance: none; background-color: white; }
.form-group-checkbox { display: flex; align-items: center; margin-top: 5px; margin-bottom: 15px; }
.form-group-checkbox input { width: auto; margin-right: 8px; }
.form-group-checkbox label { margin: 0; font-size: 14px; color: #555; cursor: pointer; }
.action-btn { width: 100%; padding: 12px; font-size: 16px; font-weight: bold; color: white; background-color: var(--theme-color); border: none; border-radius: 6px; cursor: pointer; transition: background-color 0.2s; }
.action-btn:hover { background-color: #168a14; }
.action-btn:disabled { background-color: #9edc9e; cursor: not-allowed; }
.close-btn { position: absolute; top: 10px; right: 10px; font-size: 24px; color: #aaa; cursor: pointer; line-height: 1; }
.post-modal-tabs { display: flex; border-bottom: 1px solid #eee; margin-bottom: 20px; }
.post-modal-tabs button { flex-grow: 1; padding: 10px; border: none; background: none; cursor: pointer; font-size: 15px; color: #888; border-bottom: 3px solid transparent; }
.post-modal-tabs button.active { color: var(--theme-color); border-bottom-color: var(--theme-color); font-weight: bold; }
.image-uploader { display: grid; grid-template-columns: repeat(auto-fill, minmax(80px, 1fr)); gap: 10px; }
.preview-item { position: relative; width: 80px; height: 80px; }
.preview-item img { width: 100%; height: 100%; object-fit: cover; border-radius: 6px; }
.remove-btn { position: absolute; top: -5px; right: -5px; width: 20px; height: 20px; background-color: rgba(0,0,0,0.6); color: white; border: none; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: 12px; line-height: 1; }
.upload-placeholder { width: 80px; height: 80px; background-color: #f7f7f7; border: 2px dashed #ddd; border-radius: 6px; display: flex; align-items: center; justify-content: center; cursor: pointer; }
.upload-placeholder .icon-svg { width: 30px; height: 30px; color: #bbb; }
.loading-overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: white; display: flex; justify-content: center; align-items: center; z-index: 9000; }
.spinner { width: 40px; height: 40px; border: 4px solid #f3f3f3; border-top: 4px solid var(--theme-color); border-radius: 50%; animation: spin 1s linear infinite; }
.load-more-indicator { text-align: center; padding: 20px 0; font-size: 14px; color: #888; }
.search-result-indicator { text-align: center; padding: 120px 0; font-size: 14px; color: #888; background-color: #fafafa; border-bottom: 1px solid #f1f1f1; }
@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
.notification-toast { position: fixed; top: 60px; left: 50%; transform: translateX(-50%); background-color: #323232; color: white; padding: 12px 20px; border-radius: 8px; z-index: 9999; font-size: 14px; box-shadow: 0 4px 12px rgba(0,0,0,0.15); }
.toast-enter-active, .toast-leave-active { transition: opacity 0.3s, transform 0.3s; }
.toast-enter-from, .toast-leave-to { opacity: 0; transform: translate(-50%, -20px); }
.fade-enter-active,.fade-leave-active{transition:all .3s ease}
.fade-enter-from,.fade-leave-to{opacity:0}
.filter-controls-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    padding: 10px 15px; 
    background-color: white;
    overflow-x: hidden; 
  }
.filter-tabs {
    position: relative; 
    display: flex;
    overflow-x: auto;
    padding-right: 20px;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
.filter-tabs::-webkit-scrollbar {
    display: none;
  }
.tab-button {
    flex-shrink: 0; 
    padding: 8px 12px;
    border: none;
    background: none;
    font-size: 15px;
    color: #606266;
    cursor: pointer;
    position: relative;
    transition: color 0.2s ease;
    white-space: nowrap; /* 防止文字换行 */
  }
.tab-button:hover {
    color: #303133;
  }
.tab-button:not(:first-child) { margin-left: 15px; }
.tab-button.active {
    color: var(--theme-color);
    font-weight: bold;
  }
.tab-button.active::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 50%; /* 下划线宽度 */
    height: 3px;
    background-color: var(--theme-color);
    border-radius: 2px;
  }
.advanced-filter-toggle-btn { flex-shrink: 0;  margin-left: 15px;padding-right: 15px;  position: relative; z-index: 2;display: flex; align-items: center; gap: 4px; background-color: #f5f5f5; border: none; padding: 6px 10px; border-radius: 15px; font-size: 13px; color: #555; cursor: pointer; transition: background-color 0.2s; }
.advanced-filter-toggle-btn:hover { background-color: #e9e9e9; }
.advanced-filter-toggle-btn .icon-svg { width: 14px; height: 14px; transition: transform 0.3s ease-out; }
.advanced-filter-toggle-btn.open .icon-svg { transform: rotate(180deg); }
.advanced-filter-panel { background-color: #fafafa; border-bottom: 0px solid #f1f1f1; max-height: 0; overflow: hidden; transition: max-height 0.4s ease-out, padding 0.4s ease-out, border-color 0.4s ease-out; padding-left: 15px; padding-right: 15px; padding-top: 0; padding-bottom: 0; border-top: 1px solid transparent; }
.advanced-filter-panel.open { max-height: 500px; padding-top: 10px; padding-bottom: 15px; border-top-color: #f1f1f1;}
.filter-row { display: flex; align-items: baseline; margin-top: 12px; }
.filter-row:first-child { margin-top: 5px; }
.filter-label { flex-shrink: 0; width: 45px; font-size: 14px; color: #666; font-weight: 500; }
.filter-options { display: flex; flex-wrap: wrap; gap: 8px 12px; flex-grow: 1; }
.filter-btn { background: #f0f0f0; border: none; font-size: 13px; color: #333; cursor: pointer; padding: 5px 12px; border-radius: 15px; transition: all 0.2s ease; }
.filter-btn:hover { background-color: #e0e0e0; }
.filter-btn.active { background-color: #333; color: white; font-weight: bold; }
.music-player{position:fixed;z-index:2000;bottom:0;left:0;right:0;max-width:600px;margin:0 auto;height:60px;background-color:rgba(255,255,255,.95);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid #e0e0e0;display:flex;align-items:center;padding:0 15px;transform:translateY(0);transition:transform .3s ease-in-out}
.slide-enter-active,.slide-leave-active{transition:transform .3s ease-in-out}
.slide-enter-from,.slide-leave-to{transform:translateY(100%)}
.player-cover{width:45px;height:45px;border-radius:50%;object-fit:cover;margin-right:12px;flex-shrink:0}
.player-cover.playing{animation:spin 8s linear infinite}
.player-info{flex-grow:1;overflow:hidden;margin-right:10px;}
.player-info .title{font-size:15px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.player-info .artist{font-size:12px;color:#888}
.player-controls{display:flex;align-items:center;gap:10px}
.player-controls .control-btn{width:24px;height:24px;color:#333;cursor:pointer}
.progress-bar-container{position:absolute;top:-1px;left:0;width:100%;height:2px;background-color:#e0e0e0}
.progress-bar{height:100%;background-color:var(--theme-color);transition:width .1s linear}
.site-player-history-notice {
  position: relative;
  z-index: 1;
  margin: 12px 14px 0;
  padding: 11px 14px;
  border-radius: 10px;
  background: rgba(99, 102, 241, .09);
  color: #4f46e5;
  font-size: 13px;
  line-height: 1.7;
  overflow-wrap: anywhere;
}
body.site-dark-mode .site-player-history-notice {
  color: #c4b5fd;
  background: rgba(139, 92, 246, .14);
}
.image-viewer-overlay{position:fixed;z-index:2000;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.9);display:flex;justify-content:center;align-items:center}
.image-viewer-overlay img{max-width:95vw;max-height:95vh;object-fit:contain}
.viewer-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;background-color:rgba(30,30,30,.6);color:white;border-radius:50%;display:flex;justify-content:center;align-items:center;cursor:pointer;user-select:none}
.viewer-nav.prev{left:20px}
.viewer-nav.next{right:20px}
.viewer-nav .icon-svg{width:20px;height:20px;color:white}
.viewer-counter{position:absolute;bottom:20px;color:white;font-size:16px;background:rgba(0,0,0,.5);padding:5px 10px;border-radius:15px}
.lyrics-overlay{position:fixed;z-index:2500;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.8);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;flex-direction:column;justify-content:center;align-items:center;color:#ccc;padding:20px;box-sizing:border-box}
.lyrics-container{height:60vh;width:100%;overflow:hidden;text-align:center}
.lyrics-list{list-style:none;padding:0;margin:0;transition:transform .5s ease-out}
.lyrics-list li{padding:15px 0;font-size:18px;line-height:1.5;transition:color .3s,font-size .3s}
.lyrics-list li.active{color:white;font-weight:bold;font-size:20px}
.lyrics-info{position:absolute;top:5%;text-align:center;color:white}
.lyrics-info h3{margin:0;font-size:22px}
.lyrics-info p{margin:5px 0 0;font-size:16px;color:#aaa}
.iframe-viewer-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.8); z-index: 4000; display: flex; justify-content: center; align-items: center; padding: 0; box-sizing: border-box; transition: padding 0.3s ease; }
.iframe-viewer-content { width: 100%; height: 100%; border: none; border-radius: 0; transition: border-radius 0.3s ease; }
@media screen and (min-width: 768px) {.iframe-viewer-overlay {padding: 50px; } .iframe-viewer-content { border-radius: 10px; box-shadow: 0 5px 20px rgba(0, 0, 0, 0.5); }}
.iframe-viewer-close-btn {position: absolute; top: 15px; right: 15px; background-color: rgba(0, 0, 0, 0.6); color: #ffffff; border: none; border-radius: 100%; cursor: pointer; font-size: 18px; font-weight: bold; line-height: 1; width: auto; height: 40px; box-sizing: border-box; display: flex; justify-content: center; align-items: center; transition: background-color .2s, top .3s ease, right .3s ease;}
.iframe-viewer-close-btn:hover {background-color: rgba(244, 67, 54, 0.8);}
@media screen and (min-width: 768px) { .iframe-viewer-close-btn { top: 25px; right: 25px; } }
.icon-svg { display: inline-block; width: 1em; height: 1em; vertical-align: -0.125em;font-size:25px }
.admin-panel-modal {
  width: min(96vw, 1180px) !important;
  max-width: 1180px !important;
  height: min(94vh, 900px);
  max-height: 94vh;
  flex-direction: column;
  box-sizing: border-box;
  padding: 24px 28px;
  color: #0f172a;
  background: rgba(255, 255, 255, .97);
  border: 1px solid rgba(226, 232, 240, .9);
  border-radius: 28px;
  box-shadow: 0 22px 65px rgba(15, 23, 42, .16);
}
:where(.admin-panel-modal button, .admin-panel-modal input, .admin-panel-modal select):not(.serene-admin *) { font: inherit; }
.admin-console-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-bottom: 16px; border-bottom: 1px solid #eef2f7; }
.admin-console-header h2 { margin: 6px 0 0; color: #0f172a; font-size: 28px; font-weight: 900; letter-spacing: -.045em; }
.admin-console-badge-row { display: flex; align-items: center; gap: 9px; }
.admin-console-badge { padding: 3px 9px; color: #047857; font-size: 10px; font-weight: 900; letter-spacing: .075em; text-transform: uppercase; background: #ecfdf5; border: 1px solid #bbf7d0; border-radius: 999px; }
.admin-console-live-dot { width: 7px; height: 7px; background: #57cfb3; border-radius: 50%; box-shadow: 0 0 0 4px rgba(16, 185, 129, .08); }
.admin-console-header-actions { gap: 8px; }
.admin-console-header-actions > button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 34px; padding: 7px 11px; border-radius: 11px; cursor: pointer; }
.admin-console-header-actions svg { width: 14px; height: 14px; }
.admin-console-primary-btn { color: #fff; background: #059669; border: 1px solid #059669; }
.admin-console-code-btn { color: #475569; background: #f1f5f9; border: 1px solid transparent; }
.admin-panel-close { width: 34px; padding: 0 !important; color: #64748b; background: #fff; border: 1px solid #e2e8f0; border-radius: 50% !important; }
.admin-panel-close:hover, .admin-console-code-btn:hover { background: #e8eef4; }
.admin-stats-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 9px; margin: 17px 0 16px; }
.admin-stat-card { min-width: 0; padding: 11px 13px; background: rgba(248, 250, 252, .82); border: 1px solid #e5ebf2; border-radius: 17px; transition: border-color .18s, box-shadow .18s; }
.admin-stat-card:hover { border-color: rgba(16, 185, 129, .4); box-shadow: 0 4px 13px rgba(15, 23, 42, .05); }
.admin-stat-card > div { align-items: center; justify-content: space-between; gap: 6px; }
.admin-stat-card span { overflow: hidden; color: #64748b; font-size: 10px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.admin-stat-card i { display: grid; width: 25px; height: 25px; flex: 0 0 25px; place-items: center; color: #10b981; background: #ecfdf5; border-radius: 8px; }
.admin-stat-card i svg { width: 14px; height: 14px; stroke-width: 2; }
.admin-stat-card strong { display: block; margin-top: 5px; color: #0f172a; font-size: 20px; font-weight: 900; letter-spacing: -.035em; }
.admin-stat-card strong small { margin-left: 3px; color: #94a3b8; font-size: 10px; font-weight: 700; letter-spacing: 0; }
.admin-console-navigation { display: flex; flex-direction: column; gap: 10px; padding-bottom: 11px; margin-bottom: 4px; border-bottom: 1px solid #eef2f7; }
.admin-section-tabs { display: flex; align-items: center; gap: 2px; width: max-content; max-width: 100%; padding: 4px; margin: 0; overflow-x: auto; background: #f1f5f9; border-radius: 16px; }
.admin-section-tabs button { display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; color: #64748b; font-size: 12px; font-weight: 800; white-space: nowrap; background: transparent; border: 0; border-radius: 11px; cursor: pointer; }
.admin-section-tabs button svg { width: 14px; height: 14px; }
.admin-section-tabs button.active { color: #059669; background: #fff; box-shadow: 0 1px 5px rgba(15, 23, 42, .08); }
.admin-section-tabs button em { min-width: 17px; padding: 1px 5px; color: #059669; font-size: 10px; font-style: normal; background: #d1fae5; border-radius: 999px; }
.admin-section-tabs button small { color: #94a3b8; font-size: 10px; font-weight: 500; }
.admin-card-style-bar { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 5px 8px; background: #f1f5f9; border-radius: 16px; }
.admin-card-style-bar > span { display: inline-flex; align-items: center; gap: 5px; flex: 0 0 auto; color: #64748b; font-size: 11px; font-weight: 800; }
.admin-card-style-bar svg { width: 13px; height: 13px; color: #10b981; }
.admin-card-style-bar > div { display: flex; align-items: center; gap: 3px; overflow-x: auto; }
.admin-card-style-bar button { padding: 6px 10px; color: #64748b; font-size: 11px; font-weight: 800; white-space: nowrap; background: transparent; border: 1px solid transparent; border-radius: 12px; cursor: pointer; }
.admin-card-style-bar button.active { color: #059669; background: #fff; border-color: rgba(16, 185, 129, .42); box-shadow: 0 1px 4px rgba(15, 23, 42, .05); }
.admin-section { min-width: 0; display: flex; flex: 1; flex-direction: column; }
.admin-console-search { display: flex; align-items: center; gap: 8px; min-width: 0; width: 100%; padding: 0 12px; color: #9aadc2; background: #f8fafc; border: 1px solid #e3eaf2; border-radius: 12px; }
.admin-console-search > svg { width: 17px; height: 17px; flex: 0 0 17px; }
.admin-console-search input { min-width: 0; width: 100%; padding: 10px 0; color: #334155; font-size: 12px; background: transparent; border: 0; outline: 0; }
.admin-console-search input::placeholder { color: #9aadc2; }
.admin-console-search > button { padding: 3px 0; color: #64748b; font-size: 11px; background: transparent; border: 0; cursor: pointer; }
.admin-comment-section > .admin-console-search { margin: 13px 0 10px; }
.admin-user-section > .admin-console-search { margin: 13px 0 10px; }
.admin-comment-status-tabs, .admin-user-filter-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.admin-comment-status-tabs button, .admin-user-filter-tabs button { padding: 6px 11px; color: #64748b; font-size: 11px; font-weight: 800; white-space: nowrap; background: #f1f5f9; border: 0; border-radius: 11px; cursor: pointer; }
.admin-comment-status-tabs button.active, .admin-user-filter-tabs button.active { color: #fff; background: #0f172a; }
.admin-comment-status-tabs button.is-pending { color: #b45309; background: #fff7df; }
.admin-comment-status-tabs button.is-risk { color: #be123c; background: #fff0f3; }
.admin-comment-status-tabs button.active.is-pending { color: #fff; background: #f59e0b; }
.admin-comment-status-tabs button.active.is-approved { color: #fff; background: #059669; }
.admin-comment-status-tabs button.active.is-risk { color: #fff; background: #e11d48; }
.admin-user-filter-tabs button.is-admin { color: #be123c; background: #fff0f3; }
.admin-comment-batch-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 11px; margin-bottom: 11px; color: #334155; font-size: 11px; background: #f8fafc; border: 1px solid #e4ebf2; border-radius: 14px; }
.admin-comment-batch-toolbar > label { display: inline-flex; align-items: center; gap: 7px; font-weight: 800; white-space: nowrap; }
.admin-comment-batch-toolbar input { width: 15px; height: 15px; accent-color: #059669; }
.admin-comment-batch-toolbar > div { display: flex; gap: 5px; }
.admin-comment-batch-toolbar button, .admin-floating-batch-bar button { min-height: 27px; padding: 4px 9px; font-size: 10px; font-weight: 800; border-radius: 8px; cursor: pointer; }
.admin-comment-batch-toolbar .is-approve, .admin-floating-batch-bar .is-approve { color: #fff; background: #059669; border: 1px solid #059669; }
.admin-comment-batch-toolbar .is-reject, .admin-floating-batch-bar .is-reject { color: #b45309; background: #fff7e5; border: 1px solid #fed7aa; }
.admin-comment-batch-toolbar .is-delete { color: #e11d48; background: #fff0f3; border: 1px solid #fecdd3; }
.admin-review-list { min-height: 0; flex: 1; overflow-y: auto; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-content: start; gap: 13px; padding: 1px 3px 16px 1px; scrollbar-width: thin; scrollbar-color: #cbd5e1 transparent; }
.admin-review-list.is-loading { opacity: .62; }
.admin-review-empty { min-height: 140px; grid-column: 1 / -1; color: #94a3b8; background: #f8fafc; border: 1px dashed #dbe5ed; border-radius: 20px; }
.admin-review-card { min-width: 0; padding: 15px; background: #fff; border: 1px solid #e1e8f0; border-radius: 24px; box-shadow: 0 4px 13px rgba(15, 23, 42, .055); cursor: pointer; transition: border-color .18s, box-shadow .18s, transform .18s; }
.admin-review-card:hover { border-color: #b6e7d7; box-shadow: 0 8px 20px rgba(15, 23, 42, .08); transform: translateY(-1px); }
.admin-review-card.is-selected { border-color: #10b981; box-shadow: 0 0 0 2px rgba(16, 185, 129, .12); }
.admin-review-card-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; margin-bottom: 12px; }
.admin-review-author { display: flex; min-width: 0; align-items: center; gap: 10px; }
.admin-review-avatar-wrap { position: relative; flex: 0 0 42px; width: 42px; height: 42px; }
.admin-review-avatar-wrap img, .admin-review-author > .admin-review-avatar-wrap img { display: block; width: 42px; height: 42px; object-fit: cover; border: 2px solid #f1f5f9; border-radius: 16px; }
.admin-review-avatar-wrap > i { position: absolute; right: -1px; bottom: 0; width: 9px; height: 9px; background: #10b981; border: 2px solid #fff; border-radius: 50%; }
.admin-review-author-copy { min-width: 0; }
.admin-review-author-copy > div { display: flex; align-items: center; gap: 6px; min-width: 0; }
.admin-review-author-copy strong { max-width: 140px; overflow: hidden; color: #0f172a; font-size: 13px; font-weight: 900; text-overflow: ellipsis; white-space: nowrap; }
.admin-review-risk { display: inline-flex; align-items: center; gap: 3px; padding: 3px 5px; color: #b45309; font-size: 9px; font-weight: 800; white-space: nowrap; background: #fef3c7; border-radius: 5px; }
.admin-review-risk svg { width: 10px; height: 10px; }
.admin-review-author-copy time { display: flex; align-items: center; gap: 3px; margin-top: 4px; color: #94a3b8; font-size: 10px; white-space: nowrap; }
.admin-review-author-copy time svg { width: 11px; height: 11px; }
.admin-review-card-tools { display: flex; align-items: center; gap: 6px; flex: 0 0 auto; }
.admin-review-status { display: inline-flex; align-items: center; gap: 4px; padding: 6px 8px; font-size: 10px; font-weight: 900; white-space: nowrap; border-radius: 999px; }
.admin-review-status svg { width: 11px; height: 11px; }
.admin-review-status > i { width: 6px; height: 6px; background: currentColor; border-radius: 50%; }
.admin-review-status.is-pending { color: #d97706; background: #fff6dd; }
.admin-review-status.is-approved { color: #059669; background: #e1f9ef; }
.admin-review-status.is-risk, .admin-review-status.is-rejected { color: #e11d48; background: #ffe6ec; }
.admin-review-check { display: grid; width: 28px; height: 28px; place-items: center; color: #94a3b8; background: #f1f5f9; border: 0; border-radius: 12px; cursor: pointer; }
.admin-review-check svg { width: 14px; height: 14px; }
.admin-review-check.active { color: #fff; background: #059669; }
.admin-review-content { min-height: 64px; padding: 13px; margin-bottom: 10px; color: #334155; font-size: 13px; line-height: 1.7; overflow-wrap: anywhere; background: #f8fafc; border: 1px solid #f1f5f9; border-radius: 16px; }
.admin-review-context { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 10px; color: #64748b; font-size: 10px; background: #f1f5f9; border-radius: 11px; }
.admin-review-context > span { display: inline-flex; min-width: 0; align-items: center; gap: 5px; font-weight: 700; }
.admin-review-context > span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-review-context svg { width: 12px; height: 12px; flex: 0 0 12px; color: #10b981; }
.admin-review-context > span:last-child svg { color: #f43f5e; fill: #f43f5e; }
.admin-review-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin-top: 11px; }
.admin-review-actions button { display: inline-flex; align-items: center; justify-content: center; gap: 4px; min-width: 0; min-height: 34px; padding: 6px 4px; font-size: 10px; font-weight: 900; border-radius: 11px; cursor: pointer; }
.admin-review-actions button svg { width: 12px; height: 12px; flex: 0 0 12px; }
.admin-review-actions .is-approve { color: #fff; background: #059669; border: 1px solid #059669; }
.admin-review-actions .is-reject { color: #b45309; background: #fff7e8; border: 1px solid #fed7aa; }
.admin-review-actions .is-reapprove { color: #047857; background: #e5faf2; border: 1px solid #a7f3d0; }
.admin-review-actions .is-delete { color: #e11d48; background: #fff0f3; border: 1px solid #fecdd3; }
.admin-floating-batch-bar { position: sticky; bottom: 8px; z-index: 3; display: flex; align-items: center; gap: 6px; width: max-content; max-width: 100%; padding: 7px 8px 7px 12px; margin: -5px auto 4px; color: #fff; background: rgba(15, 23, 42, .96); border-radius: 999px; box-shadow: 0 8px 24px rgba(15, 23, 42, .22); }
.admin-floating-batch-bar strong { margin-right: 4px; font-size: 11px; }
.admin-floating-batch-bar > button:last-child { display: grid; width: 25px; height: 25px; padding: 0; place-items: center; color: #94a3b8; background: transparent; border: 0; }
.admin-floating-batch-bar > button:last-child svg { width: 13px; height: 13px; }
.admin-post-toolbar { display: flex; gap: 8px; margin: 13px 0 11px; }
.admin-post-toolbar .admin-console-search { flex: 1; }
.admin-post-toolbar select { min-width: 100px; padding: 0 9px; color: #475569; font-size: 11px; background: #f8fafc; border: 1px solid #e3eaf2; border-radius: 11px; outline: 0; }
.admin-post-batch-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 10px; margin-bottom: 10px; color: #475569; font-size: 10px; background: #f8fafc; border: 1px solid #e4ebf2; border-radius: 12px; }
.admin-post-batch-toolbar > label { display: inline-flex; align-items: center; gap: 6px; font-weight: 800; }
.admin-post-batch-toolbar input { width: 15px; height: 15px; accent-color: #059669; }
.admin-post-batch-toolbar > div { display: flex; gap: 5px; }
.admin-post-batch-toolbar button { min-height: 29px; padding: 5px 8px; color: #047857; font-size: 9px; font-weight: 800; background: #ecfdf5; border: 1px solid #bbf7d0; border-radius: 8px; }
.admin-post-batch-toolbar button.is-delete { color: #e11d48; background: #fff0f3; border-color: #fecdd3; }
.admin-post-card-grid, .admin-user-card-grid { min-height: 0; flex: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-content: start; gap: 13px; overflow-y: auto; padding: 1px 3px 16px 1px; scrollbar-width: thin; scrollbar-color: #cbd5e1 transparent; }
.admin-post-card { min-width: 0; padding: 15px; background: #fff; border: 1px solid #e1e8f0; border-radius: 22px; box-shadow: 0 4px 13px rgba(15, 23, 42, .045); }
.admin-post-card.is-selected { border-color: #10b981; box-shadow: 0 0 0 2px rgba(16,185,129,.11); }
.admin-post-card > header, .admin-post-card > footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.admin-post-card > header > div { display: flex; align-items: center; gap: 5px; }
.admin-post-card > header .admin-post-check { display: grid; width: 26px; height: 26px; padding: 0; place-items: center; color: #94a3b8; background: #f1f5f9; border: 0; border-radius: 9px; }
.admin-post-card > header .admin-post-check.active { color: #fff; background: #059669; }
.admin-post-card > header .admin-post-check svg { width: 12px; height: 12px; }
.admin-post-card > header span { padding: 3px 7px; color: #475569; font-size: 10px; font-weight: 800; background: #f1f5f9; border-radius: 999px; }
.admin-post-card > header em { display: inline-flex; align-items: center; gap: 3px; padding: 3px 6px; color: #b45309; font-size: 10px; font-style: normal; background: #fffbeb; border: 1px solid #fde68a; border-radius: 999px; }
.admin-post-card > header em svg { width: 11px; height: 11px; }
.admin-post-card > header button { padding: 5px 8px; color: #64748b; font-size: 10px; font-weight: 800; background: #f1f5f9; border: 0; border-radius: 8px; cursor: pointer; }
.admin-post-card h3 { margin: 13px 0 8px; color: #0f172a; font-size: 14px; line-height: 1.5; }
.admin-post-card p { margin: 0 0 12px; color: #94a3b8; font-size: 10px; }
.admin-post-card > footer { padding-top: 10px; color: #94a3b8; font-size: 10px; border-top: 1px solid #f1f5f9; }
.admin-post-card > footer > div { display: flex; gap: 10px; }
.admin-post-card > footer span { display: inline-flex; align-items: center; gap: 3px; }
.admin-post-card > footer svg, .admin-post-card-actions svg { width: 12px; height: 12px; }
.admin-post-card-actions { display: flex; gap: 6px; margin-top: 11px; }
.admin-post-card-actions button { display: inline-flex; flex: 1; align-items: center; justify-content: center; gap: 4px; min-height: 30px; color: #047857; font-size: 10px; font-weight: 800; background: #ecfdf5; border: 1px solid #bbf7d0; border-radius: 9px; cursor: pointer; }
.admin-post-card-actions button:last-child { color: #64748b; background: #f8fafc; border-color: #e2e8f0; }
.admin-user-card { min-width: 0; padding: 15px; background: #fff; border: 1px solid #e1e8f0; border-radius: 23px; box-shadow: 0 4px 13px rgba(15, 23, 42, .045); }
.admin-user-card:focus-visible { outline: 2px solid #2563eb; outline-offset: 2px; }
.admin-user-card > header { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.admin-user-card > header > div:last-child { min-width: 0; }
.admin-user-card > header strong { display: inline-block; max-width: 115px; overflow: hidden; color: #0f172a; font-size: 13px; font-weight: 900; text-overflow: ellipsis; vertical-align: middle; white-space: nowrap; }
.admin-user-card > header span { display: inline-block; padding: 3px 6px; margin-left: 5px; color: #64748b; font-size: 9px; background: #f1f5f9; border-radius: 999px; vertical-align: middle; }
.admin-user-card > header span.is-admin { color: #be123c; background: #fff0f3; }
.admin-user-card > header small { display: flex; align-items: center; gap: 3px; margin-top: 5px; overflow: hidden; color: #94a3b8; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.admin-user-card > header small svg { width: 11px; height: 11px; flex: 0 0 11px; }
.admin-user-device-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; padding: 9px; margin-bottom: 10px; background: #f8fafc; border: 1px solid #f1f5f9; border-radius: 15px; }
.admin-user-device-grid span { display: block; color: #94a3b8; font-size: 9px; }
.admin-user-device-grid strong, .admin-user-device-grid code { display: flex; align-items: center; gap: 4px; min-width: 0; margin-top: 4px; overflow: hidden; color: #334155; font-size: 10px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.admin-user-device-grid strong svg { width: 11px; height: 11px; color: #94a3b8; }
.admin-user-device-grid code { font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-weight: 600; }
.admin-user-last { display: flex; align-items: center; justify-content: space-between; gap: 7px; margin-bottom: 10px; padding: 0 2px; color: #64748b; font-size: 10px; }
.admin-user-last span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-user-last time { color: #94a3b8; white-space: nowrap; }
.admin-user-actions { display: grid; grid-template-columns: 1fr 42px; gap: 7px; }
.admin-user-role, .admin-user-delete { display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-height: 33px; font-size: 10px; font-weight: 800; border-radius: 10px; cursor: pointer; }
.admin-user-role { color: #334155; background: #f1f5f9; border: 1px solid #e2e8f0; }
.admin-user-delete { color: #e11d48; background: #fff0f3; border: 1px solid #fecdd3; }
.admin-user-delete svg { width: 13px; height: 13px; }
.admin-post-pagination { display: flex; align-items: center; justify-content: center; gap: 10px; padding-top: 8px; color: #94a3b8; font-size: 10px; }
.admin-post-pagination button { display: inline-flex; align-items: center; gap: 4px; min-height: 29px; padding: 5px 9px; color: #64748b; font-size: 10px; background: #fff; border: 1px solid #e2e8f0; border-radius: 8px; cursor: pointer; }
.admin-post-pagination button:disabled { opacity: .45; cursor: not-allowed; }
.admin-post-pagination svg { width: 12px; height: 12px; }
.admin-audit-overlay, .admin-add-overlay, .admin-history-overlay, .admin-user-detail-overlay, .admin-profile-backdrop { position: fixed; inset: 0; z-index: 3060; display: flex; align-items: flex-end; justify-content: center; padding: 0; background: rgba(15, 23, 42, .42); backdrop-filter: blur(3px); }
.admin-audit-drawer, .admin-add-modal { display: flex; flex-direction: column; width: min(100%, 520px); max-height: 88dvh; overflow: hidden; padding: 18px; background: #fff; border: 1px solid #e2e8f0; border-radius: 26px 26px 0 0; box-shadow: 0 -12px 40px rgba(15, 23, 42, .2); }
.admin-audit-handle { display: block; width: 45px; height: 5px; margin: -5px auto 13px; background: #cbd5e1; border-radius: 999px; }
.admin-audit-drawer > header, .admin-add-modal > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding-bottom: 14px; border-bottom: 1px solid #eef2f7; }
.admin-audit-drawer > header > div, .admin-add-modal > header > div { display: flex; align-items: center; gap: 9px; min-width: 0; }
.admin-audit-drawer > header > div > span, .admin-add-modal > header > div > span { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; color: #059669; background: #ecfdf5; border-radius: 10px; }
.admin-audit-drawer > header svg, .admin-add-modal > header svg { width: 17px; height: 17px; }
.admin-audit-drawer h3, .admin-add-modal h3 { margin: 0; color: #0f172a; font-size: 15px; }
.admin-audit-drawer p, .admin-add-modal p { margin: 4px 0 0; color: #94a3b8; font-size: 10px; }
.admin-audit-drawer > header > button, .admin-add-modal > header > button, .admin-profile-drawer > header > button { display: grid; width: 40px; height: 40px; flex: 0 0 40px; place-items: center; color: #64748b; background: #f1f5f9; border: 0; border-radius: 9px; cursor: pointer; }
.admin-audit-body { display: grid; gap: 13px; padding: 15px 0; }
.admin-audit-body, .admin-add-body, .admin-user-detail-body, .admin-profile-links { min-height: 0; min-width: 0; overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain; }
.admin-audit-profile { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px; background: #f8fafc; border: 1px solid #eef2f7; border-radius: 15px; }
.admin-audit-profile > div { display: flex; align-items: center; gap: 9px; min-width: 0; }
.admin-audit-profile img { width: 42px; height: 42px; object-fit: cover; border-radius: 14px; }
.admin-audit-profile span { display: grid; min-width: 0; gap: 3px; }
.admin-audit-profile strong { color: #0f172a; font-size: 13px; }
.admin-audit-profile small, .admin-audit-profile em { color: #94a3b8; font-size: 10px; font-style: normal; }
.admin-audit-profile b { color: #059669; font-size: 11px; white-space: nowrap; }
.admin-audit-body section > label { display: flex; justify-content: space-between; margin-bottom: 6px; color: #94a3b8; font-size: 10px; font-weight: 700; }
.admin-audit-body section > label small { font-weight: 500; }
.admin-audit-body section > p { padding: 12px; margin: 0; color: #334155; font-size: 13px; line-height: 1.7; overflow-wrap: anywhere; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 14px; }
.admin-audit-risk, .admin-audit-safe, .admin-audit-source { display: flex; align-items: flex-start; gap: 8px; padding: 11px; font-size: 11px; border-radius: 13px; }
.admin-audit-risk { color: #b45309; background: #fffbeb; border: 1px solid #fde68a; }
.admin-audit-risk svg, .admin-audit-safe svg { width: 15px; height: 15px; flex: 0 0 15px; }
.admin-audit-risk span { display: grid; gap: 4px; }
.admin-audit-risk small { color: #64748b; font-size: 10px; line-height: 1.5; }
.admin-audit-safe { align-items: center; color: #047857; background: #ecfdf5; border: 1px solid #bbf7d0; }
.admin-audit-source { display: grid; gap: 4px; color: #475569; background: #f1f5f9; }
.admin-audit-source small { color: #94a3b8; font-size: 9px; }
.admin-audit-source strong { display: flex; align-items: center; gap: 5px; font-size: 11px; }
.admin-audit-source svg { width: 13px; height: 13px; color: #10b981; }
.admin-audit-drawer > footer { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; padding-top: 13px; border-top: 1px solid #eef2f7; }
.admin-audit-drawer > footer button { display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-height: 38px; font-size: 11px; font-weight: 800; border-radius: 11px; cursor: pointer; }
.admin-audit-drawer > footer svg { width: 14px; height: 14px; }
.admin-audit-drawer .is-approve { color: #fff; background: #059669; border: 1px solid #059669; }
.admin-audit-drawer .is-reject { color: #b45309; background: #fff7e8; border: 1px solid #fed7aa; }
.admin-audit-drawer .is-delete { color: #e11d48; background: #fff0f3; border: 1px solid #fecdd3; }
.admin-add-modal { gap: 13px; }
.admin-add-body { display: grid; gap: 13px; }
.admin-add-body > label { display: grid; min-width: 0; gap: 6px; color: #475569; font-size: 11px; font-weight: 800; }
.admin-add-body > label em { color: #e11d48; font-style: normal; }
.admin-add-body > label input { min-width: 0; width: 100%; box-sizing: border-box; padding: 10px 11px; color: #334155; font-size: 12px; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 10px; outline: 0; }
.admin-add-modal fieldset { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding: 0; margin: 0; border: 0; }
.admin-add-modal legend { margin-bottom: 6px; color: #475569; font-size: 11px; font-weight: 800; }
.admin-add-modal fieldset label { display: inline-flex; align-items: center; justify-content: center; gap: 5px; padding: 10px 5px; color: #64748b; font-size: 11px; border: 1px solid #e2e8f0; border-radius: 10px; cursor: pointer; }
.admin-add-modal fieldset label.active { color: #047857; background: #ecfdf5; border-color: #6ee7b7; }
.admin-add-modal fieldset input { accent-color: #059669; }
.admin-add-modal fieldset svg { width: 13px; height: 13px; }
.admin-add-modal > footer { display: flex; justify-content: flex-end; gap: 7px; padding-top: 12px; border-top: 1px solid #eef2f7; }
.admin-add-modal > footer button { min-height: 34px; padding: 7px 13px; color: #64748b; font-size: 11px; font-weight: 800; background: #f1f5f9; border: 0; border-radius: 9px; cursor: pointer; }
.admin-add-modal > footer button:last-child { color: #fff; background: #059669; }
/* The history drawer remains available for post editing. */
.admin-history-panel { display: flex; width: min(470px, 100%); min-width: 0; height: 100%; flex-direction: column; padding: 18px; color: #334155; background: rgba(255,255,255,.98); border-left: 1px solid #e2e8f0; box-shadow: -12px 0 35px rgba(15, 23, 42, .14); }
.admin-history-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding-bottom: 16px; border-bottom: 1px solid #e8edf3; }
.admin-history-header span { color: #10b981; font-size: 9px; font-weight: 900; letter-spacing: .14em; }
.admin-history-header h3 { margin: 4px 0 0; color: #1e293b; font-size: 17px; overflow-wrap: anywhere; }
.admin-history-header button { display: grid; width: 40px; height: 40px; flex: 0 0 40px; place-items: center; color: #64748b; background: #f1f5f9; border: 0; border-radius: 9px; cursor: pointer; }
.admin-history-header svg { width: 15px; height: 15px; }
.admin-history-note { margin: 12px 0; padding: 9px 10px; color: #64748b; font-size: 11px; line-height: 1.5; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 9px; }
.admin-history-list { min-height: 0; flex: 1; overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain; }
.admin-history-empty { display: grid; min-height: 140px; place-items: center; color: #94a3b8; font-size: 12px; text-align: center; }
.admin-history-item { display: flex; align-items: flex-start; gap: 10px; padding: 12px 0; border-bottom: 1px solid #eef2f7; }
.admin-history-item-main { min-width: 0; flex: 1; }
.admin-history-meta { display: flex; justify-content: space-between; gap: 8px; color: #64748b; font-size: 11px; }
.admin-history-meta strong { color: #334155; }
.admin-history-meta time { font-size: 10px; }
.admin-history-item p { margin: 6px 0; overflow: hidden; color: #475569; font-size: 12px; line-height: 1.5; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.admin-history-tags { display: flex; flex-wrap: wrap; gap: 4px; }
.admin-history-tags span { padding: 2px 6px; color: #64748b; font-size: 10px; background: #f1f5f9; border-radius: 999px; }
.admin-history-item > button { padding: 6px 8px; color: #047857; font-size: 11px; font-weight: 700; background: #ecfdf5; border: 1px solid #bbf7d0; border-radius: 7px; cursor: pointer; }
body.site-dark-mode .admin-panel-modal { color: #e4e4e7; background: rgba(24, 24, 27, .98); border-color: rgba(255,255,255,.1); }
body.site-dark-mode .admin-console-header, body.site-dark-mode .admin-console-navigation, body.site-dark-mode .admin-console-header { border-color: rgba(255,255,255,.1); }
body.site-dark-mode .admin-console-header h2, body.site-dark-mode .admin-post-card h3, body.site-dark-mode .admin-review-author-copy strong, body.site-dark-mode .admin-user-card > header strong, body.site-dark-mode .admin-audit-drawer h3, body.site-dark-mode .admin-add-modal h3 { color: #f4f4f5; }
body.site-dark-mode .admin-console-code-btn, body.site-dark-mode .admin-panel-close, body.site-dark-mode .admin-stat-card, body.site-dark-mode .admin-card-style-bar, body.site-dark-mode .admin-section-tabs, body.site-dark-mode .admin-comment-batch-toolbar, body.site-dark-mode .admin-post-batch-toolbar, body.site-dark-mode .admin-console-search, body.site-dark-mode .admin-post-toolbar select, body.site-dark-mode .admin-user-device-grid, body.site-dark-mode .admin-review-content, body.site-dark-mode .admin-review-context, body.site-dark-mode .admin-review-check, body.site-dark-mode .admin-post-card > header button, body.site-dark-mode .admin-post-card > header .admin-post-check, body.site-dark-mode .admin-history-note { color: #d4d4d8; background: #27272a; border-color: rgba(255,255,255,.1); }
body.site-dark-mode .admin-section-tabs button.active, body.site-dark-mode .admin-card-style-bar button.active, body.site-dark-mode .admin-review-card, body.site-dark-mode .admin-post-card, body.site-dark-mode .admin-user-card, body.site-dark-mode .admin-audit-drawer, body.site-dark-mode .admin-add-modal, body.site-dark-mode .admin-history-panel { color: #e4e4e7; background: #202023; border-color: rgba(255,255,255,.1); }
body.site-dark-mode .admin-review-avatar-wrap > i { border-color: #202023; }
body.site-dark-mode .admin-user-device-grid strong, body.site-dark-mode .admin-user-device-grid code { color: #e4e4e7; }
@media (max-width: 900px) {
  .admin-panel-modal { width: min(96vw, 760px) !important; padding: 19px 20px; }
  .admin-stats-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .admin-review-list { grid-template-columns: 1fr; }
  .admin-post-card-grid, .admin-user-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .admin-one-workspace .admin-content.is-management-section { background: transparent; border: 0; box-shadow: none; }
  .admin-panel-modal { width: 100% !important; height: 96vh; max-height: 96vh; padding: 0 14px 16px; border-radius: 20px; overflow-y: auto; overscroll-behavior: contain; }
  .admin-console-header { position: sticky; top: 0; z-index: 5; align-items: flex-start; gap: 8px; margin: 0 -14px; padding: 15px 14px 12px; background: rgba(255,255,255,.95); backdrop-filter: blur(16px); }
  .admin-console-header h2 { font-size: 25px; }
  .admin-console-header-actions { gap: 5px; }
  .admin-console-header-actions .admin-console-code-btn, .admin-console-header-actions .admin-console-primary-btn { display: none; }
  .admin-panel-close { width: 32px; height: 32px; }
  .admin-stats-grid { gap: 7px; margin: 13px 0; }
  .admin-stat-card { min-height: 67px; padding: 9px 10px; border-radius: 14px; }
  .admin-stat-card span { font-size: 9px; }
  .admin-stat-card strong { margin-top: 5px; font-size: 19px; }
  .admin-stat-card i { width: 22px; height: 22px; flex-basis: 22px; }
  .admin-stat-card i svg { width: 12px; height: 12px; }
  .admin-console-navigation { gap: 8px; padding-bottom: 9px; }
  .admin-section-tabs { width: 100%; justify-content: space-between; border-radius: 14px; }
  .admin-section-tabs button { min-height: 40px; flex: 1; justify-content: center; padding: 8px 4px; font-size: 10px; }
  .admin-section-tabs button svg { width: 13px; height: 13px; }
  .admin-card-style-bar { display: block; padding: 5px; overflow-x: auto; scrollbar-width: none; }
  .admin-card-style-bar::-webkit-scrollbar { display: none; }
  .admin-card-style-bar > span { display: none; }
  .admin-card-style-bar > div { width: 100%; justify-content: space-between; }
  .admin-card-style-bar button { min-height: 36px; flex: 1; padding: 6px 5px; font-size: 10px; }
  .admin-comment-section > .admin-console-search { margin-top: 10px; }
  .admin-comment-status-tabs { gap: 5px; overflow-x: auto; flex-wrap: nowrap; }
  .admin-comment-status-tabs button { min-height: 36px; padding: 6px 9px; font-size: 10px; }
  .admin-comment-batch-toolbar { gap: 6px; padding: 8px 9px; }
  .admin-comment-batch-toolbar > label { font-size: 10px; }
  .admin-comment-batch-toolbar > div { gap: 3px; }
  .admin-comment-batch-toolbar button { min-height: 36px; padding: 4px 7px; font-size: 9px; }
  .admin-comment-batch-toolbar > div { display: none; }
  .admin-review-list { gap: 10px; padding-right: 1px; overflow: visible; }
  .admin-review-card { padding: 14px; border-radius: 20px; }
  .admin-review-card-header { margin-bottom: 10px; }
  .admin-review-avatar-wrap, .admin-review-avatar-wrap img { width: 40px; height: 40px; }
  .admin-review-status { padding: 5px 7px; font-size: 9px; }
  .admin-review-check { width: 27px; height: 27px; }
  .admin-review-content { min-height: 0; padding: 13px; font-size: 13px; }
  .admin-review-actions button { min-height: 42px; font-size: 10px; }
  .admin-post-toolbar { display: grid; grid-template-columns: 1fr 1fr; }
  .admin-post-toolbar .admin-console-search { grid-column: 1 / -1; }
  .admin-post-toolbar select { min-height: 38px; }
  .admin-post-batch-toolbar { padding: 8px 9px; }
  .admin-post-batch-toolbar > div { overflow-x: auto; }
  .admin-post-batch-toolbar button { min-height: 36px; white-space: nowrap; }
  .admin-post-card-grid, .admin-user-card-grid { grid-template-columns: 1fr; gap: 10px; overflow: visible; }
  .admin-section { display: block; flex: none; min-height: auto; }
  .admin-mobile-add-user { display: inline-flex; align-items: center; gap: 4px; min-height: 36px; padding: 6px 9px; color: #047857; font-size: 10px; font-weight: 800; background: #ecfdf5; border: 1px solid #bbf7d0; border-radius: 10px; }
  .admin-mobile-add-user svg { width: 13px; height: 13px; }
  .admin-user-filter-row { align-items: center; }
  .admin-user-filter-row .admin-user-filter-tabs { margin-bottom: 0; }
  .admin-user-card, .admin-post-card { border-radius: 20px; }
  .admin-audit-overlay, .admin-add-overlay { align-items: flex-end; }
  .admin-audit-drawer, .admin-add-modal { width: 100%; border-radius: 24px 24px 0 0; }
  .admin-floating-batch-bar { bottom: 4px; }
}
.admin-mobile-add-user { display: none; }
.admin-user-filter-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
.admin-user-filter-row .admin-user-filter-tabs { min-width: 0; }
/* Match the three source design presets with visible, useful differences. */
.admin-review-list.style-social-feed .admin-review-card { border-left: 4px solid #cbd5e1; border-radius: 16px; }
.admin-review-list.style-social-feed .admin-review-card.is-pending { border-left-color: #f59e0b; }
.admin-review-list.style-social-feed .admin-review-card.is-approved { border-left-color: #10b981; }
.admin-review-list.style-social-feed .admin-review-card.is-rejected, .admin-review-list.style-social-feed .admin-review-card.is-risk { border-left-color: #f43f5e; }
.admin-review-list.style-social-feed .admin-review-content { padding: 0; margin: 10px 0; background: transparent; border: 0; }
.admin-review-list.style-social-feed .admin-review-context { padding: 8px 0; background: transparent; border-top: 1px solid #f1f5f9; border-radius: 0; }
.admin-review-list.style-social-feed .admin-review-actions { display: flex; justify-content: flex-end; }
.admin-review-list.style-social-feed .admin-review-actions button { flex: 0 0 auto; min-height: 30px; padding: 5px 10px; border-radius: 8px; }
.admin-review-list.style-linear-compact { gap: 8px; }
.admin-review-list.style-linear-compact .admin-review-card { padding: 11px 12px; border-radius: 15px; box-shadow: none; }
.admin-review-list.style-linear-compact .admin-review-card-header { align-items: center; margin-bottom: 7px; }
.admin-review-list.style-linear-compact .admin-review-avatar-wrap, .admin-review-list.style-linear-compact .admin-review-avatar-wrap img { width: 27px; height: 27px; border-radius: 50%; }
.admin-review-list.style-linear-compact .admin-review-avatar-wrap > i { display: none; }
.admin-review-list.style-linear-compact .admin-review-status { padding: 0; background: transparent; }
.admin-review-list.style-linear-compact .admin-review-status svg { display: none; }
.admin-review-list.style-linear-compact .admin-review-content { min-height: 0; padding: 0; margin: 7px 0; background: transparent; border: 0; font-size: 12px; line-height: 1.55; }
.admin-review-list.style-linear-compact .admin-review-context { padding: 7px 0 0; background: transparent; border-top: 1px solid #f1f5f9; border-radius: 0; }
.admin-review-list.style-linear-compact .admin-review-actions { display: flex; justify-content: flex-end; gap: 12px; margin-top: 7px; }
.admin-review-list.style-linear-compact .admin-review-actions button { min-height: 26px; padding: 0; color: #059669; background: transparent; border: 0; }
.admin-review-list.style-linear-compact .admin-review-actions button.is-reject { color: #d97706; }
.admin-review-list.style-linear-compact .admin-review-actions button.is-delete { color: #e11d48; }
@media (max-width: 700px) {
  body.site-dark-mode .admin-console-header { background: rgba(24,24,27,.95); }
  .admin-review-list.style-social-feed .admin-review-actions button { min-height: 36px; }
  .admin-review-list.style-linear-compact .admin-review-actions button { min-height: 36px; padding: 0 3px; }
  .admin-mobile-add-user { display: inline-flex; }
}
@media (max-width: 480px) {
  .admin-panel-overlay { align-items: stretch; background: #fff; }
  .admin-panel-modal { height: 100dvh; max-height: 100dvh; padding-right: max(12px, env(safe-area-inset-right)); padding-bottom: max(16px, env(safe-area-inset-bottom)); padding-left: max(12px, env(safe-area-inset-left)); border: 0; border-radius: 0; box-shadow: none; }
  .admin-console-header { margin-right: -12px; margin-left: -12px; padding-top: max(13px, env(safe-area-inset-top)); padding-right: max(12px, env(safe-area-inset-right)); padding-left: max(12px, env(safe-area-inset-left)); }
  body.site-dark-mode .admin-panel-overlay { background: #18181b; }
}
/* Source console parity layer: the admin panel intentionally follows the
   data-center-admin reference as a full-page, flat white workspace. */
.admin-panel-overlay {
  overflow-y: auto;
  background: #fff;
  color: #18181b;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "PingFang SC", "Microsoft YaHei", sans-serif;
}
.admin-panel-modal {
  min-height: 100vh;
  height: auto;
  display: block;
  overflow: visible;
  color: #18181b;
  background: #fff;
  box-shadow: none;
}
.admin-console-header {
  position: sticky;
  top: 0;
  z-index: 30;
  padding: 0;
  background: rgba(255,255,255,.92);
  border-bottom: 1px solid #e4e4e7;
  backdrop-filter: blur(18px);
}
.admin-console-header.is-scrolled { box-shadow: 0 4px 14px rgba(24,24,27,.06); }
.admin-console-header-inner {
  width: min(100%, 1280px);
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 32px;
  margin: 0 auto;
  box-sizing: border-box;
}
.admin-console-brand { display: flex; align-items: center; gap: 12px; }
.admin-console-brand > i { width: 8px; height: 24px; flex: 0 0 8px; background: #18181b; border-radius: 999px; }
.admin-console-brand > div { display: grid; gap: 2px; }
.admin-console-header h2 { margin: 0; color: #18181b; font-size: 20px; font-weight: 650; letter-spacing: -.025em; }
.admin-live-status { display: inline-flex; align-items: center; gap: 5px; color: #a1a1aa; font-size: 9px; font-weight: 600; letter-spacing: .02em; }
.admin-live-status > i { width: 6px; height: 6px; border-radius: 50%; background: #10b981; box-shadow: 0 0 0 3px rgba(16,185,129,.1); }
.admin-console-header-actions { display: flex; align-items: center; gap: 16px; }
.admin-console-header-actions .admin-console-search { display: flex; min-width: 280px; width: 280px; min-height: 36px; padding: 0 14px; border: 0; border-radius: 999px; background: #f4f4f5; }
.admin-console-header-actions .admin-console-search input { padding: 8px 0; font-size: 12px; font-weight: 500; }
.admin-console-header-actions .admin-console-search > svg { width: 16px; height: 16px; color: #71717a; }
.admin-refresh-trigger, .admin-mobile-search-trigger { display: grid; width: 32px; height: 32px; flex: 0 0 32px; place-items: center; padding: 0; color: #71717a; background: transparent; border: 0; border-radius: 50%; cursor: pointer; }
.admin-refresh-trigger:hover, .admin-mobile-search-trigger:hover { color: #18181b; background: #f4f4f5; }
.admin-refresh-trigger:disabled { cursor: wait; opacity: .6; }
.admin-refresh-trigger svg, .admin-mobile-search-trigger svg { width: 16px; height: 16px; }
.admin-refresh-trigger.spinning svg { animation: admin-spin .8s linear infinite; }
.admin-mobile-search-trigger { display: none; }
.admin-mobile-search-bar { display: none; padding: 0 14px 10px; }
.admin-mobile-search-bar .admin-console-search { min-height: 36px; padding: 0 12px; border: 0; border-radius: 999px; background: #f4f4f5; }
.admin-mobile-search-bar .admin-console-search input { padding: 8px 0; font-size: 12px; }
.admin-profile-trigger { position: relative; display: block; width: 36px; height: 36px; padding: 0; overflow: hidden; border: 1px solid #e4e4e7; border-radius: 50%; background: #fff; cursor: pointer; }
.admin-profile-trigger img { display: block; width: 100%; height: 100%; object-fit: cover; }
.admin-profile-trigger > i { position: absolute; right: 0; bottom: 0; width: 10px; height: 10px; border: 2px solid #fff; border-radius: 50%; background: #22c55e; }
.admin-console-main { width: min(100%, 1280px); margin: 0 auto; }
.admin-stats-section { padding: 48px 32px; }
.admin-stats-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin: 0; border-top: 1px solid #e4e4e7; border-bottom: 1px solid #e4e4e7; }
.admin-stat-card { min-height: 124px; padding: 24px 32px; background: transparent; border: 0; border-right: 1px solid #e4e4e7; border-radius: 0; box-shadow: none; box-sizing: border-box; transition: background .2s; }
.admin-stat-card:last-child { border-right: 0; }
.admin-stat-card:hover { background: #fafafa; border-color: #e4e4e7; box-shadow: none; }
.admin-stat-card.is-loading strong { position: relative; min-width: 72px; color: transparent; background: linear-gradient(90deg,#f4f4f5 25%,#e4e4e7 50%,#f4f4f5 75%); background-size: 200% 100%; border-radius: 5px; animation: admin-shimmer 1.2s ease-in-out infinite; }
.admin-stat-card.is-loading em { visibility: hidden; }
.admin-stat-card header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 16px; }
.admin-stat-card header span { color: #71717a; font-size: 13px; font-weight: 550; }
.admin-stat-card header svg { width: 18px; height: 18px; color: #a1a1aa; stroke-width: 1.8; }
.admin-stat-card > div { display: flex; align-items: baseline; gap: 12px; }
.admin-stat-card strong { margin: 0; color: #18181b; font-size: 34px; font-weight: 350; letter-spacing: -.04em; }
.admin-stat-card em { padding: 4px 8px; color: #059669; font-size: 11px; font-style: normal; font-weight: 650; background: #ecfdf5; border-radius: 999px; }
.admin-stat-card em.is-negative { color: #e11d48; background: #fff1f2; }
.admin-console-main > .admin-section-tabs { width: auto; max-width: none; display: flex; gap: 32px; padding: 0 32px; margin: 0; overflow-x: auto; background: transparent; border: 0; border-bottom: 1px solid #e4e4e7; border-radius: 0; }
.admin-console-main > .admin-section-tabs button { position: relative; display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: flex-start; gap: 8px; min-height: 48px; padding: 0 0 14px; color: #71717a; font-size: 13px; font-weight: 550; background: transparent; border: 0; border-radius: 0; cursor: pointer; }
.admin-console-main > .admin-section-tabs button:hover { color: #18181b; }
.admin-console-main > .admin-section-tabs button.active { color: #18181b; background: transparent; box-shadow: none; }
.admin-console-main > .admin-section-tabs button.active::after { content: ''; position: absolute; right: 0; bottom: -1px; left: 0; height: 2px; background: #18181b; }
.admin-console-main > .admin-section-tabs button span { padding: 2px 7px; color: #52525b; font-size: 11px; font-weight: 550; background: #f4f4f5; border-radius: 999px; }
.admin-content { padding: 8px 32px 96px; }
.admin-section { display: block; min-height: 0; }
.admin-filter-bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 0; border-bottom: 1px solid #f4f4f5; }
.admin-comment-status-tabs, .admin-user-filter-tabs, .admin-post-categories { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 0; }
.admin-comment-status-tabs button, .admin-user-filter-tabs button, .admin-post-categories button { min-height: 30px; padding: 6px 14px; color: #52525b; font-size: 11px; font-weight: 600; white-space: nowrap; background: #f4f4f5; border: 0; border-radius: 999px; cursor: pointer; }
.admin-comment-status-tabs button.active, .admin-user-filter-tabs button.active, .admin-post-categories button.active { color: #fff; background: #18181b; }
.admin-comment-status-tabs button.is-approved { color: #047857; background: #ecfdf5; }
.admin-comment-status-tabs button.is-approved.active { color: #fff; background: #059669; }
.admin-comment-status-tabs button.is-pending { color: #71717a; background: #f4f4f5; }
.admin-user-filter-tabs button.is-admin { color: #e11d48; background: #fff1f2; }
.admin-user-filter-tabs button.is-admin.active { color: #fff; background: #e11d48; }
.admin-add-user-btn { min-height: 34px; padding: 7px 14px; color: #fff; font-size: 11px; font-weight: 600; background: #059669; border: 0; border-radius: 999px; cursor: pointer; }
.admin-add-user-btn:hover { background: #047857; }
.admin-review-list, .admin-user-list, .admin-post-list { display: block; min-height: 0; overflow: visible; padding: 0; }
.admin-review-list.is-loading { opacity: .6; pointer-events: none; }
.admin-review-row, .admin-user-row, .admin-post-row { display: flex; align-items: flex-start; gap: 16px; padding: 24px 0; border-bottom: 1px solid #f4f4f5; transition: background .2s; }
.admin-review-row:hover, .admin-user-row:hover, .admin-post-row:hover { background: rgba(250,250,250,.8); }
.admin-review-row > img, .admin-user-profile > img { width: 48px; height: 48px; flex: 0 0 48px; object-fit: cover; border: 1px solid #e4e4e7; border-radius: 50%; }
.admin-review-main { min-width: 0; flex: 1; }
.admin-review-main > header, .admin-user-profile header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 6px; }
.admin-review-main > header > div { display: flex; align-items: center; gap: 6px; }
.admin-review-main strong, .admin-user-profile strong { color: #18181b; font-size: 13px; font-weight: 700; }
.admin-review-main header svg { width: 14px; height: 14px; color: #10b981; }
.admin-review-main time, .admin-user-recent time { color: #a1a1aa; font-size: 11px; font-weight: 500; }
.admin-review-main > p { max-width: 760px; margin: 0 0 14px; color: #52525b; font-size: 13px; line-height: 1.7; }
.admin-row-actions { display: flex; align-items: center; gap: 8px; opacity: 0; transition: opacity .2s; }
.admin-review-row:hover .admin-row-actions, .admin-user-row:hover .admin-row-actions, .admin-post-row:hover .admin-row-actions { opacity: 1; }
.admin-row-actions button { display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-height: 30px; padding: 6px 13px; color: #18181b; font-size: 11px; font-weight: 600; border: 0; border-radius: 999px; cursor: pointer; }
.admin-row-actions .is-approve { color: #18181b; background: #f4f4f5; }
.admin-row-actions .is-reject, .admin-row-actions .is-delete { color: #e11d48; background: #fff1f2; }
.admin-row-actions .is-more { width: 30px; padding: 0; color: #a1a1aa; background: transparent; }
.admin-row-actions .is-more svg { width: 17px; height: 17px; }
.admin-comment-section > .admin-pagination, .admin-post-section > .admin-pagination { margin-top: 12px; }
.admin-user-row { align-items: center; gap: 24px; }
.admin-user-profile { display: flex; align-items: center; gap: 16px; min-width: 300px; width: 32%; }
.admin-user-profile > div { min-width: 0; }
.admin-user-profile header { justify-content: flex-start; margin: 0 0 6px; }
.admin-user-profile header span { padding: 2px 6px; color: #e11d48; font-size: 9px; font-weight: 800; letter-spacing: .08em; background: #fff1f2; border-radius: 4px; }
.admin-user-profile small { display: inline-flex; align-items: center; gap: 5px; color: #71717a; font-size: 11px; }
.admin-user-profile small svg, .admin-user-recent svg, .admin-post-main footer svg { width: 13px; height: 13px; color: #a1a1aa; }
.admin-user-recent { flex: 1; min-width: 0; }
.admin-user-recent p { display: flex; align-items: center; gap: 8px; margin: 0 0 6px; overflow: hidden; color: #52525b; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.admin-user-actions { flex: 0 0 auto; }
.admin-user-actions .is-role { background: #f4f4f5; }
.admin-user-actions .is-delete { min-width: 30px; }
.admin-user-actions .is-delete svg { width: 14px; height: 14px; }
.admin-post-filter-bar { align-items: center; }
.admin-post-selects { display: flex; align-items: center; gap: 8px; }
.admin-post-selects label { display: inline-flex; align-items: center; gap: 5px; color: #71717a; font-size: 11px; }
.admin-post-selects select { min-height: 32px; padding: 0 25px 0 10px; color: #52525b; font-size: 11px; background: #fff; border: 1px solid #e4e4e7; border-radius: 999px; outline: 0; appearance: none; }
.admin-post-selects label { position: relative; }
.admin-post-selects label > svg { position: absolute; right: 8px; width: 13px; height: 13px; color: #a1a1aa; pointer-events: none; }
.admin-post-row { align-items: center; justify-content: space-between; gap: 24px; }
.admin-post-main { min-width: 0; flex: 1; }
.admin-post-main > header { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.admin-post-main > header > svg { width: 14px; height: 14px; color: #f59e0b; fill: #f59e0b; }
.admin-post-main > header > span { padding: 3px 8px; color: #52525b; font-size: 10px; font-weight: 600; background: #f4f4f5; border-radius: 4px; }
.admin-post-main h3 { min-width: 0; margin: 0; overflow: hidden; color: #18181b; font-size: 15px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.admin-post-main > footer { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; color: #71717a; font-size: 11px; }
.admin-post-main > footer span { display: inline-flex; align-items: center; gap: 5px; }
.admin-post-main > footer > i { width: 1px; height: 13px; background: #d4d4d8; }
.admin-post-actions { opacity: 0; }
.admin-post-row:hover .admin-post-actions { opacity: 1; }
.admin-post-actions .is-edit { color: #047857; background: #ecfdf5; }
.admin-post-actions .is-pin { color: #a16207; background: #fffbeb; }
.admin-post-actions .is-history { color: #52525b; background: #f4f4f5; }
.admin-post-actions svg { width: 14px; height: 14px; }
.admin-pagination { display: flex; align-items: center; justify-content: center; gap: 12px; color: #a1a1aa; font-size: 11px; }
.admin-pagination button { display: inline-flex; align-items: center; gap: 4px; min-height: 30px; padding: 5px 10px; color: #52525b; font-size: 11px; background: #fff; border: 1px solid #e4e4e7; border-radius: 999px; cursor: pointer; }
.admin-pagination button:disabled { opacity: .45; cursor: not-allowed; }
.admin-pagination button svg { width: 13px; height: 13px; }
.admin-review-empty { display: grid; min-height: 180px; place-items: center; align-content: center; gap: 7px; padding: 20px; color: #a1a1aa; font-size: 12px; text-align: center; background: #fafafa; border: 1px dashed #d4d4d8; border-radius: 14px; }
.admin-review-empty > svg { width: 24px; height: 24px; margin-bottom: 4px; color: #d4d4d8; }
.admin-review-empty > strong { color: #52525b; font-size: 13px; font-weight: 650; }
.admin-review-empty > span { color: #a1a1aa; font-size: 11px; }
.admin-profile-backdrop { align-items: flex-end; justify-content: center; }
.admin-profile-drawer { display: flex; flex-direction: column; width: min(100%, 520px); max-height: 88dvh; overflow: hidden; padding: 18px; color: #3f3f46; background: #fff; border-radius: 26px 26px 0 0; box-shadow: 0 -14px 38px rgba(24,24,27,.2); }
.admin-drawer-handle { display: block; width: 48px; height: 6px; margin: 0 auto 28px; background: #e4e4e7; border-radius: 999px; }
.admin-profile-drawer > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 28px; }
.admin-profile-drawer > header > div { display: flex; align-items: center; gap: 16px; min-width: 0; }
.admin-profile-drawer > header img { width: 64px; height: 64px; object-fit: cover; border: 1px solid #e4e4e7; border-radius: 50%; }
.admin-profile-drawer > header span { display: grid; gap: 5px; }
.admin-profile-drawer > header strong { color: #18181b; font-size: 18px; font-weight: 700; }
.admin-profile-drawer > header small { color: #71717a; font-size: 12px; font-weight: 500; }
.admin-profile-drawer > header em { padding: 6px 10px; color: #52525b; font-size: 10px; font-style: normal; font-weight: 700; letter-spacing: .08em; background: #f4f4f5; border-radius: 999px; }
.admin-profile-action-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 24px; }
.admin-profile-action-grid button { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; min-height: 108px; color: #52525b; background: #fafafa; border: 0; border-radius: 16px; cursor: pointer; }
.admin-profile-action-grid button:hover { background: #f4f4f5; }
.admin-profile-action-grid svg { width: 24px; height: 24px; color: #18181b; }
.admin-profile-action-grid span { font-size: 12px; font-weight: 600; }
.admin-profile-links { display: grid; gap: 2px; }
.admin-profile-links button { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 48px; padding: 0 14px; color: #52525b; text-align: left; background: transparent; border: 0; border-radius: 12px; cursor: pointer; }
.admin-profile-links button:hover { background: #fafafa; color: #18181b; }
.admin-profile-links button span { font-size: 12px; font-weight: 600; }
.admin-profile-links button svg { width: 18px; height: 18px; color: #a1a1aa; }
.admin-profile-links hr { width: calc(100% - 28px); height: 1px; margin: 8px 14px; border: 0; background: #f4f4f5; }
.admin-profile-links .is-logout { justify-content: flex-start; gap: 10px; margin-top: 8px; color: #e11d48; }
.admin-profile-links .is-logout svg { color: currentColor; }
.admin-drawer-enter-active, .admin-drawer-leave-active { transition: opacity 220ms ease; }
.admin-drawer-enter-active > [role="dialog"], .admin-drawer-leave-active > [role="dialog"] { transition: transform 220ms cubic-bezier(.22, 1, .36, 1); }
.admin-drawer-enter-from, .admin-drawer-leave-to { opacity: 0; }
.admin-drawer-enter-from > [role="dialog"], .admin-drawer-leave-to > [role="dialog"] { transform: translateY(100%); }
@media (prefers-reduced-motion: reduce) { .admin-drawer-enter-active, .admin-drawer-leave-active, .admin-drawer-enter-active > [role="dialog"], .admin-drawer-leave-active > [role="dialog"] { transition: none; } }
.admin-panel-modal button:focus-visible, .admin-panel-modal input:focus-visible, .admin-panel-modal select:focus-visible { outline: 2px solid #18181b; outline-offset: 3px; }
@keyframes admin-spin { to { transform: rotate(360deg); } }
@keyframes admin-shimmer { to { background-position: -200% 0; } }
.admin-panel-modal .admin-comment-status-tabs button.active.is-pending { color: #fff; background: #18181b; }
body.site-dark-mode .admin-panel-overlay,
body.site-dark-mode .admin-panel-modal { color: #f4f4f5; background: #18181b; }
body.site-dark-mode .admin-console-header { color: #f4f4f5; background: rgba(24,24,27,.92); border-bottom-color: rgba(255,255,255,.1); }
body.site-dark-mode .admin-console-brand > i { background: #f4f4f5; }
body.site-dark-mode .admin-console-header h2,
body.site-dark-mode .admin-stat-card strong,
body.site-dark-mode .admin-review-main strong,
body.site-dark-mode .admin-user-profile strong,
body.site-dark-mode .admin-post-main h3,
body.site-dark-mode .admin-profile-drawer > header strong { color: #f4f4f5; }
body.site-dark-mode .admin-live-status,
body.site-dark-mode .admin-stat-card header span,
body.site-dark-mode .admin-stat-card header svg,
body.site-dark-mode .admin-review-main time,
body.site-dark-mode .admin-user-recent time,
body.site-dark-mode .admin-user-profile small,
body.site-dark-mode .admin-post-main > footer,
body.site-dark-mode .admin-profile-drawer > header small { color: #a1a1aa; }
body.site-dark-mode .admin-stat-card,
body.site-dark-mode .admin-console-main > .admin-section-tabs,
body.site-dark-mode .admin-console-main > .admin-section-tabs button,
body.site-dark-mode .admin-console-main > .admin-section-tabs button.active,
body.site-dark-mode .admin-review-row,
body.site-dark-mode .admin-user-row,
body.site-dark-mode .admin-post-row { color: inherit; background: transparent; border-color: #e4e4e7; box-shadow: none; }
body.site-dark-mode .admin-console-main > .admin-section-tabs,
body.site-dark-mode .admin-review-row,
body.site-dark-mode .admin-user-row,
body.site-dark-mode .admin-post-row,
body.site-dark-mode .admin-stats-grid { border-color: rgba(255,255,255,.1); }
body.site-dark-mode .admin-console-main > .admin-section-tabs button { color: #a1a1aa; }
body.site-dark-mode .admin-console-main > .admin-section-tabs button.active { color: #f4f4f5; }
body.site-dark-mode .admin-console-main > .admin-section-tabs button span,
body.site-dark-mode .admin-row-actions .is-role,
body.site-dark-mode .admin-row-actions .is-history,
body.site-dark-mode .admin-refresh-trigger:hover,
body.site-dark-mode .admin-mobile-search-trigger:hover { color: #d4d4d8; background: #27272a; }
body.site-dark-mode .admin-console-main > .admin-section-tabs button.active::after { background: #f4f4f5; }
body.site-dark-mode .admin-console-header-actions .admin-console-search,
body.site-dark-mode .admin-row-actions .is-role,
body.site-dark-mode .admin-row-actions .is-history { color: #52525b; background: #f4f4f5; border-color: transparent; }
body.site-dark-mode .admin-console-header-actions .admin-console-search,
body.site-dark-mode .admin-mobile-search-bar .admin-console-search { color: #d4d4d8; background: #27272a; }
body.site-dark-mode .admin-row-actions .is-role,
body.site-dark-mode .admin-row-actions .is-history { color: #d4d4d8; background: #27272a; }
body.site-dark-mode .admin-console-header-actions .admin-console-search input,
body.site-dark-mode .admin-mobile-search-bar .admin-console-search input { color: #f4f4f5; }
body.site-dark-mode .admin-profile-trigger { border-color: rgba(255,255,255,.14); }
body.site-dark-mode .admin-stat-card:hover,
body.site-dark-mode .admin-review-row:hover,
body.site-dark-mode .admin-user-row:hover,
body.site-dark-mode .admin-post-row:hover { background: rgba(39,39,42,.62); }
body.site-dark-mode .admin-review-main > p,
body.site-dark-mode .admin-user-recent p { color: #d4d4d8; }
body.site-dark-mode .admin-review-empty { color: #a1a1aa; background: #202023; border-color: #3f3f46; }
body.site-dark-mode .admin-review-empty > strong { color: #e4e4e7; }
body.site-dark-mode .admin-profile-drawer { background: #202023; border-color: #3f3f46; }
body.site-dark-mode .admin-profile-drawer > header em { color: #d4d4d8; background: #27272a; }
body.site-dark-mode .admin-profile-action-grid button { color: #d4d4d8; background: #27272a; }
body.site-dark-mode .admin-profile-action-grid button:hover,
body.site-dark-mode .admin-profile-links button:hover { background: #2f2f33; color: #f4f4f5; }
body.site-dark-mode .admin-profile-links hr { background: #3f3f46; }
@media (max-width: 800px) {
  .admin-console-header-inner, .admin-stats-section, .admin-content { padding-right: 20px; padding-left: 20px; }
  .admin-stats-section { padding-top: 24px; padding-bottom: 36px; }
  .admin-stat-card { padding: 20px; }
  .admin-console-main > .admin-section-tabs { padding-right: 20px; padding-left: 20px; gap: 24px; }
  .admin-user-profile { min-width: 220px; }
}
@media (max-width: 620px) {
  .admin-console-header-inner { height: 60px; padding-right: 14px; padding-left: 14px; }
  .admin-console-header-actions { gap: 8px; }
  .admin-console-header-actions .admin-console-search { display: none; }
  .admin-mobile-search-trigger { display: grid; }
  .admin-mobile-search-bar { display: block; }
  .admin-console-header h2 { font-size: 18px; }
  .admin-stats-section { padding: 20px 14px 28px; }
  .admin-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-stat-card { min-height: 96px; padding: 16px; }
  .admin-stat-card:nth-child(2) { border-right: 0; }
  .admin-stat-card:nth-child(-n+2) { border-bottom: 1px solid #e4e4e7; }
  .admin-stat-card strong { font-size: 28px; }
  .admin-content { padding: 8px 14px 48px; }
  .admin-console-main > .admin-section-tabs { padding-right: 14px; padding-left: 14px; gap: 22px; }
  .admin-console-main > .admin-section-tabs button { min-height: 44px; padding-bottom: 11px; font-size: 12px; }
  .admin-filter-bar { align-items: flex-start; flex-direction: column; gap: 12px; }
  .admin-user-filter-bar, .admin-post-filter-bar { flex-direction: row; align-items: center; overflow-x: auto; }
  .admin-add-user-btn { flex: 0 0 auto; }
  .admin-review-row, .admin-user-row, .admin-post-row { gap: 12px; padding: 20px 0; }
  .admin-review-row > img, .admin-user-profile > img { width: 40px; height: 40px; flex-basis: 40px; }
  .admin-review-main > header { align-items: flex-start; flex-direction: column; gap: 4px; }
  .admin-review-main > p { font-size: 12px; }
  .admin-row-actions { opacity: 1; }
  .admin-row-actions button { min-height: 36px; padding: 6px 11px; }
  .admin-user-row { align-items: flex-start; flex-wrap: wrap; }
  .admin-user-profile { width: 100%; min-width: 0; }
  .admin-user-recent { width: calc(100% - 52px); margin-left: 52px; }
  .admin-user-actions { width: calc(100% - 52px); margin-left: 52px; }
  .admin-user-actions button { flex: 1; }
  .admin-post-row { align-items: flex-start; flex-direction: column; }
  .admin-post-actions { width: 100%; }
  .admin-post-actions button { flex: 1; }
  .admin-post-main > footer { gap: 9px; }
  .admin-post-main > footer > i { display: none; }
  .admin-profile-drawer { padding-right: 16px; padding-left: 16px; border-radius: 24px 24px 0 0; }
}
@media (prefers-reduced-motion: reduce) {
  .admin-refresh-trigger.spinning svg, .admin-stat-card.is-loading strong { animation: none; }
  .admin-review-row, .admin-user-row, .admin-post-row, .admin-row-actions { transition: none; }
}
/* Dropdowns must escape the management toolbar's rounded card.  The reference
   select is an overlay, so clipping it inside the mobile filter bar would make
   the second option disappear. */
/* Last dark-mode guard: responsive parity rules above intentionally describe
   the light reference first, so re-assert surfaces after those rules. */
body.site-dark-mode .admin-one-workspace .admin-user-card,
body.site-dark-mode .admin-one-workspace .admin-post-card,
body.site-dark-mode .admin-one-workspace .admin-review-list,
body.site-dark-mode .admin-one-workspace .admin-user-filter-bar,
body.site-dark-mode .admin-one-workspace .admin-data-table-wrap { background: #111827; border-color: #334155; box-shadow: 0 8px 24px rgba(2,6,23,.24); }
body.site-dark-mode .admin-one-workspace .admin-review-row { color: #e2e8f0; background: #111827; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-review-row:hover,
body.site-dark-mode .admin-one-workspace .admin-user-card:hover,
body.site-dark-mode .admin-one-workspace .admin-post-card:hover { background: #172033; }
body.site-dark-mode .admin-one-workspace .admin-user-filter-tabs,
body.site-dark-mode .admin-one-workspace .admin-view-switch { background: #0f172a; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-user-filter-tabs button.active,
body.site-dark-mode .admin-one-workspace .admin-post-categories button.active,
body.site-dark-mode .admin-one-workspace .admin-comment-status-tabs button.active,
body.site-dark-mode .admin-one-workspace .admin-view-switch button.active { color: #fff; background: #2563eb; border-color: #2563eb; }
body.site-dark-mode .admin-one-workspace .admin-user-device-grid { color: #cbd5e1; background: #0f172a; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-user-device-grid strong { color: #e2e8f0; }
body.site-dark-mode .admin-one-workspace .admin-user-actions,
body.site-dark-mode .admin-one-workspace .admin-post-card-actions { border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-user-role,
body.site-dark-mode .admin-one-workspace .admin-post-card-actions button:last-child { color: #cbd5e1; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-post-card-actions button:first-child { color: #bfdbfe; background: #172554; border-color: #1e3a8a; }
body.site-dark-mode .admin-one-workspace .admin-table-actions button { color: #bfdbfe; background: #172554; }
body.site-dark-mode .admin-one-workspace .admin-table-actions button.is-danger { color: #fda4af; background: #4c0519; }
body.site-dark-mode .admin-one-workspace .admin-pagination { background: #111827; border-color: #334155; }
body.site-dark-mode .admin-audit-drawer,
body.site-dark-mode .admin-add-modal,
body.site-dark-mode .admin-history-panel,
body.site-dark-mode .admin-user-detail-drawer,
body.site-dark-mode .admin-profile-drawer { color: #e2e8f0; background: #111827; border-color: #334155; }
body.site-dark-mode .admin-audit-profile,
body.site-dark-mode .admin-audit-body section > p,
body.site-dark-mode .admin-audit-source,
body.site-dark-mode .admin-history-note,
body.site-dark-mode .admin-user-detail-stats > div,
body.site-dark-mode .admin-user-detail-grid > div { color: #cbd5e1; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-add-body > label input { color: #f8fafc; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-audit-profile strong,
body.site-dark-mode .admin-audit-body section > p,
body.site-dark-mode .admin-audit-source strong,
body.site-dark-mode .admin-add-body > label,
body.site-dark-mode .admin-add-modal legend,
body.site-dark-mode .admin-user-detail-header h3,
body.site-dark-mode .admin-detail-section h4,
body.site-dark-mode .admin-user-detail-stats strong,
body.site-dark-mode .admin-detail-list strong,
body.site-dark-mode .admin-history-meta strong { color: #f8fafc; }
body.site-dark-mode .admin-audit-profile small,
body.site-dark-mode .admin-audit-profile em,
body.site-dark-mode .admin-audit-body section > label,
body.site-dark-mode .admin-audit-source small,
body.site-dark-mode .admin-user-detail-header small,
body.site-dark-mode .admin-user-detail-grid dt,
body.site-dark-mode .admin-detail-section-note,
body.site-dark-mode .admin-detail-activity p,
body.site-dark-mode .admin-detail-list small,
body.site-dark-mode .admin-history-meta,
body.site-dark-mode .admin-history-item p,
body.site-dark-mode .admin-history-empty { color: #94a3b8; }
body.site-dark-mode .admin-audit-body section > p { border-color: #334155; }
body.site-dark-mode .admin-add-modal > footer button:last-child { background: #2563eb; border-color: #2563eb; }
body.site-dark-mode .admin-history-tags span { color: #cbd5e1; background: #1e293b; }
body.site-dark-mode .admin-user-detail-actions .admin-user-role { color: #bfdbfe; background: #172554; border-color: #1e3a8a; }
/* Keep every touch action aligned with the reference h-10 control rhythm. */
.admin-one-workspace .admin-user-actions > button,
.admin-one-workspace .admin-row-actions > button,
.admin-one-workspace .admin-post-card-actions > button,
.admin-audit-drawer > footer > button,
.admin-add-modal > footer > button,
.admin-user-detail-actions > button { min-height: 40px; height: 40px; }
.admin-one-workspace .admin-select-menu { min-width: 100%; }
body.site-dark-mode .admin-one-workspace .admin-select-trigger { color: #e2e8f0; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-select-trigger:hover { border-color: #60a5fa; }
body.site-dark-mode .admin-one-workspace .admin-select-menu { color: #e2e8f0; background: #111827; border-color: #334155; box-shadow: 0 14px 30px rgba(2,6,23,.38); }
body.site-dark-mode .admin-one-workspace .admin-select-option { color: #cbd5e1; }
body.site-dark-mode .admin-one-workspace .admin-select-option:hover { color: #f8fafc; background: #1e293b; }
body.site-dark-mode .admin-one-workspace .admin-select-option.bg-blue-50 { color: #bfdbfe; background: #1e3a8a; }
body.site-dark-mode .admin-one-workspace .admin-select-option.bg-blue-50 svg { color: #93c5fd; }
/* Phase-one productivity surfaces: trends, dense tables and user details. */
.admin-overview-dashboard-grid { grid-template-columns: minmax(0, 1.35fr) minmax(330px, .65fr); gap: 14px; margin-bottom: 14px; }
.admin-overview-dashboard-grid .admin-overview-panel, .admin-operations-panel { background: #fff; }
.admin-range-switch { display: inline-flex; gap: 2px; padding: 3px; background: #f1f5f9; border-radius: 7px; }
.admin-range-switch button, .admin-view-switch button { min-height: 26px; padding: 4px 8px; color: #64748b; font-size: 10px; font-weight: 700; background: transparent; border: 0; border-radius: 5px; cursor: pointer; }
.admin-range-switch button.active, .admin-view-switch button.active { color: #fff; background: #2563eb; }
.admin-trend-chart { padding-top: 16px; }
.admin-trend-chart svg { display: block; width: 100%; overflow: visible; }
.admin-trend-chart line { stroke: #e8edf3; stroke-width: 1; stroke-dasharray: 3 5; }
.admin-trend-chart polyline { fill: none; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.admin-trend-chart polyline.is-users { stroke: #2563eb; }
.admin-trend-chart polyline.is-posts { stroke: #8b5cf6; }
.admin-trend-chart polyline.is-comments { stroke: #10b981; }
.admin-trend-axis { display: flex; justify-content: space-between; gap: 4px; color: #94a3b8; font-size: 8px; }
.admin-trend-legend { display: flex; gap: 15px; padding-top: 12px; color: #64748b; font-size: 9px; }
.admin-trend-legend span { display: inline-flex; align-items: center; gap: 5px; }
.admin-trend-legend i { width: 7px; height: 7px; border-radius: 50%; }
.admin-trend-legend i.is-users { background: #2563eb; }
.admin-trend-legend i.is-posts { background: #8b5cf6; }
.admin-trend-legend i.is-comments { background: #10b981; }
.admin-panel-link { display: inline-flex; align-items: center; gap: 3px; padding: 3px 0; color: #2563eb; font-size: 10px; font-weight: 700; background: transparent; border: 0; cursor: pointer; }
.admin-panel-link svg { width: 13px; height: 13px; }
.admin-hot-post-list { display: grid; gap: 2px; padding-top: 7px; }
.admin-hot-post-item { display: flex; align-items: center; gap: 9px; min-width: 0; padding: 9px 3px; text-align: left; background: transparent; border: 0; border-bottom: 1px solid #eef2f7; cursor: pointer; }
.admin-hot-post-item:last-child { border-bottom: 0; }
.admin-hot-post-item:hover { background: #eff6ff; }
.admin-hot-post-item > b { width: 21px; color: #94a3b8; font-size: 10px; font-weight: 800; }
.admin-hot-post-item > span { min-width: 0; flex: 1; display: grid; gap: 3px; }
.admin-hot-post-item strong { overflow: hidden; color: #334155; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.admin-hot-post-item small { color: #94a3b8; font-size: 9px; }
.admin-hot-post-item > svg { width: 13px; height: 13px; color: #94a3b8; }
.admin-overview-muted { display: grid; min-height: 90px; place-items: center; color: #94a3b8; font-size: 10px; text-align: center; }
.admin-operations-panel { margin-top: 14px; }
.admin-operation-list { display: grid; gap: 0; padding-top: 4px; }
.admin-operation-item { display: flex; align-items: center; gap: 9px; min-height: 36px; border-bottom: 1px solid #eef2f7; }
.admin-operation-item:last-child { border-bottom: 0; }
.admin-operation-dot { width: 6px; height: 6px; flex: 0 0 6px; background: #2563eb; border-radius: 50%; }
.admin-operation-item > div { min-width: 0; flex: 1; display: grid; gap: 2px; }
.admin-operation-item strong { color: #334155; font-size: 10px; }
.admin-operation-item small { overflow: hidden; color: #94a3b8; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.admin-operation-item time { color: #94a3b8; font-size: 9px; white-space: nowrap; }
.admin-list-toolbar-actions { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }
.admin-view-switch { display: inline-flex; gap: 2px; padding: 3px; background: #f1f5f9; border-radius: 7px; }
.admin-sort-select { display: inline-flex; align-items: center; gap: 4px; color: #94a3b8; font-size: 9px; font-weight: 700; }
.admin-sort-select select { min-height: 28px; padding: 0 6px; color: #475569; font-size: 10px; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 6px; outline: 0; }
.admin-data-table-wrap { min-width: 0; overflow-x: auto; }
.admin-data-table { width: 100%; min-width: 720px; border-collapse: collapse; font-size: 11px; }
.admin-data-table th { padding: 13px 9px; color: #94a3b8; font-size: 9px; font-weight: 800; text-align: left; background: #f8fafc; border-bottom: 1px solid #e2e8f0; }
.admin-data-table td { padding: 11px 9px; color: #64748b; border-bottom: 1px solid #eef2f7; white-space: nowrap; }
.admin-data-table tr:hover td { background: #f8fafc; }
.admin-data-table th.is-actions, .admin-data-table td.is-actions { text-align: right; }
.admin-table-user { display: inline-flex; align-items: center; gap: 8px; padding: 0; color: #334155; font-size: 11px; font-weight: 750; background: transparent; border: 0; cursor: pointer; }
.admin-table-user img { width: 30px; height: 30px; object-fit: cover; border-radius: 50%; }
.admin-table-device { display: grid; gap: 2px; }
.admin-table-device span { color: #334155; }
.admin-table-device small { color: #94a3b8; font-size: 9px; }
.admin-table-badge { display: inline-flex; padding: 4px 7px; color: #64748b; font-size: 9px; background: #f1f5f9; border-radius: 5px; }
.admin-table-badge.is-admin { color: #be123c; }
.admin-table-post-title { display: flex; align-items: center; gap: 6px; max-width: 280px; }
.admin-table-post-title strong { overflow: hidden; color: #334155; text-overflow: ellipsis; white-space: nowrap; }
.admin-table-post-title svg { width: 12px; height: 12px; flex: 0 0 12px; color: #f59e0b; fill: #f59e0b; }
.admin-table-actions { display: inline-flex; gap: 4px; }
.admin-table-actions button { min-height: 26px; padding: 4px 7px; color: #2563eb; font-size: 9px; font-weight: 750; background: #eff6ff; border: 0; border-radius: 5px; cursor: pointer; }
.admin-table-actions button.is-danger { color: #e11d48; background: #fff1f2; }
.admin-user-detail-drawer { display: flex; width: min(520px, 100%); height: 100%; min-width: 0; flex-direction: column; overflow: hidden; padding: 20px; color: #334155; background: #fff; box-shadow: -12px 0 38px rgba(15,23,42,.18); }
.admin-user-detail-body { flex: 1; }
.admin-user-detail-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding-bottom: 16px; border-bottom: 1px solid #e8edf3; }
.admin-user-detail-header > div { display: flex; align-items: center; gap: 12px; min-width: 0; }
.admin-user-detail-header img { width: 52px; height: 52px; object-fit: cover; }
.admin-user-detail-header h3 { margin: 3px 0; color: #0f172a; font-size: 20px; }
.admin-user-detail-header small { color: #64748b; font-size: 13px; }
.admin-user-detail-header > button { display: grid; width: 40px; height: 40px; place-items: center; color: #64748b; background: #f1f5f9; border: 0; border-radius: 8px; cursor: pointer; }
.admin-user-detail-header > button svg { width: 18px; height: 18px; }
.admin-user-detail-loading { display: grid; min-height: 200px; place-items: center; color: #64748b; font-size: 14px; }
.admin-user-detail-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; padding: 16px 0; }
.admin-user-detail-stats div { display: grid; gap: 4px; padding: 12px; background: #f8fafc; border-radius: 9px; }
.admin-user-detail-stats strong { color: #0f172a; font-size: 22px; }
.admin-user-detail-stats span { color: #64748b; font-size: 13px; }
.admin-detail-section { padding: 16px 0; border-top: 1px solid #eef2f7; }
.admin-detail-section > header { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 10px; }
.admin-detail-section h4 { margin: 0; color: #334155; font-size: 15px; }
.admin-detail-section-note { color: #64748b; font-size: 13px; }
.admin-user-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0; }
.admin-user-detail-grid div { min-width: 0; padding: 10px; background: #f8fafc; border-radius: 7px; }
.admin-user-detail-grid dt { color: #64748b; font-size: 13px; }
.admin-user-detail-grid dd { margin: 4px 0 0; color: #475569; font-size: 14px; overflow-wrap: anywhere; }
.admin-detail-activity { display: grid; gap: 8px; }
.admin-detail-activity p { display: flex; align-items: center; gap: 6px; margin: 0; color: #64748b; font-size: 14px; }
.admin-detail-activity svg { width: 16px; height: 16px; flex: 0 0 16px; color: #64748b; }
.admin-detail-list { display: grid; gap: 0; padding: 0; margin: 0; list-style: none; }
.admin-detail-list li { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 0; border-bottom: 1px solid #f1f5f9; }
.admin-detail-list li:last-child { border-bottom: 0; }
.admin-detail-list li > span { min-width: 0; display: grid; gap: 4px; }
.admin-detail-list strong { color: #475569; font-size: 14px; }
.admin-detail-list small { color: #64748b; font-size: 13px; }
.admin-detail-list li > svg { width: 16px; height: 16px; color: #f59e0b; }
.admin-user-detail-actions { display: flex; gap: 8px; padding-top: 16px; margin-top: auto; border-top: 1px solid #e8edf3; }
.admin-user-detail-actions button { flex: 1; min-height: 40px; font-size: 14px; border-radius: 8px; cursor: pointer; }
.admin-user-detail-actions .admin-user-role { color: #047857; background: #ecfdf5; border: 1px solid #a7f3d0; }
.admin-user-detail-actions .admin-user-delete { display: inline-flex; align-items: center; justify-content: center; gap: 5px; color: #be123c; background: #fff1f2; border: 1px solid #fecdd3; }
.admin-user-detail-actions svg { width: 16px; height: 16px; }
body.site-dark-mode .admin-overview-dashboard-grid .admin-overview-panel, body.site-dark-mode .admin-operations-panel, body.site-dark-mode .admin-data-table th, body.site-dark-mode .admin-user-detail-drawer { background: #111827; border-color: #334155; }
.site-dark-mode .admin-range-switch, .site-dark-mode .admin-view-switch, body.site-dark-mode .admin-sort-select select, body.site-dark-mode .admin-user-detail-stats div, body.site-dark-mode .admin-user-detail-grid div { color: #cbd5e1; background: #1e293b; border-color: #334155; }
.site-dark-mode .admin-hot-post-item:hover { background: #172554; }
body.site-dark-mode .admin-hot-post-item strong, body.site-dark-mode .admin-operation-item strong, body.site-dark-mode .admin-detail-section h4, body.site-dark-mode .admin-user-detail-header h3, body.site-dark-mode .admin-user-detail-stats strong, body.site-dark-mode .admin-table-post-title strong, body.site-dark-mode .admin-table-user { color: #f8fafc; }
body.site-dark-mode .admin-hot-post-item, body.site-dark-mode .admin-operation-item, body.site-dark-mode .admin-data-table td, body.site-dark-mode .admin-detail-list li { border-color: #334155; }
body.site-dark-mode .admin-data-table tr:hover td { background: #1e293b; }
body.site-dark-mode .admin-table-device span, body.site-dark-mode .admin-user-detail-grid dd { color: #cbd5e1; }
@media (max-width: 900px) { .admin-overview-dashboard-grid { grid-template-columns: 1fr; } .admin-list-toolbar-actions { justify-content: flex-start; } }
@media (max-width: 620px) { .admin-user-detail-drawer { width: 100%; padding: 18px 16px 20px; } .admin-list-toolbar-actions { width: 100%; overflow-x: auto; flex-wrap: nowrap; justify-content: flex-start; padding-bottom: 2px; } .admin-sort-select { flex: 0 0 auto; } .admin-overview-dashboard-grid { gap: 10px; } }
.admin-playback-list { display:grid;gap:0;margin:0;padding:0;list-style:none; }
.admin-playback-list li { display:grid;gap:8px;padding:12px 0;border-bottom:1px solid #eef2f7; }
.admin-playback-list li:last-child { border-bottom:0; }
.admin-playback-heading,.admin-playback-episode { display:flex;align-items:center;gap:8px;min-width:0; }
.admin-playback-heading strong { min-width:0;overflow:hidden;color:#334155;font-size:14px;font-weight:650;text-overflow:ellipsis;white-space:nowrap; }
.admin-playback-heading small { flex:none;margin-left:auto;color:#94a3b8;font-size:11px; }
.admin-playback-type { flex:none;padding:2px 6px;border-radius:5px;background:#ecfdf5;color:#047857;font-size:11px;line-height:1.4; }
.admin-playback-episode { justify-content:space-between;color:#64748b;font-size:12px;font-variant-numeric:tabular-nums; }
.admin-playback-episode b { margin-left:6px;color:#078362;font-weight:650; }
.admin-playback-track { height:3px;overflow:hidden;border-radius:99px;background:#e8efeb; }
.admin-playback-track span { display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#34d399,#059669); }
.admin-playback-legacy-note { color:#94a3b8;font-size:11px; }
body.site-dark-mode .admin-playback-list li { border-color:#334155; }
body.site-dark-mode .admin-playback-heading strong { color:#e2e8f0; }
body.site-dark-mode .admin-playback-heading small,
body.site-dark-mode .admin-playback-legacy-note { color:#94a3b8; }
body.site-dark-mode .admin-playback-type { background:#12372d;color:#6ee7b7; }
body.site-dark-mode .admin-playback-episode { color:#a8b6c7; }
body.site-dark-mode .admin-playback-episode b { color:#6ee7b7; }
body.site-dark-mode .admin-playback-track { background:#344554; }
/* Admin One inspired application shell.
   The visual system is recreated locally so the existing project keeps its
   small dependency footprint and all original API behaviour. */
.admin-panel-overlay {
  background: #f1f5f9;
}
.admin-panel-modal {
  background: #f1f5f9;
}
.admin-one-sidebar {
  width: 248px;
  min-width: 248px;
  padding: 0 14px 16px;
  color: #cbd5e1;
  background: #1e293b;
  box-sizing: border-box;
  box-shadow: 10px 0 30px rgba(15,23,42,.06);
}
.admin-one-sidebar-brand {
  height: 72px;
  gap: 11px;
  margin-bottom: 18px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.admin-one-sidebar-brand > span {
  display: grid;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  place-items: center;
  color: #fff;
  background: #2563eb;
  border-radius: 9px;
  box-shadow: 0 7px 16px rgba(37,99,235,.28);
}
.admin-one-sidebar-brand > span svg { width: 19px; height: 19px; }
.admin-one-sidebar-brand > div { display: grid; gap: 1px; }
.admin-one-sidebar-brand strong { color: #fff; font-size: 14px; font-weight: 800; letter-spacing: .055em; }
.admin-one-sidebar-brand small { color: #94a3b8; font-size: 10px; letter-spacing: .04em; }
.admin-one-sidebar-brand > button {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: 7px;
  cursor: pointer;
}
.admin-one-sidebar-brand > button:hover { color: #fff; background: rgba(255,255,255,.08); }
.admin-one-sidebar-brand > button svg { width: 16px; height: 16px; }
.admin-one-sidebar-label {
  padding: 0 12px;
  margin-bottom: 8px;
  color: #64748b;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.admin-one-sidebar-label.is-secondary { margin-top: 25px; }
.admin-one-sidebar nav { gap: 4px; }
.admin-one-sidebar nav button {
  gap: 11px;
  color: #cbd5e1;
  border-radius: 7px;
  cursor: pointer;
}
.admin-one-sidebar nav button:hover { color: #fff; background: rgba(255,255,255,.065); transform: translateX(1px); }
.admin-one-sidebar nav button.active { color: #fff; background: #2563eb; box-shadow: 0 8px 18px rgba(15,23,42,.2); }
.admin-one-sidebar nav button.active::before {
  content: '';
  position: absolute;
  top: 10px;
  bottom: 10px;
  left: -14px;
  width: 3px;
  background: #60a5fa;
  border-radius: 0 4px 4px 0;
}
.admin-one-sidebar nav svg { width: 17px; height: 17px; flex: 0 0 17px; stroke-width: 1.9; }
.admin-one-sidebar nav span { font-size: 12px; }
.admin-one-sidebar nav em {
  min-width: 19px;
  padding: 2px 6px;
  color: #94a3b8;
  font-size: 9px;
  font-style: normal;
  font-weight: 750;
  text-align: center;
  background: rgba(255,255,255,.07);
  border-radius: 999px;
}
.admin-one-sidebar nav button.active em { color: #dbeafe; background: rgba(255,255,255,.16); }
.admin-one-sidebar > footer {
  display: grid;
  gap: 9px;
  padding-top: 14px;
  margin-top: auto;
  border-top: 1px solid rgba(255,255,255,.08);
}
.admin-one-sidebar-profile {
  width: 100%;
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 6px 7px;
  color: #fff;
  text-align: left;
  background: rgba(255,255,255,.045);
  border: 0;
  border-radius: 9px;
  cursor: pointer;
}
.admin-one-sidebar-profile:hover { background: rgba(255,255,255,.08); }
.admin-one-sidebar-profile img { width: 34px; height: 34px; flex: 0 0 34px; object-fit: cover; border: 2px solid rgba(255,255,255,.18); border-radius: 50%; }
.admin-one-sidebar-profile span { min-width: 0; flex: 1; display: grid; gap: 2px; }
.admin-one-sidebar-profile strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.admin-one-sidebar-profile small { color: #94a3b8; font-size: 9px; }
.admin-one-sidebar-profile > svg { width: 15px; height: 15px; color: #64748b; }
.admin-one-sidebar-exit {
  min-height: 34px;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 0 10px;
  color: #94a3b8;
  font-size: 10px;
  font-weight: 650;
  background: transparent;
  border: 0;
  border-radius: 7px;
  cursor: pointer;
}
.admin-one-sidebar-exit:hover { color: #fda4af; background: rgba(244,63,94,.08); }
.admin-one-sidebar-exit svg { width: 15px; height: 15px; }
.admin-one-workspace {
  background: #f1f5f9;
}
.admin-one-workspace .admin-console-header {
  background: rgba(255,255,255,.96);
  border-bottom: 1px solid #e2e8f0;
  backdrop-filter: blur(14px);
}
.admin-one-workspace .admin-console-header-inner {
  height: 72px;
  padding: 0 28px;
}
.admin-one-workspace .admin-console-brand > div { gap: 3px; }
.admin-one-workspace .admin-console-brand > i { display: none; }
.admin-one-breadcrumb { color: #94a3b8; font-size: 9px; font-weight: 600; }
.admin-one-workspace .admin-console-header h2 { color: #0f172a; }
.admin-one-menu-trigger {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  cursor: pointer;
}
.admin-one-menu-trigger svg { width: 17px; height: 17px; }
.admin-one-workspace .admin-console-header-actions { gap: 10px; }
.admin-one-workspace .admin-console-header-actions .admin-console-search {
  width: min(28vw, 320px);
  min-width: 220px;
  min-height: 38px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
}
.admin-one-workspace .admin-refresh-trigger { border-radius: 8px; }
.admin-one-workspace .admin-live-status { padding: 0 4px; color: #64748b; font-size: 9px; }
.admin-one-workspace .admin-console-main { max-width: 1440px; }
.admin-one-workspace .admin-stats-section { padding: 28px 28px 18px; }
.admin-one-workspace .admin-stat-card {
  min-height: 126px;
  padding: 20px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  box-shadow: 0 2px 5px rgba(15,23,42,.035);
}
.admin-one-workspace .admin-stat-card:last-child { border-right: 1px solid #e2e8f0; }
.admin-one-workspace .admin-stat-card:hover { box-shadow: 0 8px 22px rgba(15,23,42,.075); }
.admin-one-workspace .admin-stat-card header { margin-bottom: 18px; }
.admin-one-workspace .admin-stat-card header span { font-size: 11px; font-weight: 650; }
.admin-one-workspace .admin-stat-card header svg {
  width: 32px;
  height: 32px;
  padding: 8px;
  color: #2563eb;
  border-radius: 8px;
}
.admin-one-workspace .admin-stat-card:nth-child(2) header svg { color: #7c3aed; }
.admin-one-workspace .admin-stat-card:nth-child(3) header svg { color: #059669; background: #ecfdf5; }
.admin-one-workspace .admin-stat-card:nth-child(4) header svg { color: #d97706; background: #fffbeb; }
.admin-one-workspace .admin-stat-card strong { color: #0f172a; font-size: 27px; }
.admin-one-workspace .admin-stat-card em { max-width: 100%; padding: 3px 7px; font-size: 9px; }
.admin-one-workspace .admin-content {
  padding: 0;
  margin: 0 28px 48px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  box-shadow: 0 2px 5px rgba(15,23,42,.035);
}
.admin-one-workspace .admin-content.is-management-section { margin-top: 28px; }
.admin-one-workspace .admin-section { padding: 0 22px 22px; }
.admin-one-workspace .admin-filter-bar { padding: 18px 0; border-bottom-color: #e2e8f0; }
.admin-one-workspace .admin-comment-status-tabs button,
.admin-one-workspace .admin-user-filter-tabs button,
.admin-one-workspace .admin-post-categories button {
  min-height: 32px;
  padding: 6px 12px;
  color: #64748b;
  background: #f1f5f9;
  border-radius: 6px;
}
.admin-one-workspace .admin-comment-status-tabs button.active,
.admin-one-workspace .admin-user-filter-tabs button.active,
.admin-one-workspace .admin-post-categories button.active { color: #fff; background: #2563eb; }
.admin-one-workspace .admin-comment-status-tabs button.is-approved.active { background: #059669; }
.admin-one-workspace .admin-add-user-btn { background: #2563eb; border-radius: 7px; }
.admin-one-workspace .admin-add-user-btn:hover { background: #1d4ed8; }
.admin-one-workspace .admin-review-row,
.admin-one-workspace .admin-user-row,
.admin-one-workspace .admin-post-row { padding: 20px 6px; border-bottom-color: #e8edf3; }
.admin-one-workspace .admin-review-row:hover,
.admin-one-workspace .admin-user-row:hover,
.admin-one-workspace .admin-post-row:hover { background: #f8fafc; }
.admin-one-workspace .admin-review-row > img,
.admin-one-workspace .admin-user-profile > img { width: 42px; height: 42px; flex-basis: 42px; }
.admin-one-workspace .admin-user-recent { display: grid; align-content: center; gap: 5px; }
.admin-one-workspace .admin-user-recent p { margin: 0; }
.admin-one-workspace .admin-user-recent .admin-user-browser { color: #334155; font-size: 11px; font-weight: 650; }
.admin-one-workspace .admin-user-recent .admin-user-browser svg { color: #2563eb; }
.admin-one-workspace .admin-row-actions button { min-height: 31px; border-radius: 6px; }
.admin-one-workspace .admin-row-actions .is-approve { color: #1d4ed8; background: #eff6ff; }
.admin-one-workspace .admin-row-actions .is-role { color: #1d4ed8; background: #eff6ff; }
.admin-one-workspace .admin-post-actions .is-edit { color: #1d4ed8; background: #eff6ff; }
.admin-one-workspace .admin-post-actions .is-history { background: #f1f5f9; }
.admin-one-workspace .admin-post-selects select,
.admin-one-workspace .admin-pagination button { border-radius: 6px; }
.admin-one-workspace .admin-review-empty { margin: 20px 0 0; background: #f8fafc; border-radius: 8px; }
.admin-one-workspace .admin-overview-content { padding: 0 22px 24px; }
.admin-overview-hero {
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  padding: 26px 4px 24px;
  border-bottom: 1px solid #e8edf3;
}
.admin-overview-eyebrow { font-size: 9px; letter-spacing: .14em; }
.admin-overview-hero h3 { margin: 7px 0 6px; color: #0f172a; font-size: 22px; font-weight: 760; letter-spacing: -.035em; }
.admin-overview-hero p { font-size: 10px; }
.admin-overview-hero p i { box-shadow: 0 0 0 3px rgba(34,197,94,.1); }
.admin-overview-refresh { min-height: 34px; padding: 7px 12px; color: #1d4ed8; font-size: 10px; font-weight: 700; border: 1px solid #dbeafe; border-radius: 7px; cursor: pointer; }
.admin-overview-refresh:disabled { opacity: .6; cursor: wait; }
.admin-overview-refresh svg { width: 14px; height: 14px; }
.admin-overview-refresh svg.spinning { animation: admin-spin .8s linear infinite; }
.admin-overview-priority-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 20px 0; }
.admin-priority-card { gap: 11px; padding: 15px; border-radius: 8px; cursor: pointer; transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease; }
.admin-priority-card:hover { box-shadow: 0 7px 18px rgba(15,23,42,.06); }
.admin-priority-icon { width: 35px; height: 35px; flex: 0 0 35px; border-radius: 8px; }
.admin-priority-icon svg { width: 17px; height: 17px; }
.admin-priority-copy small { font-size: 10px; font-weight: 650; }
.admin-priority-copy strong { color: #0f172a; font-size: 23px; font-weight: 760; letter-spacing: -.04em; }
.admin-priority-copy em { font-size: 9px; }
.admin-priority-card > svg { width: 15px; height: 15px; flex: 0 0 15px; color: #94a3b8; }
.admin-priority-card.is-warning .admin-priority-icon { color: #d97706; background: #fffbeb; }
.admin-priority-card.is-danger .admin-priority-icon { color: #e11d48; }
.admin-priority-card.is-blue .admin-priority-icon { color: #2563eb; }
.admin-overview-columns { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; }
.admin-overview-panel { min-width: 0; padding: 17px; background: #f8fafc; border: 1px solid #e8edf3; border-radius: 8px; }
.admin-overview-panel > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding-bottom: 13px; border-bottom: 1px solid #e8edf3; }
.admin-overview-panel-kicker { font-size: 8px; letter-spacing: .15em; }
.admin-overview-panel h3 { color: #0f172a; font-size: 14px; font-weight: 740; }
.admin-overview-live, .admin-overview-panel-note { display: inline-flex; align-items: center; gap: 5px; color: #64748b; font-size: 9px; font-weight: 650; }
.admin-overview-live i { width: 5px; height: 5px; background: #22c55e; border-radius: 50%; }
.admin-overview-list { display: grid; gap: 0; padding: 2px 0 0; margin: 0; list-style: none; }
.admin-overview-list li { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 38px; font-size: 10px; border-bottom: 1px solid #e8edf3; }
.admin-overview-list li:last-child { border-bottom: 0; }
.admin-overview-list li span { display: inline-flex; align-items: center; gap: 7px; }
.admin-overview-list li svg { color: #94a3b8; }
.admin-overview-list li strong { color: #334155; font-size: 11px; font-weight: 740; }
.admin-overview-shortcuts { display: grid; gap: 5px; padding-top: 10px; }
.admin-overview-shortcuts button { display: flex; align-items: center; gap: 9px; min-height: 37px; padding: 0 9px; color: #475569; text-align: left; background: transparent; border: 0; border-radius: 6px; cursor: pointer; }
.admin-overview-shortcuts button:hover { color: #1d4ed8; background: #eff6ff; }
.admin-overview-shortcuts button > svg:first-child { width: 15px; height: 15px; color: #2563eb; }
.admin-overview-shortcuts button span { min-width: 0; flex: 1; font-size: 10px; font-weight: 650; }
.admin-overview-shortcuts button > svg:last-child { width: 14px; height: 14px; color: #94a3b8; }
body.site-dark-mode .admin-panel-overlay,
body.site-dark-mode .admin-panel-modal,
body.site-dark-mode .admin-one-workspace { background: #0f172a; }
body.site-dark-mode .admin-one-sidebar { background: #111827; }
body.site-dark-mode .admin-one-workspace .admin-console-header { background: rgba(17,24,39,.96); border-bottom-color: #263244; }
body.site-dark-mode .admin-one-workspace .admin-console-header h2,
body.site-dark-mode .admin-one-workspace .admin-stat-card strong { color: #f8fafc; }
body.site-dark-mode .admin-one-workspace .admin-console-header-actions .admin-console-search,
body.site-dark-mode .admin-one-menu-trigger { color: #cbd5e1; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-stat-card,
body.site-dark-mode .admin-one-workspace .admin-content { color: #e2e8f0; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-overview-hero,
body.site-dark-mode .admin-overview-panel > header,
body.site-dark-mode .admin-overview-list li { border-color: #334155; }
body.site-dark-mode .admin-overview-hero h3,
body.site-dark-mode .admin-priority-copy strong,
body.site-dark-mode .admin-overview-panel h3,
body.site-dark-mode .admin-overview-list li strong { color: #f8fafc; }
body.site-dark-mode .admin-priority-card,
body.site-dark-mode .admin-overview-panel { color: #e2e8f0; background: #111827; border-color: #334155; }
body.site-dark-mode .admin-overview-shortcuts button:hover { color: #93c5fd; background: #172554; }
body.site-dark-mode .admin-overview-refresh { color: #93c5fd; }
body.site-dark-mode .admin-one-workspace .admin-stat-card:hover { background: #1e293b; border-color: #3b82f6; }
body.site-dark-mode .admin-one-workspace .admin-review-row,
body.site-dark-mode .admin-one-workspace .admin-user-row,
body.site-dark-mode .admin-one-workspace .admin-post-row,
body.site-dark-mode .admin-one-workspace .admin-filter-bar { border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-review-row:hover,
body.site-dark-mode .admin-one-workspace .admin-user-row:hover,
body.site-dark-mode .admin-one-workspace .admin-post-row:hover { background: #243247; }
body.site-dark-mode .admin-one-workspace .admin-user-recent .admin-user-browser { color: #e2e8f0; }
body.site-dark-mode .admin-one-workspace .admin-comment-status-tabs button,
body.site-dark-mode .admin-one-workspace .admin-user-filter-tabs button,
body.site-dark-mode .admin-one-workspace .admin-post-categories button,
body.site-dark-mode .admin-one-workspace .admin-post-selects select,
body.site-dark-mode .admin-one-workspace .admin-pagination button { color: #cbd5e1; background: #0f172a; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-comment-status-tabs button.active,
body.site-dark-mode .admin-one-workspace .admin-user-filter-tabs button.active,
body.site-dark-mode .admin-one-workspace .admin-post-categories button.active { color: #fff; background: #2563eb; }
@media (max-width: 980px) {
  .admin-one-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    transform: translateX(-102%);
    transition: transform .24s cubic-bezier(.22,1,.36,1);
    box-shadow: 18px 0 45px rgba(15,23,42,.28);
  }
  .admin-one-sidebar.is-open { transform: translateX(0); }
  .admin-one-sidebar-backdrop {
    position: fixed;
    inset: 0;
    z-index: 55;
    display: block;
    padding: 0;
    background: rgba(15,23,42,.48);
    border: 0;
    backdrop-filter: blur(2px);
  }
  .admin-one-menu-trigger { display: grid; }
  .admin-one-workspace .admin-stats-section { padding: 22px 20px 16px; }
  .admin-one-workspace .admin-content { margin-right: 20px; margin-left: 20px; }
  .admin-one-workspace .admin-console-header-inner { padding: 0 20px; }
}
@media (max-width: 700px) {
  .admin-one-workspace .admin-console-header-inner { height: 64px; padding: 0 14px; }
  .admin-one-breadcrumb, .admin-one-workspace .admin-live-status { display: none; }
  .admin-one-workspace .admin-console-header-actions .admin-console-search { display: none; }
  .admin-one-workspace .admin-mobile-search-trigger { display: grid; }
  .admin-one-workspace .admin-mobile-search-bar { display: block; }
  .admin-one-workspace .admin-stats-section { padding: 16px 14px 12px; }
  .admin-one-workspace .admin-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .admin-one-workspace .admin-stat-card,
  .admin-one-workspace .admin-stat-card:nth-child(-n+2),
  .admin-one-workspace .admin-stat-card:nth-child(2),
  .admin-one-workspace .admin-stat-card:last-child { min-height: 105px; padding: 14px; border: 1px solid #e2e8f0; }
  .admin-one-workspace .admin-stat-card header { margin-bottom: 11px; }
  .admin-one-workspace .admin-stat-card strong { font-size: 22px; }
  .admin-one-workspace .admin-content { margin: 0 14px 30px; }
  .admin-one-workspace .admin-content.is-management-section { margin-top: 16px; }
  .admin-one-workspace .admin-section { padding: 0 14px 16px; }
  .admin-one-workspace .admin-overview-content { padding: 0 14px 16px; }
  .admin-overview-hero { align-items: flex-start; flex-direction: column; padding: 20px 0 17px; }
  .admin-overview-hero h3 { font-size: 19px; }
  .admin-overview-priority-grid { grid-template-columns: 1fr; gap: 8px; padding: 14px 0; }
  .admin-overview-columns { grid-template-columns: 1fr; gap: 10px; }
  .admin-one-workspace .admin-filter-bar { padding: 14px 0; }
  .admin-one-workspace .admin-review-row,
  .admin-one-workspace .admin-user-row,
  .admin-one-workspace .admin-post-row { padding: 17px 2px; }
  body.site-dark-mode .admin-one-workspace .admin-stat-card,
  body.site-dark-mode .admin-one-workspace .admin-stat-card:nth-child(-n+2),
  body.site-dark-mode .admin-one-workspace .admin-stat-card:nth-child(2),
  body.site-dark-mode .admin-one-workspace .admin-stat-card:last-child { border-color: #334155; }
}
@media (max-width: 430px) {
  .admin-one-sidebar { width: min(84vw, 280px); min-width: 0; }
  .admin-one-workspace .admin-console-header h2 { font-size: 16px; }
  .admin-one-workspace .admin-profile-trigger { width: 32px; height: 32px; }
  .admin-one-workspace .admin-refresh-trigger,
  .admin-one-workspace .admin-mobile-search-trigger { width: 30px; height: 30px; flex-basis: 30px; }
  .admin-one-workspace .admin-stat-card header svg { width: 28px; height: 28px; padding: 7px; }
  .admin-one-workspace .admin-stat-card header span { font-size: 10px; }
}
/* Compact user cards: avatars are intentionally circular and never use the
   source image's intrinsic dimensions. */
.admin-one-workspace .admin-user-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.admin-one-workspace .admin-user-card { padding: 17px; border-radius: 14px; }
.admin-one-workspace .admin-user-card > header { gap: 12px; margin-bottom: 14px; }
.admin-one-workspace .admin-user-card > header > img { border: 2px solid #fff; border-radius: 50%; box-shadow: 0 2px 8px rgba(15,23,42,.12); }
.admin-one-workspace .admin-user-card > header strong { max-width: 100%; font-size: 14px; }
.admin-one-workspace .admin-user-card > header span { margin-left: 4px; }
.admin-one-workspace .admin-user-device-grid { padding: 10px; margin-bottom: 11px; border-radius: 10px; }
.admin-one-workspace .admin-user-last span { gap: 4px; }
.admin-one-workspace .admin-user-last span svg { width: 13px; height: 13px; flex: 0 0 13px; }
.admin-one-workspace .admin-user-actions { gap: 8px; }
.admin-one-workspace .admin-user-role, .admin-one-workspace .admin-user-delete { min-height: 35px; border-radius: 8px; }
.admin-one-workspace .admin-view-switch button svg { width: 14px; height: 14px; }
body.site-dark-mode .admin-one-workspace .admin-user-card > header > img { border-color: #1e293b; }
body.site-dark-mode .admin-one-workspace .admin-user-filter-bar { background: #1e293b; border-color: #334155; box-shadow: none; }
body.site-dark-mode .admin-one-workspace .admin-user-filter-tabs { background: #0f172a; }
body.site-dark-mode .admin-one-workspace .admin-user-actions { border-color: #334155; }
@media (max-width: 980px) { .admin-one-workspace .admin-user-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .admin-one-workspace .admin-user-card-grid { grid-template-columns: 1fr; gap: 10px; } .admin-one-workspace .admin-user-card > header > img { width: 52px; height: 52px; flex-basis: 52px; } }
/* Responsive management toolbar.  Keep filters readable on phone widths
   instead of forcing one very wide horizontal row. */
@media (max-width: 900px) {
  .admin-one-workspace .admin-post-filter-bar { flex-wrap: wrap; row-gap: 10px; }
  .admin-one-workspace .admin-post-filter-bar > .admin-list-toolbar-actions { margin-left: auto; }
}
@media (max-width: 700px) {
  .admin-one-workspace .admin-post-filter-bar { display: grid; grid-template-columns: 1fr; align-items: stretch; gap: 10px; overflow: visible; }
  .admin-one-workspace .admin-post-categories { width: 100%; flex-wrap: nowrap; overflow-x: auto; padding: 2px 1px 4px; scrollbar-width: none; }
  .admin-one-workspace .admin-post-categories::-webkit-scrollbar { display: none; }
  .admin-one-workspace .admin-post-categories button { flex: 0 0 auto; }
  .admin-one-workspace .admin-post-filter-bar > .admin-list-toolbar-actions { width: 100%; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: 8px; margin: 0; overflow: visible; }
  .admin-one-workspace .admin-post-filter-bar .admin-view-switch { grid-column: 1 / -1; justify-self: start; }
  .admin-one-workspace .admin-post-filter-bar .admin-sort-select { min-width: 0; justify-content: space-between; }
  .admin-one-workspace .admin-post-filter-bar .admin-sort-select select { min-width: 0; max-width: 100%; }
  .admin-one-workspace .admin-post-filter-bar .admin-post-selects { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; width: 100%; }
  .admin-one-workspace .admin-post-filter-bar .admin-post-selects label { min-width: 0; display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 5px; }
  .admin-one-workspace .admin-post-filter-bar .admin-post-selects select { width: 100%; min-width: 0; }
  .admin-one-workspace .admin-post-filter-bar .admin-add-user-btn { width: 100%; }

  .admin-one-workspace .admin-user-filter-bar { display: grid; grid-template-columns: 1fr; align-items: stretch; gap: 12px; overflow: visible; padding: 16px; margin-bottom: 16px; background: #fff; border: 1px solid #e7edf4; border-radius: 18px; box-shadow: 0 4px 14px rgba(15,23,42,.05); }
  .admin-one-workspace .admin-user-filter-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 0; width: 100%; padding: 4px; margin: 0; background: #f1f5f9; border-radius: 13px; }
  .admin-one-workspace .admin-user-filter-tabs button { min-height: 42px; padding: 7px 8px; border-radius: 10px; }
  .admin-one-workspace .admin-user-filter-bar > .admin-list-toolbar-actions { width: 100%; display: grid; grid-template-columns: minmax(68px, auto) 1fr 1fr; align-items: center; gap: 8px; margin: 0; overflow: visible; }
  .admin-one-workspace .admin-user-filter-bar .admin-view-switch { justify-self: start; }
  .admin-one-workspace .admin-user-filter-bar .admin-sort-select { min-width: 0; justify-content: space-between; }
  .admin-one-workspace .admin-user-filter-bar .admin-sort-select:first-of-type { grid-column: 2; }
  .admin-one-workspace .admin-user-filter-bar .admin-sort-select select { min-width: 0; width: 100%; }
  .admin-one-workspace .admin-user-filter-bar .admin-add-user-btn { display: none; }
  .admin-one-workspace .admin-view-switch button { display: inline-flex; align-items: center; justify-content: center; gap: 4px; min-width: 30px; min-height: 32px; padding: 5px 8px; }
  .admin-one-workspace .admin-view-switch button svg { width: 15px; height: 15px; }
  .admin-one-workspace .admin-view-switch button span { display: none; }
  .admin-one-workspace .admin-user-card-grid { gap: 16px; padding: 0; }
  .admin-one-workspace .admin-user-card { padding: 20px; border-radius: 20px; box-shadow: 0 3px 10px rgba(15,23,42,.08); }
  .admin-one-workspace .admin-user-card > header { gap: 13px; margin-bottom: 18px; }
  .admin-one-workspace .admin-user-card > header > img { width: 52px; height: 52px; flex-basis: 52px; }
  .admin-one-workspace .admin-user-card > header strong { font-size: 16px; }
  .admin-one-workspace .admin-user-card > header span { font-size: 10px; }
  .admin-one-workspace .admin-user-card > header small { margin-top: 6px; font-size: 12px; }
  .admin-one-workspace .admin-user-device-grid { grid-template-columns: 1fr; gap: 0; padding: 0 14px; margin-bottom: 15px; border-radius: 14px; }
  .admin-one-workspace .admin-user-device-grid > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 46px; border-bottom: 1px solid #e8edf3; }
  .admin-one-workspace .admin-user-device-grid > div:last-child { border-bottom: 0; }
  .admin-one-workspace .admin-user-device-grid span { font-size: 11px; }
  .admin-one-workspace .admin-user-device-grid strong { font-size: 13px; }
  .admin-one-workspace .admin-user-device-grid strong { justify-content: flex-end; margin-top: 0; text-align: right; }
  .admin-one-workspace .admin-user-last { min-height: 38px; margin-bottom: 13px; padding: 0 4px; }
  .admin-one-workspace .admin-user-last { font-size: 12px; }
  .admin-one-workspace .admin-user-last time { color: #2563eb; font-weight: 700; }
  .admin-one-workspace .admin-user-actions { grid-template-columns: minmax(0, 1fr) 50px; padding-top: 14px; border-top: 1px solid #eef2f7; }
  .admin-one-workspace .admin-user-role, .admin-one-workspace .admin-user-delete { min-height: 40px; font-size: 14px; }
}
/* user-management final parity layer
   Mirrors the supplied React/Tailwind prototype while retaining the Vue
   component's real API data, tables, drawers and management actions. */
.admin-panel-overlay {
  position: fixed;
  inset: 0;
  z-index: 3000;
  display: block;
  overflow: hidden;
  color: #1e293b;
  background: #f8fafc;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
}
.admin-panel-modal {
  width: 100% !important;
  max-width: none !important;
  min-height: 100dvh;
  height: 100dvh;
  display: flex;
  flex-direction: row;
  overflow: hidden;
  padding: 0;
  color: #1e293b;
  background: linear-gradient(135deg, rgba(209,250,229,.24), transparent 55%), rgba(248,250,252,.88);
  -webkit-backdrop-filter: blur(20px) saturate(120%);
  backdrop-filter: blur(20px) saturate(120%);
  border: 0;
  border-radius: 0;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7), 0 24px 64px rgba(15,23,42,.18);
}
/* Reference sidebar */
.admin-one-sidebar {
  position: relative;
  inset: auto;
  z-index: 60;
  width: 256px;
  min-width: 256px;
  height: 100dvh;
  display: flex;
  flex-direction: column;
  padding: 0 12px 16px;
  color: #64748b;
  background: rgba(255,255,255,.78);
  border-right: 1px solid rgba(148,163,184,.24);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 6px 0 24px rgba(15,23,42,.025);
  -webkit-backdrop-filter: blur(16px) saturate(120%);
  backdrop-filter: blur(16px) saturate(120%);
  transform: none;
}
.admin-one-sidebar-brand {
  height: 68px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 8px;
  margin: 0 0 12px;
  border-bottom: 1px solid #f1f5f9;
}
.admin-one-sidebar-brand > span,
.admin-one-sidebar-brand small,
.admin-one-sidebar-label,
.admin-one-sidebar-label.is-secondary,
.admin-one-sidebar-label.is-secondary + nav,
.admin-one-sidebar > footer { display: none; }
.admin-one-sidebar-brand > div { display: block; min-width: 0; }
.admin-one-sidebar-brand strong {
  overflow: hidden;
  color: #1e293b;
  font-size: 18px;
  font-weight: 750;
  letter-spacing: -.035em;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-one-sidebar-brand > button {
  display: grid;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  place-items: center;
  padding: 0;
  margin-left: auto;
  color: #94a3b8;
  background: transparent;
  border: 0;
  border-radius: 9px;
}
.admin-one-sidebar-brand > button:hover { color: #475569; background: #f1f5f9; }
.admin-one-sidebar nav { display: grid; gap: 6px; padding: 0; }
.admin-one-sidebar nav button {
  position: relative;
  width: 100%;
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 12px;
  color: #64748b;
  text-align: left;
  background: transparent;
  border: 0;
  border-radius: 12px;
  box-shadow: none;
  transition: color .16s ease, background .16s ease, transform .16s ease;
}
.admin-one-sidebar nav button:hover { color: #0f172a; background: #f8fafc; transform: none; }
.admin-one-sidebar nav button.active { color: #047857; background: #ecfdf5; box-shadow: none; }
.admin-one-sidebar nav button.active::before { display: none; }
.admin-one-sidebar nav svg { width: 18px; height: 18px; flex: 0 0 18px; color: #94a3b8; stroke-width: 2; }
.admin-one-sidebar nav button.active svg { color: #059669; }
.admin-one-sidebar nav span { min-width: 0; flex: 1; font-size: 14px; font-weight: 650; }
.admin-one-sidebar nav em { display: none; }
.admin-one-sidebar-backdrop { display: none; }
/* Header and centered workspace */
.admin-one-workspace {
  min-width: 0;
  height: 100dvh;
  flex: 1;
  overflow-x: hidden;
  overflow-y: auto;
  color: #1e293b;
  background: linear-gradient(145deg, rgba(236,253,245,.45), rgba(248,250,252,.65) 50%);
  scrollbar-width: thin;
  scrollbar-color: #cbd5e1 transparent;
}
.admin-one-workspace .admin-console-header {
  position: sticky;
  top: 0;
  z-index: 40;
  padding: 0;
  margin: 0;
  width: 100%;
  box-sizing: border-box;
  background: rgba(255,255,255,.8);
  border-bottom: 1px solid rgba(148,163,184,.24);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 4px 18px rgba(15,23,42,.03);
  -webkit-backdrop-filter: blur(16px) saturate(120%);
  backdrop-filter: blur(16px) saturate(120%);
}
.admin-one-workspace .admin-console-header-inner {
  width: 100%;
  box-sizing: border-box;
  max-width: none;
  height: 68px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 24px;
  margin: 0;
}
.admin-one-workspace .admin-console-brand { display: flex; align-items: center; gap: 12px; }
.admin-one-workspace .admin-console-brand > div { display: block; }
.admin-one-breadcrumb,
.admin-one-workspace .admin-live-status { display: none; }
.admin-one-workspace .admin-console-header h2 {
  margin: 0;
  color: #1e293b;
  font-size: 18px;
  font-weight: 750;
  letter-spacing: -.025em;
}
.admin-one-menu-trigger {
  display: none;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  place-items: center;
  padding: 0;
  color: #475569;
  background: transparent;
  border: 0;
  border-radius: 10px;
}
.admin-one-menu-trigger:hover { background: #f1f5f9; }
.admin-one-menu-trigger svg { width: 20px; height: 20px; }
.admin-one-workspace .admin-console-header-actions { display: flex; align-items: center; gap: 8px; min-width: 0; }
.admin-one-workspace .admin-console-search { box-sizing: border-box; max-width: 100%; min-width: 0; }
.admin-one-workspace .admin-console-search input { min-width: 0; flex: 1 1 0; box-sizing: border-box; }
.admin-one-workspace .admin-console-header-actions .admin-console-search {
  display: flex;
  width: clamp(240px, 30vw, 420px);
  min-width: 0;
  min-height: 40px;
  gap: 8px;
  padding: 0 12px;
  color: #64748b;
  background: #f8fafc;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
}
.admin-one-workspace .admin-console-header-actions .admin-console-search:focus-within { border-color: #059669; outline: 2px solid #a7f3d0; }
.admin-one-workspace .admin-console-header-actions .admin-console-search > svg { width: 18px; height: 18px; flex: 0 0 18px; }
.admin-one-workspace .admin-console-header-actions .admin-console-search input { width: 100%; min-width: 0; padding: 9px 0; font-size: 14px; opacity: 1; }
.admin-one-workspace .admin-console-search > button { flex-shrink: 0; min-height: 36px; color: #047857; font-size: 14px; }
.admin-one-workspace .admin-refresh-trigger,
.admin-one-workspace .admin-mobile-search-trigger {
  display: grid;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  place-items: center;
  padding: 0;
  color: #64748b;
  background: transparent;
  border: 0;
  border-radius: 10px;
}
.admin-one-workspace .admin-mobile-search-trigger { display: none; }
.admin-one-workspace .admin-refresh-trigger:hover,
.admin-one-workspace .admin-mobile-search-trigger:hover { color: #1e293b; background: #f1f5f9; }
.admin-one-workspace .admin-refresh-trigger svg,
.admin-one-workspace .admin-mobile-search-trigger svg { width: 18px; height: 18px; }
.admin-one-workspace .admin-profile-trigger {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  padding: 2px;
  margin-left: 8px;
  overflow: hidden;
  background: #fff;
  border: 2px solid #4ade80;
  border-radius: 50%;
}
.admin-one-workspace .admin-profile-trigger img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.admin-one-workspace .admin-profile-trigger > i { display: none; }
.admin-one-workspace .admin-mobile-search-bar { padding: 0 14px 12px; box-sizing: border-box; min-width: 0; max-width: 100%; }
.admin-one-workspace .admin-mobile-search-bar .admin-console-search {
  min-height: 40px;
  padding: 0 12px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
}
.admin-one-workspace .admin-console-main { width: 100%; max-width: none; margin: 0; box-sizing: border-box; min-width: 0; }
/* Overview */
.admin-one-workspace .admin-stats-section {
  width: min(calc(100% - 48px), 1024px);
  padding: 24px 0 0;
  margin: 0 auto;
}
.admin-one-workspace .admin-stats-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin: 0;
  border: 0;
}
.admin-one-workspace .admin-stat-card,
.admin-one-workspace .admin-stat-card:nth-child(-n+2),
.admin-one-workspace .admin-stat-card:nth-child(2),
.admin-one-workspace .admin-stat-card:last-child {
  min-width: 0;
  min-height: 122px;
  padding: 20px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  box-shadow: 0 1px 3px rgba(15,23,42,.06);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.admin-one-workspace .admin-stat-card:hover { background: #fff; border-color: #bfdbfe; box-shadow: 0 8px 20px rgba(15,23,42,.08); transform: translateY(-1px); }
.admin-one-workspace .admin-stat-card header { margin-bottom: 16px; }
.admin-one-workspace .admin-stat-card header span { color: #64748b; font-size: 13px; font-weight: 600; }
.admin-one-workspace .admin-stat-card header svg {
  width: 30px;
  height: 30px;
  padding: 7px;
  color: #3b82f6;
  background: #eff6ff;
  border-radius: 9px;
  box-sizing: border-box;
}
.admin-one-workspace .admin-stat-card:nth-child(2) header svg { color: #8b5cf6; background: #f5f3ff; }
.admin-one-workspace .admin-stat-card:nth-child(3) header svg { color: #14b8a6; background: #f0fdfa; }
.admin-one-workspace .admin-stat-card:nth-child(4) header svg { color: #f97316; background: #fff7ed; }
.admin-one-workspace .admin-stat-card > div { display: flex; align-items: flex-end; justify-content: space-between; gap: 8px; }
.admin-one-workspace .admin-stat-card strong { color: #1e293b; font-size: 30px; font-weight: 750; letter-spacing: -.04em; }
.admin-one-workspace .admin-stat-card em {
  max-width: 55%;
  overflow: hidden;
  padding: 3px 6px;
  color: #059669;
  font-size: 10px;
  font-style: normal;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
  background: #ecfdf5;
  border-radius: 5px;
}
.admin-one-workspace .admin-stat-card em.is-negative { color: #e11d48; background: #fff1f2; }
.admin-one-workspace .admin-content {
  width: min(calc(100% - 48px), 1280px);
  max-width: 1280px;
  padding: 20px 0 32px;
  margin: 0 auto;
  color: #1e293b;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.admin-one-workspace .admin-content.is-management-section { margin: 0 auto; }
.admin-one-workspace .admin-overview-content {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
  gap: 24px;
  padding-top: 24px;
}
.admin-overview-hero {
  grid-column: 1;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  justify-content: flex-start;
  gap: 14px;
  padding: 0 4px;
  border: 0;
}
.admin-overview-eyebrow { color: #2563eb; font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.admin-overview-hero h3 { margin: 5px 0 6px; color: #1e293b; font-size: 20px; font-weight: 750; letter-spacing: -.03em; }
.admin-overview-hero p { display: flex; align-items: center; gap: 7px; margin: 0; color: #94a3b8; font-size: 11px; }
.admin-overview-hero p i { width: 6px; height: 6px; background: #22c55e; border-radius: 50%; }
.admin-overview-refresh {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 8px 14px;
  color: #2563eb;
  font-size: 13px;
  font-weight: 650;
  background: #eff6ff;
  border: 0;
  border-radius: 12px;
}
.admin-overview-refresh:hover { background: #dbeafe; }
.admin-overview-priority-grid {
  grid-column: 1;
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  padding: 0;
}
.admin-priority-card {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  text-align: left;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  box-shadow: 0 1px 3px rgba(15,23,42,.04);
}
.admin-priority-card:hover { border-color: #bfdbfe; box-shadow: 0 8px 20px rgba(15,23,42,.07); transform: translateY(-1px); }
.admin-priority-icon { display: grid; width: 48px; height: 48px; flex: 0 0 48px; place-items: center; border-radius: 12px; }
.admin-priority-icon svg { width: 20px; height: 20px; }
.admin-priority-copy { min-width: 0; display: grid; flex: 1; gap: 3px; }
.admin-priority-copy small { color: #64748b; font-size: 13px; font-weight: 600; }
.admin-priority-copy strong { color: #1e293b; font-size: 24px; font-weight: 750; line-height: 1; letter-spacing: -.035em; }
.admin-priority-copy em { overflow: hidden; color: #94a3b8; font-size: 11px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.admin-priority-card > svg { width: 20px; height: 20px; flex: 0 0 20px; color: #cbd5e1; }
.admin-priority-card.is-warning .admin-priority-icon { color: #f59e0b; background: #fff7ed; }
.admin-priority-card.is-danger .admin-priority-icon { color: #ef4444; background: #fff1f2; }
.admin-priority-card.is-blue .admin-priority-icon { color: #3b82f6; background: #eff6ff; }
.admin-overview-dashboard-grid {
  grid-column: 1;
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  margin: 0;
}
.admin-overview-columns {
  grid-column: 2;
  grid-row: 1 / span 3;
  display: grid;
  grid-template-columns: 1fr;
  align-content: start;
  gap: 24px;
}
.admin-overview-panel,
.admin-overview-dashboard-grid .admin-overview-panel,
.admin-operations-panel {
  min-width: 0;
  padding: 20px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  box-shadow: 0 1px 3px rgba(15,23,42,.04);
}
.admin-overview-panel > header { padding-bottom: 14px; border-bottom: 0; }
.admin-overview-panel-kicker { color: #94a3b8; font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.admin-overview-panel h3 { margin: 4px 0 0; color: #1e293b; font-size: 17px; font-weight: 750; }
.admin-overview-live,
.admin-overview-panel-note { color: #94a3b8; font-size: 11px; }
.admin-overview-list li { min-height: 40px; color: #64748b; font-size: 12px; border-bottom-color: #f1f5f9; }
.admin-overview-list li svg { width: 14px; height: 14px; }
.admin-overview-list li strong { color: #1e293b; font-size: 12px; }
.admin-overview-shortcuts { gap: 2px; padding-top: 4px; }
.admin-overview-shortcuts button { min-height: 44px; padding: 0 12px; border-radius: 12px; }
.admin-overview-shortcuts button span { font-size: 13px; }
.admin-trend-chart svg { height: 190px; }
.admin-trend-axis { font-size: 9px; }
.admin-trend-legend { font-size: 11px; }
.admin-hot-post-item { padding: 11px 4px; }
.admin-hot-post-item strong { font-size: 12px; }
.admin-hot-post-item small { font-size: 10px; }
.admin-operations-panel { grid-column: 2; margin: 0; }
.admin-operation-item { min-height: 42px; }
.admin-operation-item strong { font-size: 11px; }
.admin-operation-item small,
.admin-operation-item time { font-size: 9px; }
/* Shared management surfaces */
.admin-one-workspace .admin-section { min-width: 0; min-height: 0; display: flex; flex-direction: column; padding: 0; }
.admin-one-workspace .admin-post-section,
.admin-one-workspace .admin-comment-section { width: 100%; margin: 0; }
.admin-one-workspace .admin-filter-bar { border-bottom: 0; }
.admin-one-workspace .admin-list-toolbar-actions { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
.admin-one-workspace .admin-view-switch {
  display: inline-flex;
  gap: 2px;
  padding: 4px;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  border-radius: 11px;
}
.admin-one-workspace .admin-view-switch button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-width: 32px;
  min-height: 32px;
  padding: 6px 9px;
  color: #64748b;
  font-size: 11px;
  font-weight: 650;
  background: transparent;
  border: 0;
  border-radius: 8px;
}
.admin-one-workspace .admin-view-switch button.active { color: #fff; background: #059669; box-shadow: none; }
.admin-one-workspace .admin-view-switch button svg { width: 16px; height: 16px; }
.admin-one-workspace .admin-sort-select { display: inline-flex; align-items: center; gap: 7px; color: #64748b; font-size: 12px; font-weight: 550; }
.admin-one-workspace .admin-sort-select select {
  min-height: 36px;
  padding: 0 28px 0 10px;
  color: #334155;
  font-size: 12px;
  font-weight: 550;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  outline: 0;
}
.admin-one-workspace .admin-add-user-btn {
  min-height: 36px;
  padding: 7px 14px;
  color: #fff;
  font-size: 12px;
  font-weight: 650;
  background: #059669;
  border: 0;
  border-radius: 10px;
}
/* Users */
.admin-one-workspace .admin-user-filter-bar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 16px;
  margin: 0 0 16px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  box-shadow: 0 1px 3px rgba(15,23,42,.06);
}
.admin-one-workspace .admin-user-filter-tabs {
  display: inline-flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 2px;
  padding: 4px;
  margin: 0;
  background: #f1f5f9;
  border-radius: 12px;
}
.admin-one-workspace .admin-user-filter-tabs button {
  min-height: 36px;
  padding: 7px 14px;
  color: #64748b;
  font-size: 13px;
  font-weight: 650;
  background: transparent;
  border: 0;
  border-radius: 9px;
}
.admin-one-workspace .admin-user-filter-tabs button.active,
.admin-one-workspace .admin-user-filter-tabs button.is-admin.active { color: #fff; background: #059669; box-shadow: none; }
.admin-one-workspace .admin-user-filter-tabs button.is-admin:not(.active) { color: #64748b; background: transparent; }
.admin-one-workspace .admin-user-card-grid {
  min-height: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  align-content: start;
  gap: 14px;
  overflow: visible;
  padding: 0;
}
.admin-one-workspace .admin-user-card {
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 16px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  box-shadow: 0 1px 3px rgba(15,23,42,.06);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.admin-one-workspace .admin-user-card:hover { border-color: #bfdbfe; box-shadow: 0 8px 20px rgba(15,23,42,.08); transform: translateY(-1px); }
.admin-one-workspace .admin-user-card > header {
  min-height: 56px;
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 0;
}
.admin-one-workspace .admin-user-card > header > img {
  display: block;
  width: 56px;
  height: 56px;
  flex: 0 0 56px;
  object-fit: cover;
  background: #f8fafc;
  border: 1px solid #f1f5f9;
  border-radius: 50% !important;
  box-shadow: none;
}
.admin-one-workspace .admin-user-card > header > div:last-child { min-width: 0; flex: 1; }
.admin-one-workspace .admin-user-card > header strong {
  display: inline-block;
  max-width: calc(100% - 62px);
  overflow: hidden;
  color: #1e293b;
  font-size: 17px;
  font-weight: 750;
  line-height: 1.3;
  text-overflow: ellipsis;
  vertical-align: middle;
  white-space: nowrap;
}
.admin-one-workspace .admin-user-card > header span {
  display: inline-block;
  flex: 0 0 auto;
  padding: 3px 6px;
  margin-left: 6px;
  color: #64748b;
  font-size: 9px;
  font-weight: 750;
  letter-spacing: .06em;
  background: #f1f5f9;
  border-radius: 6px;
  vertical-align: middle;
}
.admin-one-workspace .admin-user-card > header span.is-admin { color: #e11d48; background: #fff1f2; }
.admin-one-workspace .admin-user-card > header small {
  display: flex;
  align-items: center;
  gap: 5px;
  max-width: 100%;
  margin-top: 5px;
  overflow: hidden;
  color: #94a3b8;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-one-workspace .admin-user-card > header small svg { width: 12px; height: 12px; flex: 0 0 12px; }
.admin-one-workspace .admin-user-device-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  padding: 0 12px;
  margin: 0;
  background: #f8fafc;
  border: 1px solid rgba(241,245,249,.9);
  border-radius: 12px;
}
.admin-one-workspace .admin-user-device-grid > div {
  min-width: 0;
  min-height: 43px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-bottom: 1px solid #e2e8f0;
}
.admin-one-workspace .admin-user-device-grid > div:last-child { border-bottom: 0; }
.admin-one-workspace .admin-user-device-grid span { flex: 0 0 auto; color: #94a3b8; font-size: 11px; font-weight: 550; }
.admin-one-workspace .admin-user-device-grid strong {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
  margin: 0;
  overflow: hidden;
  color: #334155;
  font-size: 12px;
  font-weight: 600;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-one-workspace .admin-user-device-grid strong svg { width: 14px; height: 14px; flex: 0 0 14px; color: #94a3b8; }
.admin-one-workspace .admin-user-last {
  min-width: 0;
  min-height: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 0 4px;
  margin: 0;
  color: #64748b;
  font-size: 11px;
}
.admin-one-workspace .admin-user-last span { min-width: 0; display: inline-flex; align-items: center; gap: 5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-one-workspace .admin-user-last span svg { width: 14px; height: 14px; flex: 0 0 14px; color: #94a3b8; }
.admin-one-workspace .admin-user-last time { flex: 0 0 auto; color: #047857; font-weight: 650; white-space: nowrap; }
.admin-one-workspace .admin-user-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px;
  gap: 12px;
  padding-top: 16px;
  margin-top: 0;
  border-top: 1px solid #f1f5f9;
}
.admin-one-workspace .admin-user-role,
.admin-one-workspace .admin-user-delete {
  width: auto;
  min-width: 0;
  min-height: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 12px;
  font-size: 13px;
  font-weight: 650;
  border-radius: 12px;
  flex-shrink: 0;
}
.admin-one-workspace .admin-user-role { color: #334155; background: #f1f5f9; border: 1px solid #e2e8f0; }
.admin-one-workspace .admin-user-role:hover { background: #e2e8f0; }
.admin-one-workspace .admin-user-delete { width: 44px; padding: 0; color: #ef4444; background: #fff1f2; border: 1px solid #fecdd3; }
.admin-one-workspace .admin-user-delete:hover { background: #ffe4e6; }
.admin-one-workspace .admin-user-delete svg { width: 18px; height: 18px; }
/* Activities */
.admin-one-workspace .admin-post-filter-bar {
  display: flex;
  align-items: stretch;
  flex-direction: column;
  gap: 12px;
  padding: 0;
  margin: 0 0 20px;
  overflow: visible;
}
.admin-one-workspace .admin-post-categories,
.admin-one-workspace .admin-comment-status-tabs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  padding: 0;
  margin: 0;
}
.admin-one-workspace .admin-post-categories button,
.admin-one-workspace .admin-comment-status-tabs button {
  min-height: 40px;
  padding: 8px 18px;
  color: #475569;
  font-size: 13px;
  font-weight: 650;
  white-space: nowrap;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  box-shadow: 0 1px 3px rgba(15,23,42,.06);
}
.admin-one-workspace .admin-post-categories button.active,
.admin-one-workspace .admin-comment-status-tabs button.active,
.admin-one-workspace .admin-comment-status-tabs button.is-approved.active,
.admin-panel-modal .admin-comment-status-tabs button.active.is-pending {
  color: #fff;
  background: #059669;
  border-color: #059669;
  box-shadow: none;
}
.admin-one-workspace .admin-post-filter-bar > .admin-list-toolbar-actions { justify-content: flex-start; }
.admin-one-workspace .admin-post-selects { display: flex; align-items: center; gap: 10px; margin-left: auto; }
.admin-one-workspace .admin-post-selects label { position: relative; display: inline-flex; align-items: center; gap: 6px; color: #64748b; font-size: 12px; }
.admin-one-workspace .admin-post-selects select {
  min-height: 38px;
  padding: 0 31px 0 11px;
  color: #334155;
  font-size: 12px;
  font-weight: 550;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 11px;
  outline: 0;
  appearance: none;
}
.admin-one-workspace .admin-post-selects label > svg { position: absolute; right: 9px; width: 14px; height: 14px; color: #94a3b8; pointer-events: none; }
.admin-one-workspace .admin-post-card-grid {
  min-height: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  align-content: start;
  gap: 14px;
  overflow: visible;
  padding: 0;
}
.admin-one-workspace .admin-post-card {
  min-width: 0;
  padding: 16px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  box-shadow: 0 1px 3px rgba(15,23,42,.06);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.admin-one-workspace .admin-post-card:hover { border-color: #bfdbfe; box-shadow: 0 8px 20px rgba(15,23,42,.08); transform: translateY(-1px); }
.admin-one-workspace .admin-post-card > header,
.admin-one-workspace .admin-post-card > footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.admin-one-workspace .admin-post-card > header span { padding: 3px 8px; color: #475569; font-size: 11px; font-weight: 750; background: #f1f5f9; border-radius: 6px; }
.admin-one-workspace .admin-post-card > header em { padding: 3px 8px; color: #ea580c; font-size: 11px; font-weight: 700; background: #fff7ed; border: 0; border-radius: 6px; }
.admin-one-workspace .admin-post-card > header button { color: #94a3b8; font-size: 11px; background: transparent; }
.admin-one-workspace .admin-post-card h3 { margin: 12px 0 7px; color: #1e293b; font-size: 18px; font-weight: 700; line-height: 1.5; }
.admin-one-workspace .admin-post-card p { margin: 0 0 12px; color: #64748b; font-size: 13px; }
.admin-one-workspace .admin-post-card > footer { padding-top: 8px; color: #64748b; font-size: 13px; border-top: 0; }
.admin-one-workspace .admin-post-card > footer > div { display: flex; gap: 16px; }
.admin-one-workspace .admin-post-card > footer span { display: inline-flex; align-items: center; gap: 5px; }
.admin-one-workspace .admin-post-card > footer svg { width: 14px; height: 14px; }
.admin-one-workspace .admin-post-card-actions { display: flex; gap: 12px; padding-top: 14px; margin-top: 14px; border-top: 1px solid #f1f5f9; }
.admin-one-workspace .admin-post-card-actions button {
  min-height: 40px;
  display: inline-flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  gap: 7px;
  color: #059669;
  font-size: 13px;
  font-weight: 650;
  background: #ecfdf5;
  border: 0;
  border-radius: 12px;
}
.admin-one-workspace .admin-post-card-actions button:last-child { color: #475569; background: #f8fafc; border: 0; }
.admin-one-workspace .admin-post-card-actions svg { width: 16px; height: 16px; }
/* Comments */
.admin-one-workspace .admin-comment-status-tabs {
  flex-wrap: nowrap;
  justify-content: flex-start;
  padding: 0 0 12px;
  overflow-x: auto;
  scrollbar-width: none;
}
.admin-one-workspace .admin-comment-status-tabs::-webkit-scrollbar { display: none; }
.admin-one-workspace .admin-comment-status-tabs button { flex: 0 0 auto; }
.admin-one-workspace .admin-review-list {
  min-height: 0;
  display: block;
  overflow: hidden;
  padding: 0;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  box-shadow: 0 1px 3px rgba(15,23,42,.06);
}
.admin-one-workspace .admin-review-row {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 20px;
  background: #fff;
  border-bottom: 1px solid #f1f5f9;
}
.admin-one-workspace .admin-review-row:last-child { border-bottom: 0; }
.admin-one-workspace .admin-review-row:hover { background: rgba(248,250,252,.6); }
.admin-one-workspace .admin-review-row > img { width: 48px; height: 48px; flex: 0 0 48px; object-fit: cover; border: 1px solid #f1f5f9; border-radius: 50%; }
.admin-one-workspace .admin-review-main { min-width: 0; flex: 1; }
.admin-one-workspace .admin-review-main > header { display: flex; align-items: flex-start; flex-direction: column; gap: 2px; margin-bottom: 0; }
.admin-one-workspace .admin-review-main > header > div { min-width: 0; display: flex; align-items: center; gap: 6px; }
.admin-one-workspace .admin-review-main strong { max-width: 100%; overflow: hidden; color: #1e293b; font-size: 15px; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.admin-one-workspace .admin-review-main time { color: #64748b; font-size: 13px; }
.admin-one-workspace .admin-review-main > p { max-width: none; margin: 10px 0 14px; color: #334155; font-size: 14px; line-height: 1.7; overflow-wrap: anywhere; }
.admin-one-workspace .admin-row-actions { display: flex; align-items: center; gap: 8px; opacity: 1; }
.admin-one-workspace .admin-row-actions button { min-height: 34px; padding: 6px 14px; font-size: 12px; font-weight: 650; border-radius: 9px; }
.admin-one-workspace .admin-row-actions .is-approve { color: #047857; background: #ecfdf5; }
.admin-one-workspace .admin-row-actions .is-reject { color: #dc2626; background: #fef2f2; }
.admin-one-workspace .admin-row-actions .is-more { width: 34px; padding: 0; color: #94a3b8; background: transparent; }
/* Tables and pagination kept as real-data alternatives. */
.admin-one-workspace .admin-data-table-wrap {
  min-width: 0;
  overflow-x: auto;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  box-shadow: 0 1px 3px rgba(15,23,42,.05);
}
.admin-one-workspace .admin-data-table th { padding: 14px 12px; color: #64748b; background: #f8fafc; }
.admin-one-workspace .admin-data-table td { padding: 13px 12px; }
.admin-one-workspace .admin-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  margin-top: 20px;
  color: #64748b;
  font-size: 12px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  box-shadow: 0 1px 3px rgba(15,23,42,.05);
}
.admin-one-workspace .admin-pagination button {
  min-height: 36px;
  padding: 7px 12px;
  color: #475569;
  font-size: 12px;
  font-weight: 600;
  background: #f8fafc;
  border: 0;
  border-radius: 11px;
}
.admin-one-workspace .admin-pagination button:hover:not(:disabled) { background: #f1f5f9; }
.admin-one-workspace .admin-review-empty { margin: 0; border-radius: 16px; }
/* Tailwind reference controls: native-looking select labels with a compact
   rounded trigger, matching the supplied user-management prototype. */
.admin-one-workspace .admin-select-field {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #64748b;
  font-size: 12px;
  font-weight: 550;
}
.admin-one-workspace .admin-select-field > span {
  flex: 0 0 auto;
  white-space: nowrap;
}
.admin-one-workspace .admin-select-field > .relative { width: 128px; }
.admin-one-workspace .admin-select-field.is-page-size > .relative { width: 96px; }
.admin-one-workspace .admin-select-field .h-10 { min-height: 36px; height: 36px; padding-top: 0; padding-bottom: 0; }
.admin-one-workspace .admin-select-field .h-10 svg { width: 14px; height: 14px; }
@media (max-width: 767px) {
  .admin-one-workspace .admin-select-field { flex: 1 1 0; min-width: 0; }
  .admin-one-workspace .admin-select-field > .relative,
  .admin-one-workspace .admin-select-field.is-page-size > .relative { width: 100%; }
  .admin-one-workspace .admin-select-field > span { display: none; }
}
/* Drawers follow the same soft white/blue system. */
.admin-user-detail-header img { border-radius: 50%; }
.admin-user-detail-drawer,
.admin-audit-drawer,
.admin-add-modal,
.admin-history-panel,
.admin-profile-drawer { min-width: 0; box-sizing: border-box; overflow-wrap: anywhere; color: #334155; background: #fff; padding-bottom: max(18px, env(safe-area-inset-bottom)); }
:is(.admin-user-detail-drawer, .admin-audit-drawer, .admin-add-modal, .admin-history-panel, .admin-profile-drawer) > :is(header, footer, i) { flex-shrink: 0; }
:is(.admin-user-detail-drawer, .admin-audit-drawer, .admin-add-modal, .admin-history-panel, .admin-profile-drawer) > header div { min-width: 0; }
:is(.admin-user-detail-drawer, .admin-audit-drawer, .admin-add-modal, .admin-history-panel, .admin-profile-drawer) > header button { flex-shrink: 0; }
.admin-user-detail-actions .admin-user-role { color: #2563eb; background: #eff6ff; border-color: #dbeafe; }
/* Activity filters mirror the reference prototype's two-level toolbar: the
   view switch and sort/page controls stay grouped, while category/status
   selects align to the right on wide screens and become a second full row on
   phones. */
.admin-one-workspace .admin-activity-filter-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
}
.admin-one-workspace .admin-activity-filter-primary,
.admin-one-workspace .admin-activity-filter-secondary,
.admin-one-workspace .admin-activity-select-pair {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
}
.admin-one-workspace .admin-activity-filter-primary { flex: 0 1 auto; }
.admin-one-workspace .admin-activity-filter-secondary { flex: 0 1 292px; margin-left: auto; }
.admin-one-workspace .admin-activity-filter-secondary > div { min-width: 0; flex: 1 1 0; }
.admin-one-workspace .admin-activity-sort-select { width: 128px; flex: 0 1 128px; }
.admin-one-workspace .admin-activity-page-select { width: 96px; flex: 0 1 96px; }
.admin-one-workspace .admin-activity-filter-secondary .admin-select { width: 100%; }
.admin-one-workspace .admin-activity-filter-row .admin-select-trigger { min-height: 42px; }
@media (max-width: 767px) {
  .admin-one-workspace .admin-activity-filter-row { align-items: stretch; flex-direction: column; gap: 12px; }
  .admin-one-workspace .admin-activity-filter-primary,
  .admin-one-workspace .admin-activity-filter-secondary { width: 100%; flex: 1 1 auto; }
  .admin-one-workspace .admin-activity-filter-primary { gap: 10px; }
  .admin-one-workspace .admin-activity-select-pair { min-width: 0; flex: 1 1 auto; gap: 8px; }
  .admin-one-workspace .admin-activity-sort-select { min-width: 0; width: auto; flex: 1 1 auto; }
  .admin-one-workspace .admin-activity-page-select { width: 80px; flex: 0 0 80px; }
  .admin-one-workspace .admin-activity-filter-secondary { gap: 10px; margin-left: 0; }
  .admin-one-workspace .admin-activity-filter-secondary > div { min-width: 0; flex: 1 1 0; }
  .admin-one-workspace .admin-activity-filter-row .admin-select-trigger { min-height: 42px; }
}
@media (max-width: 430px) {
  .admin-one-workspace .admin-activity-filter-primary { gap: 8px; }
  .admin-one-workspace .admin-activity-page-select { width: 76px; flex-basis: 76px; }
}
/* Dark-mode parity for the reference admin console.  The public blog already
   toggles body.site-dark-mode; this final layer intentionally wins over the
   legacy light-mode parity rules above it. */
body.site-dark-mode .admin-panel-overlay,
body.site-dark-mode .admin-panel-modal,
body.site-dark-mode .admin-one-workspace { color: #e2e8f0; background: rgba(15,23,42,.88); }
body.site-dark-mode .admin-one-sidebar,
body.site-dark-mode .admin-one-workspace .admin-console-header { color: #cbd5e1; background: rgba(17,24,39,.82); border-color: rgba(148,163,184,.2); }
body.site-dark-mode .admin-one-sidebar { box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 6px 0 24px rgba(2,6,23,.12); }
body.site-dark-mode .admin-one-sidebar-brand { border-color: #263244; }
body.site-dark-mode .admin-one-sidebar-brand strong,
body.site-dark-mode .admin-one-workspace .admin-console-header h2,
body.site-dark-mode .admin-one-workspace .admin-stat-card strong,
body.site-dark-mode .admin-one-workspace .admin-user-card > header strong,
body.site-dark-mode .admin-one-workspace .admin-post-card h3,
body.site-dark-mode .admin-one-workspace .admin-review-main strong,
body.site-dark-mode .admin-overview-hero h3,
body.site-dark-mode .admin-priority-copy strong,
body.site-dark-mode .admin-overview-panel h3,
body.site-dark-mode .admin-hot-post-item strong,
body.site-dark-mode .admin-operation-item strong { color: #f8fafc; }
body.site-dark-mode .admin-one-sidebar nav button { color: #cbd5e1; }
body.site-dark-mode .admin-one-sidebar nav button:hover { color: #f8fafc; background: #1e293b; }
body.site-dark-mode .admin-one-sidebar nav button.active { color: #fff; background: #047857; }
body.site-dark-mode .admin-one-sidebar nav svg { color: #94a3b8; }
body.site-dark-mode .admin-one-sidebar nav button.active svg { color: #fff; }
body.site-dark-mode .admin-one-workspace .admin-console-header-actions .admin-console-search,
body.site-dark-mode .admin-one-workspace .admin-mobile-search-bar .admin-console-search,
body.site-dark-mode .admin-one-menu-trigger { color: #cbd5e1; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-console-header-actions .admin-console-search input,
body.site-dark-mode .admin-one-workspace .admin-mobile-search-bar .admin-console-search input { color: #f8fafc; }
body.site-dark-mode .admin-one-workspace .admin-console-header-actions .admin-console-search input::placeholder,
body.site-dark-mode .admin-one-workspace .admin-mobile-search-bar .admin-console-search input::placeholder { color: #64748b; }
body.site-dark-mode .admin-one-workspace .admin-refresh-trigger,
body.site-dark-mode .admin-one-workspace .admin-mobile-search-trigger { color: #94a3b8; }
body.site-dark-mode .admin-one-workspace .admin-refresh-trigger:hover,
body.site-dark-mode .admin-one-workspace .admin-mobile-search-trigger:hover { color: #f8fafc; background: #1e293b; }
body.site-dark-mode .admin-one-workspace .admin-stat-card,
body.site-dark-mode .admin-one-workspace .admin-user-filter-bar,
body.site-dark-mode .admin-one-workspace .admin-user-card,
body.site-dark-mode .admin-one-workspace .admin-post-card,
body.site-dark-mode .admin-one-workspace .admin-review-list,
body.site-dark-mode .admin-one-workspace .admin-review-row,
body.site-dark-mode .admin-overview-panel,
body.site-dark-mode .admin-overview-dashboard-grid .admin-overview-panel,
body.site-dark-mode .admin-operations-panel,
body.site-dark-mode .admin-one-workspace .admin-data-table-wrap,
body.site-dark-mode .admin-one-workspace .admin-pagination,
body.site-dark-mode .admin-user-detail-drawer,
body.site-dark-mode .admin-audit-drawer,
body.site-dark-mode .admin-add-modal,
body.site-dark-mode .admin-history-panel,
body.site-dark-mode .admin-profile-drawer { color: #e2e8f0; background: rgba(17,24,39,.96); border-color: #334155; box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 8px 24px rgba(2,6,23,.24); }
body.site-dark-mode .admin-one-workspace .admin-stat-card:hover,
body.site-dark-mode .admin-one-workspace .admin-user-card:hover,
body.site-dark-mode .admin-one-workspace .admin-post-card:hover { background: #172033; border-color: #059669; }
body.site-dark-mode .admin-one-workspace .admin-stat-card header span,
body.site-dark-mode .admin-one-workspace .admin-overview-panel-kicker,
body.site-dark-mode .admin-one-workspace .admin-overview-panel-note,
body.site-dark-mode .admin-one-workspace .admin-overview-live,
body.site-dark-mode .admin-one-workspace .admin-post-card p,
body.site-dark-mode .admin-one-workspace .admin-review-main time,
body.site-dark-mode .admin-one-workspace .admin-user-last,
body.site-dark-mode .admin-one-workspace .admin-table-device small,
body.site-dark-mode .admin-one-workspace .admin-table-device span { color: #94a3b8; }
body.site-dark-mode .admin-overview-hero,
body.site-dark-mode .admin-overview-panel > header,
body.site-dark-mode .admin-overview-list li,
body.site-dark-mode .admin-operation-item,
body.site-dark-mode .admin-one-workspace .admin-user-actions,
body.site-dark-mode .admin-one-workspace .admin-review-row,
body.site-dark-mode .admin-one-workspace .admin-post-card-actions { border-color: #334155; }
body.site-dark-mode .admin-overview-list li strong,
body.site-dark-mode .admin-one-workspace .admin-user-device-grid strong,
body.site-dark-mode .admin-one-workspace .admin-review-main > p { color: #e2e8f0; }
body.site-dark-mode .admin-overview-shortcuts button { color: #cbd5e1; }
body.site-dark-mode .admin-overview-shortcuts button:hover,
body.site-dark-mode .admin-hot-post-item:hover { color: #bfdbfe; background: #172554; }
body.site-dark-mode .admin-overview-refresh { color: #bfdbfe; background: #172554; border-color: #1e3a8a; }
body.site-dark-mode .admin-priority-card { color: #e2e8f0; background: #111827; border-color: #334155; }
body.site-dark-mode .admin-priority-card:hover { border-color: #3b82f6; background: #172033; }
body.site-dark-mode .admin-priority-icon { background: #1e293b; }
body.site-dark-mode .admin-priority-card.is-warning .admin-priority-icon { color: #fbbf24; background: #451a03; }
body.site-dark-mode .admin-priority-card.is-danger .admin-priority-icon { color: #fb7185; background: #4c0519; }
body.site-dark-mode .admin-priority-card.is-blue .admin-priority-icon { color: #93c5fd; background: #172554; }
body.site-dark-mode .admin-one-workspace .admin-user-device-grid,
body.site-dark-mode .admin-one-workspace .admin-user-filter-tabs,
body.site-dark-mode .admin-one-workspace .admin-view-switch { color: #cbd5e1; background: #0f172a; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-user-device-grid > div { border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-user-filter-tabs button,
body.site-dark-mode .admin-one-workspace .admin-post-categories button,
body.site-dark-mode .admin-one-workspace .admin-comment-status-tabs button { color: #cbd5e1; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-user-filter-tabs button.active,
body.site-dark-mode .admin-one-workspace .admin-post-categories button.active,
body.site-dark-mode .admin-one-workspace .admin-comment-status-tabs button.active { color: #fff; background: #047857; border-color: #059669; }
body.site-dark-mode .admin-one-workspace .admin-view-switch button { color: #94a3b8; }
body.site-dark-mode .admin-one-workspace .admin-view-switch button.active { color: #fff; background: #047857; }
body.site-dark-mode .admin-one-workspace .admin-select-field { color: #94a3b8; }
body.site-dark-mode .admin-one-workspace .admin-select-field .relative > button { color: #e2e8f0; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-select-field .relative > button:hover { border-color: #60a5fa; }
body.site-dark-mode .admin-one-workspace .admin-select-field .relative > div.absolute { color: #e2e8f0; background: #111827; border-color: #334155; box-shadow: 0 14px 30px rgba(2,6,23,.38); }
body.site-dark-mode .admin-one-workspace .admin-select-field .relative > div.absolute button { color: #cbd5e1; }
body.site-dark-mode .admin-one-workspace .admin-select-field .relative > div.absolute button:hover { color: #f8fafc; background: #1e293b; }
body.site-dark-mode .admin-one-workspace .admin-select-field .relative > div.absolute button.bg-blue-50 { color: #bfdbfe; background: #1e3a8a; }
body.site-dark-mode .admin-one-workspace .admin-select-field .relative > div.absolute button.bg-blue-50 svg { color: #93c5fd; }
body.site-dark-mode .admin-one-workspace .admin-activity-filter-row .admin-select-trigger { color: #e2e8f0; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-activity-filter-row .admin-select-menu { color: #e2e8f0; background: #111827; border-color: #334155; box-shadow: 0 14px 30px rgba(2,6,23,.38); }
body.site-dark-mode .admin-one-workspace .admin-activity-filter-row .admin-select-option { color: #cbd5e1; }
body.site-dark-mode .admin-one-workspace .admin-activity-filter-row .admin-select-option:hover { color: #f8fafc; background: #1e293b; }
body.site-dark-mode .admin-one-workspace .admin-activity-filter-row .admin-select-option.bg-blue-50 { color: #bfdbfe; background: #1e3a8a; }
body.site-dark-mode .admin-one-workspace .admin-activity-filter-row .admin-select-option.bg-blue-50 svg { color: #93c5fd; }
body.site-dark-mode .admin-one-workspace .admin-post-card > header button,
body.site-dark-mode .admin-one-workspace .admin-post-card-actions button:last-child,
body.site-dark-mode .admin-one-workspace .admin-user-role { color: #cbd5e1; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-post-card-actions button:first-child,
body.site-dark-mode .admin-one-workspace .admin-user-detail-actions .admin-user-role { color: #bfdbfe; background: #172554; border-color: #1e3a8a; }
body.site-dark-mode .admin-one-workspace .admin-data-table th { color: #94a3b8; background: #0f172a; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-data-table td { color: #cbd5e1; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-data-table tr:hover td { background: #1e293b; }
body.site-dark-mode .admin-one-workspace .admin-table-user { color: #f8fafc; }
body.site-dark-mode .admin-one-workspace .admin-pagination { color: #94a3b8; }
body.site-dark-mode .admin-one-workspace .admin-pagination button { color: #cbd5e1; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-pagination button:hover:not(:disabled) { background: #334155; }
body.site-dark-mode .admin-one-workspace .admin-review-empty { color: #94a3b8; background: #0f172a; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-review-empty > strong { color: #e2e8f0; }
body.site-dark-mode .admin-user-detail-stats > div,
body.site-dark-mode .admin-user-detail-grid > div { color: #cbd5e1; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-detail-section { border-color: #334155; }
body.site-dark-mode .admin-detail-section h4,
body.site-dark-mode .admin-user-detail-header h3,
body.site-dark-mode .admin-user-detail-stats strong,
body.site-dark-mode .admin-table-post-title strong { color: #f8fafc; }
body.site-dark-mode .admin-detail-list li { border-color: #334155; }
/* Deep surfaces inside the drawers and detail panels need the same dark
   palette as their shells.  Keep these rules at the end so they win over the
   legacy light-mode component declarations above. */
body.site-dark-mode .admin-audit-overlay,
body.site-dark-mode .admin-add-overlay,
body.site-dark-mode .admin-history-overlay,
body.site-dark-mode .admin-user-detail-overlay,
body.site-dark-mode .admin-profile-backdrop { background: rgba(2, 6, 23, .66); }
body.site-dark-mode .admin-audit-drawer > header,
body.site-dark-mode .admin-add-modal > header,
body.site-dark-mode .admin-audit-drawer > footer,
body.site-dark-mode .admin-add-modal > footer,
body.site-dark-mode .admin-user-detail-header,
body.site-dark-mode .admin-user-detail-actions,
body.site-dark-mode .admin-history-item { border-color: #334155; }
body.site-dark-mode .admin-audit-drawer > header > button,
body.site-dark-mode .admin-add-modal > header > button,
body.site-dark-mode .admin-user-detail-header > button,
body.site-dark-mode .admin-history-header > button { color: #cbd5e1; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-audit-handle,
body.site-dark-mode .admin-drawer-handle { background: #475569; }
body.site-dark-mode .admin-audit-profile,
body.site-dark-mode .admin-audit-body section > p,
body.site-dark-mode .admin-audit-source,
body.site-dark-mode .admin-add-body > label input,
body.site-dark-mode .admin-user-detail-stats > div,
body.site-dark-mode .admin-user-detail-grid > div,
body.site-dark-mode .admin-history-note,
body.site-dark-mode .admin-history-tags span { color: #cbd5e1; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-audit-profile strong,
body.site-dark-mode .admin-audit-body section > p,
body.site-dark-mode .admin-audit-source strong,
body.site-dark-mode .admin-add-body > label,
body.site-dark-mode .admin-add-modal legend,
body.site-dark-mode .admin-user-detail-grid dd,
body.site-dark-mode .admin-detail-list strong,
body.site-dark-mode .admin-history-meta strong,
body.site-dark-mode .admin-history-item p { color: #e2e8f0; }
body.site-dark-mode .admin-audit-profile small,
body.site-dark-mode .admin-audit-profile em,
body.site-dark-mode .admin-audit-body section > label,
body.site-dark-mode .admin-audit-source small,
body.site-dark-mode .admin-add-body > label input::placeholder,
body.site-dark-mode .admin-detail-section-note,
body.site-dark-mode .admin-detail-activity p,
body.site-dark-mode .admin-detail-list small,
body.site-dark-mode .admin-history-meta,
body.site-dark-mode .admin-history-item p,
body.site-dark-mode .admin-history-empty { color: #94a3b8; }
body.site-dark-mode .admin-audit-risk { color: #fbbf24; background: #451a03; border-color: #92400e; }
body.site-dark-mode .admin-audit-risk small { color: #fcd34d; }
body.site-dark-mode .admin-audit-safe { color: #6ee7b7; background: #052e2b; border-color: #065f46; }
body.site-dark-mode .admin-audit-source svg { color: #60a5fa; }
body.site-dark-mode .admin-add-modal fieldset label { color: #cbd5e1; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-add-modal fieldset label.active { color: #6ee7b7; background: #052e2b; border-color: #047857; }
body.site-dark-mode .admin-add-modal > footer button { color: #cbd5e1; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-add-modal > footer button:last-child { color: #fff; background: #047857; border-color: #059669; }
body.site-dark-mode .admin-history-item > button { color: #6ee7b7; background: #052e2b; border-color: #047857; }
body.site-dark-mode .admin-history-item > button:hover { background: #064e3b; }
body.site-dark-mode .admin-profile-drawer > header strong,
body.site-dark-mode .admin-profile-links button { color: #e2e8f0; }
body.site-dark-mode .admin-profile-links button:hover { color: #f8fafc; background: #1e293b; }
body.site-dark-mode .admin-profile-links button svg { color: #94a3b8; }
body.site-dark-mode .admin-user-detail-header small,
body.site-dark-mode .admin-user-detail-loading,
body.site-dark-mode .admin-user-detail-grid dt { color: #94a3b8; }
body.site-dark-mode .admin-detail-section h4 { color: #f8fafc; }
body.site-dark-mode .admin-detail-activity p svg { color: #64748b; }
body.site-dark-mode .admin-user-detail-actions .admin-user-delete { color: #fda4af; background: #4c0519; border-color: #9f1239; }
body.site-dark-mode .admin-user-detail-actions .admin-user-delete:hover { background: #881337; }
body.site-dark-mode .admin-one-workspace .admin-post-card > header span,
body.site-dark-mode .admin-table-badge { color: #cbd5e1; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-one-workspace .admin-post-card > header em,
body.site-dark-mode .admin-table-badge.is-admin { color: #fda4af; background: #4c0519; }
body.site-dark-mode .admin-one-workspace .admin-row-actions .is-approve,
body.site-dark-mode .admin-one-workspace .admin-table-actions button { color: #bfdbfe; background: #172554; border-color: #1e3a8a; }
body.site-dark-mode .admin-one-workspace .admin-row-actions .is-reject,
body.site-dark-mode .admin-one-workspace .admin-table-actions button.is-danger { color: #fda4af; background: #4c0519; border-color: #9f1239; }
body.site-dark-mode .admin-one-workspace .admin-row-actions .is-more { color: #cbd5e1; background: #1e293b; border-color: #334155; }
body.site-dark-mode .admin-review-status.is-pending { color: #fbbf24; background: #451a03; }
body.site-dark-mode .admin-review-status.is-approved { color: #6ee7b7; background: #052e2b; }
body.site-dark-mode .admin-review-status.is-risk,
body.site-dark-mode .admin-review-status.is-rejected { color: #fda4af; background: #4c0519; }
body.site-dark-mode .admin-trend-chart line { stroke: #334155; }
body.site-dark-mode .admin-trend-legend,
body.site-dark-mode .admin-trend-axis { color: #94a3b8; }
body.site-dark-mode .admin-one-workspace .admin-stat-card:nth-child(1) header svg { color: #93c5fd; background: #172554; }
body.site-dark-mode .admin-one-workspace .admin-stat-card:nth-child(2) header svg { color: #c4b5fd; background: #2e1065; }
body.site-dark-mode .admin-one-workspace .admin-stat-card:nth-child(3) header svg { color: #6ee7b7; background: #052e2b; }
body.site-dark-mode .admin-one-workspace .admin-stat-card:nth-child(4) header svg { color: #fcd34d; background: #451a03; }
@media (max-width: 1023px) {
  .admin-one-workspace .admin-user-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .admin-one-workspace .admin-post-filter-bar > .admin-list-toolbar-actions { justify-content: flex-start; }
  .admin-one-workspace .admin-post-selects { margin-left: 0; }
}
@media (max-width: 767px) {
  .admin-one-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    width: 256px;
    min-width: 256px;
    background: #fff;
    box-shadow: 18px 0 45px rgba(15,23,42,.18);
    transform: translateX(-102%);
    transition: transform .24s cubic-bezier(.22,1,.36,1);
  }
  .admin-one-sidebar.is-open { transform: translateX(0); }
  .admin-one-sidebar-backdrop {
    position: fixed;
    inset: 0;
    z-index: 55;
    display: block;
    padding: 0;
    background: rgba(15,23,42,.25);
    border: 0;
    backdrop-filter: blur(3px);
  }
  .admin-one-menu-trigger { display: grid; }
  .admin-one-workspace .admin-console-header-inner { height: 60px; padding: 0 16px; }
  .admin-one-workspace .admin-console-header h2 { font-size: 18px; }
  .admin-one-workspace .admin-stats-section,
  .admin-one-workspace .admin-content { width: min(calc(100% - 32px), 1024px); }
  .admin-one-workspace .admin-stats-section { padding-top: 16px; }
  .admin-one-workspace .admin-content { padding-top: 20px; padding-bottom: 36px; }
  .admin-one-workspace .admin-overview-content { grid-template-columns: 1fr; gap: 20px; }
  .admin-overview-hero,
  .admin-overview-priority-grid,
  .admin-overview-dashboard-grid,
  .admin-overview-columns,
  .admin-operations-panel { grid-column: 1; grid-row: auto; }
  .admin-overview-columns { gap: 20px; }
  .admin-one-workspace .admin-user-filter-bar { align-items: stretch; flex-direction: column; gap: 12px; padding: 14px; }
  .admin-one-workspace .admin-user-filter-tabs { width: 100%; }
  .admin-one-workspace .admin-user-filter-tabs button { min-width: 0; flex: 1; }
  .admin-one-workspace .admin-user-filter-bar > .admin-list-toolbar-actions { width: 100%; justify-content: space-between; }
  .admin-one-workspace .admin-add-user-btn { margin-left: auto; }
  .admin-one-workspace .admin-post-filter-bar > .admin-list-toolbar-actions { display: grid; grid-template-columns: auto minmax(0, 1fr) minmax(0, 1fr); width: 100%; gap: 10px; }
  .admin-one-workspace .admin-post-filter-bar .admin-sort-select { min-width: 0; display: grid; grid-template-columns: auto minmax(0, 1fr); }
  .admin-one-workspace .admin-post-filter-bar .admin-sort-select select { min-width: 0; width: 100%; }
  .admin-one-workspace .admin-post-selects { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
  .admin-one-workspace .admin-post-selects label { min-width: 0; display: grid; grid-template-columns: auto minmax(0, 1fr); }
  .admin-one-workspace .admin-post-selects select { min-width: 0; width: 100%; }
}
@media (max-width: 639px) {
  .admin-one-workspace .admin-profile-trigger { width: 32px; height: 32px; flex-basis: 32px; margin-left: 4px; }
  .admin-one-workspace .admin-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .admin-one-workspace .admin-stat-card,
  .admin-one-workspace .admin-stat-card:nth-child(-n+2),
  .admin-one-workspace .admin-stat-card:nth-child(2),
  .admin-one-workspace .admin-stat-card:last-child { min-height: 108px; padding: 16px; }
  .admin-one-workspace .admin-stat-card header { margin-bottom: 13px; }
  .admin-one-workspace .admin-stat-card header span { font-size: 11px; }
  .admin-one-workspace .admin-stat-card header svg { width: 28px; height: 28px; padding: 6px; }
  .admin-one-workspace .admin-stat-card strong { font-size: 24px; }
  .admin-one-workspace .admin-stat-card em { max-width: 58%; font-size: 9px; }
  .admin-overview-hero { gap: 12px; }
  .admin-overview-hero h3 { font-size: 19px; }
  .admin-priority-card { gap: 13px; padding: 15px; }
  .admin-priority-icon { width: 42px; height: 42px; flex-basis: 42px; }
  .admin-priority-copy strong { font-size: 22px; }
  .admin-overview-panel,
  .admin-overview-dashboard-grid .admin-overview-panel,
  .admin-operations-panel { padding: 16px; }
  .admin-one-workspace .admin-user-card-grid { grid-template-columns: 1fr; gap: 16px; }
  .admin-one-workspace .admin-user-card { gap: 15px; padding: 16px; }
  .admin-one-workspace .admin-user-card > header { gap: 14px; }
  .admin-one-workspace .admin-user-card > header > img { width: 52px; height: 52px; flex-basis: 52px; }
  .admin-one-workspace .admin-user-card > header strong { font-size: 16px; }
  .admin-one-workspace .admin-user-actions { grid-template-columns: minmax(0, 1fr) 40px; gap: 8px; padding-top: 14px; }
  .admin-one-workspace .admin-user-role,
  .admin-one-workspace .admin-user-delete { min-height: 40px; height: 40px; }
  .admin-one-workspace .admin-user-delete { width: 40px; }
  .admin-one-workspace .admin-user-filter-bar > .admin-list-toolbar-actions { display: grid; grid-template-columns: auto minmax(0, 1fr) minmax(0, 1fr); gap: 8px; }
  .admin-one-workspace .admin-user-filter-bar .admin-sort-select { min-width: 0; display: grid; grid-template-columns: auto minmax(0, 1fr); }
  .admin-one-workspace .admin-user-filter-bar .admin-sort-select select { min-width: 0; width: 100%; padding-right: 6px; }
  .admin-one-workspace .admin-user-filter-bar .admin-add-user-btn { display: block; grid-column: 1 / -1; width: 100%; min-height: 44px; }
  .admin-one-workspace .admin-view-switch button span { display: none; }
  .admin-one-workspace .admin-post-categories,
  .admin-one-workspace .admin-comment-status-tabs {
    flex-wrap: nowrap;
    width: calc(100% + 32px);
    padding-right: 16px;
    padding-left: 16px;
    margin-right: -16px;
    margin-left: -16px;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .admin-one-workspace .admin-post-categories::-webkit-scrollbar,
  .admin-one-workspace .admin-comment-status-tabs::-webkit-scrollbar { display: none; }
  .admin-one-workspace .admin-post-categories button,
  .admin-one-workspace .admin-comment-status-tabs button { flex: 0 0 auto; min-height: 38px; padding: 8px 16px; }
  .admin-one-workspace .admin-post-filter-bar > .admin-list-toolbar-actions { grid-template-columns: auto minmax(0, 1fr); }
  .admin-one-workspace .admin-post-filter-bar .admin-sort-select:nth-of-type(2) { display: none; }
  .admin-one-workspace .admin-post-card-grid { gap: 16px; }
  .admin-one-workspace .admin-post-card { padding: 16px; }
  .admin-one-workspace .admin-post-card h3 { font-size: 18px; }
  .admin-one-workspace .admin-post-card-actions button { min-height: 40px; }
  .admin-one-workspace .admin-review-row { gap: 12px; padding: 16px; }
  .admin-one-workspace .admin-review-row > img { width: 40px; height: 40px; flex-basis: 40px; }
  .admin-one-workspace .admin-review-main strong { font-size: 14px; }
  .admin-one-workspace .admin-review-main > p { font-size: 13px; }
  .admin-one-workspace .admin-row-actions button { min-height: 36px; }
  .admin-one-workspace .admin-pagination { padding: 8px; }
  .admin-one-workspace .admin-pagination span { min-width: 0; text-align: center; white-space: normal; }
  .admin-one-workspace .admin-pagination button { min-height: 34px; padding: 6px 10px; }
}
@media (max-width: 390px) {
  .admin-one-sidebar { width: min(84vw, 256px); min-width: 0; }
  .admin-one-workspace .admin-console-header-inner { padding: 0 12px; }
  .admin-one-workspace .admin-stats-section,
  .admin-one-workspace .admin-content { width: calc(100% - 24px); }
  .admin-one-workspace .admin-stat-card,
  .admin-one-workspace .admin-stat-card:nth-child(-n+2),
  .admin-one-workspace .admin-stat-card:nth-child(2),
  .admin-one-workspace .admin-stat-card:last-child { padding: 13px; }
  .admin-one-workspace .admin-stat-card > div { align-items: flex-start; flex-direction: column; gap: 5px; }
  .admin-one-workspace .admin-stat-card em { max-width: 100%; }
  .admin-one-workspace .admin-user-filter-bar { padding: 12px; }
  .admin-one-workspace .admin-user-filter-bar > .admin-list-toolbar-actions { grid-template-columns: auto minmax(0, 1fr); }
  .admin-one-workspace .admin-user-filter-bar .admin-sort-select:nth-of-type(2) { display: none; }
  .admin-one-workspace .admin-user-card { padding: 15px; }
  .admin-one-workspace .admin-user-card > header { gap: 11px; }
  .admin-one-workspace .admin-user-last time { font-size: 10px; }
}
/* Mobile workspace: visible search, single-column content, no hidden creation action. */
@media (max-width: 767px) {
  .admin-one-sidebar:not(.is-open) { visibility: hidden; }
  .admin-one-workspace .admin-console-header-inner { height: auto; min-height: 64px; flex-wrap: wrap; padding: 12px 16px; gap: 10px; }
  .admin-one-workspace .admin-console-header-actions { width: 100%; }
  .admin-one-workspace .admin-console-header-actions .admin-console-search { display: flex; width: auto; flex: 1; }
  .admin-one-workspace .admin-console-header-actions .admin-console-search input { font-size: 16px; }
  .admin-one-workspace .admin-view-switch { display: none; }
  .admin-one-workspace .admin-user-card-grid,
  .admin-one-workspace .admin-post-card-grid { grid-template-columns: minmax(0, 1fr); }
  .admin-one-workspace .admin-comment-section { width: 100%; margin: 0; }
  .admin-one-workspace .admin-review-row { gap: 12px; padding: 16px; }
  .admin-one-workspace .admin-user-filter-bar > .admin-list-toolbar-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .admin-one-workspace .admin-user-filter-bar .admin-add-user-btn { display: block; grid-column: 1 / -1; width: 100%; min-height: 44px; }
}
.admin-filter-summary { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin-bottom: 14px; color: #64748b; font-size: 14px; overflow-wrap: anywhere; }
.admin-filter-summary button { margin-left: auto; min-height: 36px; padding: 6px 12px; color: #047857; background: #ecfdf5; border: 1px solid #a7f3d0; border-radius: 8px; }
.admin-bulk-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; padding: 10px 12px; margin-bottom: 14px; font-size: 14px; color: #475569; background: #fff; border: 1px solid #e2e8f0; border-radius: 10px; }
.admin-bulk-toolbar label { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; }
.admin-bulk-toolbar button { min-height: 40px; padding: 6px 12px; color: #047857; background: #ecfdf5; border: 1px solid #a7f3d0; border-radius: 8px; }
.admin-bulk-toolbar button.is-danger { color: #be123c; background: #fff1f2; border-color: #fecdd3; }
.admin-panel-modal input[type="checkbox"] { width: 18px; height: 18px; flex-shrink: 0; accent-color: #059669; cursor: pointer; }
body.site-dark-mode .admin-bulk-toolbar { color: #cbd5e1; background: #111827; border-color: #334155; }
body.site-dark-mode .admin-bulk-toolbar button,
body.site-dark-mode .admin-filter-summary button { color: #6ee7b7; background: #064e3b; border-color: #047857; }
body.site-dark-mode .admin-bulk-toolbar button.is-danger { color: #fda4af; background: #4c0519; border-color: #9f1239; }
.admin-audit-drawer > footer,
.admin-add-modal > footer,
.admin-user-detail-actions { position: sticky; bottom: 0; z-index: 2; padding: 12px 0 max(12px, env(safe-area-inset-bottom)); background: inherit; }
.admin-add-body > label input { min-height: 44px; font-size: 16px; }
/* Modern responsive hardening layer
   Native-CSS equivalent of the requested Tailwind utility rules. */
.admin-panel-modal button,
.admin-panel-modal [role="button"],
.admin-panel-modal select,
.admin-panel-modal input {
  -webkit-tap-highlight-color: transparent;
}
.admin-panel-modal button,
.admin-panel-modal [role="button"],
.admin-panel-modal select,
.admin-one-workspace .admin-user-card {
  transition:
    color .16s ease,
    background-color .16s ease,
    border-color .16s ease,
    box-shadow .16s ease,
    opacity .16s ease,
    transform .1s ease;
}
.admin-panel-modal button:not(:disabled):active { transform: scale(.95); }
.admin-one-workspace .admin-user-card:active { transform: scale(.97); }
.admin-panel-modal button:focus-visible,
.admin-panel-modal [role="button"]:focus-visible,
.admin-panel-modal select:focus-visible,
.admin-panel-modal input:focus-visible {
  outline: 2px solid #059669;
  outline-offset: 2px;
}
.admin-panel-modal button:disabled { cursor: not-allowed; opacity: .55; }
/* Icons and avatars always keep their intended geometry. */
.admin-panel-modal button svg,
.admin-panel-modal [role="button"] > svg,
.admin-priority-icon,
.admin-one-workspace .admin-user-card > header > img,
.admin-one-workspace .admin-review-row > img,
.admin-table-user img,
.admin-user-detail-header img,
.admin-audit-profile img,
.admin-profile-trigger img,
.admin-one-sidebar-profile img,
.admin-profile-drawer img {
  flex-shrink: 0;
}
.admin-one-workspace .admin-user-card > header > img,
.admin-one-workspace .admin-review-row > img,
.admin-table-user img,
.admin-user-detail-header img,
.admin-audit-profile img,
.admin-profile-trigger img,
.admin-one-sidebar-profile img,
.admin-profile-drawer img { border-radius: 50% !important; }
/* Equal-width touch actions: no fixed button width and no small-screen squish. */
.admin-one-workspace .admin-user-actions,
.admin-one-workspace .admin-row-actions,
.admin-audit-drawer > footer,
.admin-add-modal > footer,
.admin-user-detail-actions,
.admin-one-workspace .admin-post-card-actions {
  display: flex;
  grid-template-columns: none;
  align-items: stretch;
}
.admin-one-workspace .admin-user-actions > button,
.admin-one-workspace .admin-row-actions > button,
.admin-audit-drawer > footer > button,
.admin-add-modal > footer > button,
.admin-user-detail-actions > button,
.admin-one-workspace .admin-post-card-actions > button {
  width: auto !important;
  min-width: 0;
  min-height: 40px;
  height: 40px;
  flex: 1 1 0;
  flex-shrink: 1;
  justify-content: center;
  white-space: nowrap;
}
.admin-one-workspace .admin-user-delete {
  width: auto;
  padding: 0 12px;
}
.admin-one-workspace .admin-row-actions {
  width: min(100%, 440px);
}
.admin-one-workspace .admin-row-actions .is-more {
  width: auto;
  padding: 6px 14px;
  color: #64748b;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
}
.admin-audit-drawer > footer { gap: 8px; }
.admin-audit-drawer > footer > button { padding: 0 8px; }
.admin-add-modal > footer { justify-content: stretch; }
/* Flex truncation and hostile long-string protection. */
.admin-console-brand,
.admin-console-brand > div,
.admin-hot-post-item > span,
.admin-operation-item > div,
.admin-table-user,
.admin-table-user strong,
.admin-table-device,
.admin-table-post-title,
.admin-table-post-title strong,
.admin-detail-activity,
.admin-detail-activity p,
.admin-detail-list li,
.admin-detail-list li > span,
.admin-audit-profile > div,
.admin-audit-profile span,
.admin-audit-source,
.admin-audit-source strong,
.admin-post-card > header,
.admin-post-card > header > div,
.admin-post-card > footer,
.admin-review-main,
.admin-review-main > header,
.admin-review-main > header > div {
  min-width: 0;
}
.admin-console-brand h2,
.admin-hot-post-item strong,
.admin-hot-post-item small,
.admin-operation-item strong,
.admin-operation-item small,
.admin-table-user strong,
.admin-table-device span,
.admin-table-device small,
.admin-table-post-title strong,
.admin-user-detail-grid dd,
.admin-detail-activity p,
.admin-detail-list strong,
.admin-detail-list small,
.admin-audit-source strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-one-workspace .admin-review-main > p,
.admin-audit-body section > p,
.admin-audit-risk small,
.admin-one-workspace .admin-post-card h3 {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: break-all;
  white-space: pre-wrap;
}
.admin-one-workspace .admin-post-card h3 {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.admin-one-workspace .admin-user-card,
.admin-one-workspace .admin-post-card,
.admin-one-workspace .admin-review-list,
.admin-one-workspace .admin-user-filter-bar,
.admin-one-workspace .admin-data-table-wrap {
  border-color: #e2e8f0;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65), 0 4px 16px rgba(15,23,42,.045);
}
.admin-one-workspace .admin-user-card { cursor: pointer; }
.admin-table-badge,
.admin-one-workspace .admin-post-card > header span { color: #475569; background: #f1f5f9; }
.admin-table-badge.is-admin { color: #e11d48; background: #fff1f2; }
/* Tabs remain one row and scroll horizontally instead of stacking. */
.admin-one-workspace .admin-user-filter-tabs,
.admin-one-workspace .admin-post-categories,
.admin-one-workspace .admin-comment-status-tabs {
  max-width: 100%;
  flex-wrap: nowrap;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
}
.admin-one-workspace .admin-user-filter-tabs::-webkit-scrollbar,
.admin-one-workspace .admin-post-categories::-webkit-scrollbar,
.admin-one-workspace .admin-comment-status-tabs::-webkit-scrollbar { display: none; }
.admin-one-workspace .admin-user-filter-tabs > button,
.admin-one-workspace .admin-post-categories > button,
.admin-one-workspace .admin-comment-status-tabs > button { flex: 0 0 auto; }
@media (max-width: 767px) {
  .admin-one-workspace .admin-user-filter-bar { overflow: hidden; }
  .admin-one-workspace .admin-user-filter-tabs {
    width: calc(100% + 28px);
    max-width: none;
    gap: 8px;
    padding: 0 14px 4px;
    margin-right: -14px;
    margin-left: -14px;
    background: transparent;
    border-radius: 0;
  }
  .admin-one-workspace .admin-user-filter-tabs > button {
    min-width: max-content;
    min-height: 40px;
    flex: 0 0 auto;
    padding: 8px 14px;
    background: #f1f5f9;
  }
  .admin-one-workspace .admin-user-actions > button,
  .admin-one-workspace .admin-row-actions > button,
  .admin-audit-drawer > footer > button,
  .admin-add-modal > footer > button,
  .admin-user-detail-actions > button,
  .admin-one-workspace .admin-post-card-actions > button {
    min-height: 40px;
    height: 40px;
  }
}
@media (max-width: 639px) {
  .admin-one-workspace .admin-row-actions { width: 100%; gap: 8px; }
  .admin-one-workspace .admin-row-actions > button { padding: 6px 8px; }
  .admin-one-workspace .admin-user-actions { display: flex; grid-template-columns: none; }
  .admin-one-workspace .admin-user-delete { width: auto; }
  .admin-audit-drawer > footer > button { font-size: 11px; }
}
@media (max-width: 390px) {
  .admin-one-workspace .admin-user-filter-tabs {
    width: calc(100% + 24px);
    padding-right: 12px;
    padding-left: 12px;
    margin-right: -12px;
    margin-left: -12px;
  }
  .admin-one-workspace .admin-user-actions,
  .admin-one-workspace .admin-post-card-actions,
  .admin-one-workspace .admin-row-actions { gap: 6px; }
  .admin-one-workspace .admin-user-actions > button,
  .admin-one-workspace .admin-post-card-actions > button,
  .admin-one-workspace .admin-row-actions > button { padding-right: 7px; padding-left: 7px; font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .admin-panel-modal *,
  .admin-panel-modal *::before,
  .admin-panel-modal *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
  .admin-panel-modal button:active,
  .admin-one-workspace .admin-user-card:active { transform: none; }
}
/* Final overlay correction: keep the reference dropdown visible above the
   rounded mobile toolbar instead of letting an ancestor clip its menu. */
.admin-one-workspace .admin-user-filter-bar,
.admin-one-workspace .admin-post-filter-bar,
.admin-one-workspace .admin-activity-filter-row { overflow: visible; }
.admin-one-workspace .admin-select { position: relative; z-index: 1; }
.admin-one-workspace .admin-select.is-open { z-index: 100; }
/* Shared durable resource errors; scoped to the admin workspace. */
.admin-panel-modal .admin-resource-error { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 16px; padding: 16px 20px; color: #9f1239; background: #fff1f2; border: 1px solid #fecdd3; border-radius: 16px; }
.admin-panel-modal .admin-resource-error > div { flex: 1 1 200px; min-width: 0; overflow-wrap: anywhere; }
.admin-panel-modal .admin-resource-error strong { font-size: 14px; }
.admin-panel-modal .admin-resource-error p { margin: 4px 0; font-size: 13px; }
.admin-panel-modal .admin-resource-error small { color: #881337; font-size: 12px; }
.admin-panel-modal .admin-resource-error button { min-height: 40px; padding: 8px 16px; color: #9f1239; background: #fff; border: 1px solid #fda4af; border-radius: 10px; font-weight: 700; cursor: pointer; }
.admin-panel-modal .admin-resource-error button:hover:not(:disabled) { background: #ffe4e6; }
.admin-panel-modal .admin-resource-error button:focus-visible { outline: 2px solid #be123c; outline-offset: 3px; }
.admin-panel-modal .admin-resource-error button:disabled { opacity: .6; cursor: wait; }
/* Video-style sheets: shared geometry, stationary headers and scrolling bodies. */
.admin-audit-overlay, .admin-add-overlay, .admin-history-overlay,
.admin-user-detail-overlay, .admin-profile-backdrop {
  align-items: flex-end;
  justify-content: center;
  overflow: hidden;
}
.admin-audit-drawer, .admin-add-modal, .admin-history-panel,
.admin-user-detail-drawer, .admin-profile-drawer {
  width: min(100%, 680px);
  height: auto;
  max-height: min(90dvh, calc(100dvh - max(24px, env(safe-area-inset-top))));
  margin: 0;
  overflow: hidden;
  border-radius: 24px 24px 0 0;
  box-sizing: border-box;
  padding: 12px max(18px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));
  background: rgba(248,250,252,.92);
  border: 1px solid rgba(148,163,184,.28);
  -webkit-backdrop-filter: blur(20px) saturate(120%);
  backdrop-filter: blur(20px) saturate(120%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.75), 0 -12px 38px rgba(15,23,42,.2);
}
.admin-audit-drawer::before, .admin-add-modal::before, .admin-history-panel::before,
.admin-user-detail-drawer::before, .admin-drawer-handle, .admin-audit-handle {
  content: '';
  display: block;
  flex: 0 0 5px;
  width: 44px;
  height: 5px;
  margin: 0 auto 14px;
  background: #cbd5e1;
  border-radius: 999px;
}
body.site-dark-mode :is(.admin-audit-drawer, .admin-add-modal, .admin-history-panel, .admin-user-detail-drawer)::before { background: #475569; }
.admin-audit-body, .admin-add-body, .admin-user-detail-body, .admin-profile-links { flex: 1; align-content: start; }
.admin-history-note { flex-shrink: 0; }
/* Opaque surfaces keep text readable when backdrop blur is unavailable. */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .admin-panel-modal, .admin-one-sidebar, .admin-one-workspace .admin-console-header,
  .admin-audit-drawer, .admin-add-modal, .admin-history-panel, .admin-user-detail-drawer, .admin-profile-drawer { background: #f8fafc; }
  body.site-dark-mode :is(.admin-panel-modal, .admin-one-sidebar, .admin-one-workspace .admin-console-header, .admin-audit-drawer, .admin-add-modal, .admin-history-panel, .admin-user-detail-drawer, .admin-profile-drawer) { background: #111827; }
}
.admin-panel-overlay {
  display: flex;
  justify-content: center;
  background: rgba(15, 23, 42, .42);
}
body.site-dark-mode .admin-panel-overlay { background: rgba(2, 6, 23, .6); }
.admin-panel-overlay > .admin-panel-modal {
  width: min(100%, 1440px) !important;
  max-width: 1440px !important;
  max-height: 100dvh;
}
/* App owns the outer fade transition; specialize only its admin root. */
.admin-panel-overlay.fade-enter-active, .admin-panel-overlay.fade-leave-active { transition: opacity 220ms ease; }
.admin-panel-overlay.fade-enter-active > .admin-panel-modal,
.admin-panel-overlay.fade-leave-active > .admin-panel-modal { transition: transform 220ms cubic-bezier(.22, 1, .36, 1); }
.admin-panel-overlay.fade-enter-from, .admin-panel-overlay.fade-leave-to { opacity: 0; transform: none; }
.admin-panel-overlay.fade-enter-from > .admin-panel-modal,
.admin-panel-overlay.fade-leave-to > .admin-panel-modal { transform: translateY(100%); }
@media (max-width: 767px) {
  .admin-audit-drawer, .admin-add-modal, .admin-history-panel,
  .admin-user-detail-drawer, .admin-profile-drawer { width: 100%; }
  .admin-panel-overlay { align-items: flex-end; }
  .admin-panel-overlay > .admin-panel-modal {
    position: relative;
    min-height: 0;
    height: calc(100dvh - max(24px, env(safe-area-inset-top)));
    max-height: calc(100dvh - max(24px, env(safe-area-inset-top)));
    padding-top: 20px;
    border-radius: 24px 24px 0 0;
  }
  .admin-panel-modal::before { content: ''; position: absolute; top: 8px; left: calc(50% - 22px); width: 44px; height: 5px; background: #94a3b8; border-radius: 999px; }
  .admin-panel-modal .admin-one-workspace { height: 100%; min-height: 0; padding-bottom: env(safe-area-inset-bottom); }
  .admin-panel-modal .admin-one-sidebar { height: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .admin-panel-overlay.fade-enter-active, .admin-panel-overlay.fade-leave-active,
  .admin-panel-overlay.fade-enter-active > .admin-panel-modal,
  .admin-panel-overlay.fade-leave-active > .admin-panel-modal { transition: none; }
}
/* Keep filter padding inside its width; categories may scroll, the toolbar may not. */
.admin-one-workspace .admin-filter-bar,
.admin-one-workspace .admin-filter-bar > * {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
}
@media (max-width: 767px) {
  .admin-one-workspace .admin-filter-bar { flex-wrap: wrap; }
  .admin-one-workspace .admin-list-toolbar-actions { flex-wrap: wrap; min-width: 0; max-width: 100%; }
  .admin-one-workspace .admin-post-categories { width: 100%; margin-inline: 0; }
}
.playlist-viewer-overlay { position: fixed; z-index: 2800; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0,0,0,0.5); display: flex; justify-content: center; align-items: flex-end; }
.playlist-viewer-content { backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); background-color: rgba(255,255,255,0.9); width: 100%; max-width: 600px; height: 70vh; border-top-left-radius: 12px; border-top-right-radius: 12px; display: flex; flex-direction: column; box-shadow: 0 -5px 20px rgba(0,0,0,0.1); }
.playlist-header { display: flex; justify-content: space-between; align-items: center; padding: 15px; border-bottom: 1px solid #f1f1f1; flex-shrink: 0; }
.playlist-header h3 { margin: 0; font-size: 18px; }
.playlist-source-tabs { display: flex; gap: 5px; margin-top: 7px; }
.playlist-source-tabs button { padding: 4px 8px; color: #94a3b8; font-size: 11px; background: transparent; border: 0; border-radius: 7px; cursor: pointer; }
.playlist-source-tabs button.active { color: #047857; font-weight: 800; background: #ecfdf5; }
.playlist-header .close-btn-text { font-size: 14px; color: #666; cursor: pointer; padding: 4px 12px; border-radius: 14px; background-color: #f0f0f0; transition: background-color 0.2s; }
.playlist-header .close-btn-text:hover { background-color: #e5e5e5; }
.playlist-list { list-style: none; padding: 0; margin: 0; overflow-y: auto; flex-grow: 1; scroll-behavior: smooth;}
.playlist-list li { display: flex; justify-content: space-between; align-items: center; padding: 12px 15px; cursor: pointer; border-bottom: 1px solid #f9f9f9; }
.playlist-list li:hover { background-color: #f0f0f0; }
.playlist-list li .track-info { display: flex; flex-direction: column; overflow: hidden; }
.playlist-list li .track-title { font-size: 15px; color: #333; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.playlist-list li .track-artist { font-size: 13px; color: #888; }
.playlist-list li.active .track-title, .playlist-list li.active .track-artist { color: var(--theme-color); font-weight: 500; }
.playlist-list li .playing-indicator svg { width: 20px; height: 20px; color: var(--theme-color); }
.playlist-empty { display: flex; min-height: 180px; flex: 1; align-items: center; justify-content: center; color: #94a3b8; font-size: 13px; }
.playlist-footer { padding: 10px 15px; border-top: 1px solid #f1f1f1; display: flex; justify-content: center; align-items: center; gap: 20px; flex-shrink: 0; }
.playlist-footer button { background: #f0f0f0; border: none; border-radius: 4px; padding: 8px 16px; font-size: 14px; cursor: pointer; }
.playlist-footer button:disabled { opacity: 0.5; cursor: not-allowed; }
.playlist-footer .page-indicator { font-size: 14px; color: #666; }
.music-subtype-chooser { display: flex; gap: 10px; margin-bottom: 15px; }
.music-subtype-chooser .filter-btn { flex: 1; }
.form-group input[type="file"] { padding: 4px; }
.pinned-tag { display: inline-block; margin-left: 8px; padding: 2px 6px; font-size: 10px; font-weight: bold; color: #e6a23c; background-color: #fdf6ec; border: 1px solid #f5dab1; border-radius: 4px; vertical-align: middle; }
.movie-card-vertical .pinned-tag { color: #FFEB3B; background-color: rgba(255, 255, 255, 0.2); border-color: rgba(255, 255, 255, 0.4); margin-left: 0; flex-shrink: 0; }
/* 进度条轨道样式 */
.scroll-indicator-track {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 40px;  /* 【关键】给轨道一个固定的、较短的宽度 */
  height: 4px; /* 轨道高度 */
  background-color: #f0f0f0; /* 轨道的背景色，浅灰色 */
  border-radius: 2px; /* 圆角，使其成为胶囊形 */
  z-index: 1; 
}
/* 【新增】: 进度条滑块样式 */
.scroll-indicator-thumb {
  position: absolute;
  top: 0;
  height: 100%; /* 高度撑满轨道 */
  
  background-color: var(--color-brand-500);
  
  border-radius: 2px; /* 同样设置圆角 */
  
  z-index: 2;
}
/* 通知图标的容器 */
.notification-icon-wrapper {
  position: relative;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
/* 未读消息红点 */
.notification-badge {
  position: absolute;
  top: -5px;
  right: -8px;
  background-color: var(--color-danger);
  color: white;
  border-radius: 50%;
  font-size: 10px;
  font-weight: bold;
  line-height: 1.2;
  min-width: 16px;
  text-align: center;
  border: 2px solid white;
}
.notification-bar-container {
  display: flex;
  justify-content: center; /* 水平居中 */
  padding: 0 15px; /* 两边留出一些间距，防止贴边 */
  margin-bottom: -18px; /* 和下面的动态列表之间留出一些间距 */
}
/* 【新增】整体容器样式 */
.empty-search-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 60px 20px; /* 增加上下内边距，让它在屏幕中间 */
  text-align: center;
  height: calc(100% - 100px); /* 占据大部分可用空间 */
  box-sizing: border-box;
}
/* 【新增】提示盒子样式 */
.empty-search-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px; /* 元素之间的间距 */
}
/* 【新增】“求片”提示的样式 */
.request-prompt {
  margin-top: 10px; /* 与上方内容留出一些间距 */
  font-size: 14px;
  color: #606266;
}
/* 【新增】“点我求片”按钮的样式 */
.request-btn {
  background-color: #f0f2f5;
  border: 1px solid #dcdfe6;
  color: #303133;
  font-weight: 500;
  cursor: pointer;
  padding: 8px 16px;
  border-radius: 20px; /* 圆角按钮 */
  margin-left: 8px;
  transition: all 0.2s ease;
  font-size: 14px;
}
.request-btn:hover {
  background-color: #e4e7ed;
  border-color: #c8c9cc;
  color: var(--theme-color); /* 鼠标悬浮时变为主题色 */
}
.request-btn:active {
  transform: scale(0.98); /* 点击时有轻微缩小效果 */
}
/* 新的过渡动画：从顶部滑入 */
.toast-enter-active,
.toast-leave-active {
  transition: transform 0.4s ease;
}
.toast-enter-from,
.toast-leave-to {
  transform: translateY(-100px);
}
/* 【新增】通知条的顶层包裹容器 */
.notification-bar-wrapper {
  position: fixed; /* 固定定位，脱离文档流 */
  top: 60px; /* 距离顶部 60px (假设您的 top-bar 高度是 50px，留出10px间距) */
  left: 0;
  right: 0;
  display: flex;
  justify-content: center; /* 水平居中 */
  z-index: 2000; /* 一个较高的层级，低于模态框(3000)，但高于页面内容 */
  pointer-events: none; /* 【关键】让包裹容器不拦截鼠标事件 */
}
/* 确保 NotificationBar 本身可以被点击 */
.notification-bar-wrapper > * {
  pointer-events: auto; /* 恢复子元素的鼠标事件 */
}
/* 【新增】: 定义新 class 下的样式 */
.moments-container.has-unread-notifications .cover-photo {
  opacity: 0.1; /* 将透明度降低到 0.1 */
}
.page-indicator {
  position: fixed; 
  bottom: 80px; 
  left: 50%; /* 1. 将元素的左边缘移动到父容器的中心线 */
  transform: translateX(-50%); /* 2. 将元素向左平移自身宽度的一半 */
  background-color: rgba(0, 0, 0, 0.6); /* 半透明黑色背景 */
  color: white;
  padding: 6px 12px;
  border-radius: 20px; /* 胶囊形状 */
  font-size: 12px;
  font-weight: bold;
  
  /* 层级和交互 */
  z-index: 1000;
  pointer-events: none; /* 让它不拦截鼠标事件 */
  
  /* 动画效果 */
  transition: opacity 0.3s ease;
}
@font-face {
  font-family: "FZ YuanTi Pro";
  src: url("/assets/fz-yuanti-pro-regular-CkwbeXbi.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
/* Includes teleported dialogs and compatibility UI with their own font stacks. */
html,
body,
body * {
  font-family: var(--font-sans) !important;
}
body :is(code, pre, kbd, samp),
body :is(code, pre) * {
  font-family: var(--font-mono) !important;
}
.library-viewer-overlay {
  position: fixed;
  inset: 0;
  z-index: 3600;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding-top: 52px;
  box-sizing: border-box;
  background: rgba(15, 23, 42, 0.38);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.library-viewer {
  display: flex;
  width: min(100%, 600px);
  max-height: min(82vh, 760px);
  flex-direction: column;
  overflow: hidden;
  color: #1e293b;
  background: rgba(248, 250, 252, 0.98);
  border: 1px solid rgba(255, 255, 255, 0.8);
  border-radius: 24px 24px 0 0;
  box-shadow: 0 -20px 55px rgba(15, 23, 42, 0.16);
}
.library-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 20px 14px;
}
.library-header h2 { margin: 2px 0 0; font-size: 21px; }
.library-eyebrow { color: #10b981; font-size: 9px; font-weight: 900; letter-spacing: 0.14em; }
.library-close { width: 36px; height: 36px; padding: 0; color: #64748b; font-size: 25px; background: #fff; border: 1px solid #e2e8f0; border-radius: 50%; cursor: pointer; }
.library-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; margin: 0 20px 12px; padding: 4px; background: #e9eef4; border-radius: 13px; }
.library-tabs button { padding: 9px; color: #64748b; font-weight: 800; background: transparent; border: 0; border-radius: 10px; cursor: pointer; }
.library-tabs button.active { color: #0f172a; background: #fff; box-shadow: 0 3px 10px rgba(15, 23, 42, 0.07); }
.library-tabs button span { margin-left: 4px; color: #10b981; font-size: 11px; }
.library-body { min-height: 220px; padding: 0 14px 18px; overflow-y: auto; }
.library-list { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.library-item { display: flex; align-items: center; gap: 8px; padding: 8px; background: #fff; border: 1px solid #e8edf3; border-radius: 15px; }
.library-item-main { display: flex; min-width: 0; flex: 1; align-items: center; gap: 11px; padding: 0; text-align: left; background: transparent; border: 0; cursor: pointer; }
.library-item-main img { width: 52px; height: 52px; flex: 0 0 52px; object-fit: cover; background: #e2e8f0; border-radius: 11px; }
.library-item-copy { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.library-item-copy strong { overflow: hidden; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.library-item-copy small { color: #94a3b8; }
.library-item-kicker { color: #10b981; font-size: 9px; font-weight: 900; letter-spacing: 0.08em; }
.library-remove { flex: 0 0 auto; padding: 7px 9px; color: #c2410c; font-size: 11px; background: #fff7ed; border: 1px solid #fed7aa; border-radius: 9px; cursor: pointer; }
.library-empty { display: flex; min-height: 220px; align-items: center; justify-content: center; flex-direction: column; gap: 8px; padding: 20px; color: #94a3b8; text-align: center; }
.library-empty strong { color: #475569; }
.library-list-tools { display: flex; align-items: center; justify-content: space-between; padding: 4px 4px 10px; color: #94a3b8; font-size: 11px; }
.library-list-tools button { padding: 5px 8px; color: #64748b; background: #fff; border: 1px solid #e2e8f0; border-radius: 8px; cursor: pointer; }
body.site-dark-mode .library-viewer { color: #e5e7eb; background: rgba(24, 24, 27, 0.98); border-color: rgba(255, 255, 255, 0.08); }
body.site-dark-mode .library-close,
body.site-dark-mode .library-item,
body.site-dark-mode .library-list-tools button { color: #d4d4d8; background: #27272a; border-color: rgba(255, 255, 255, 0.08); }
body.site-dark-mode .library-tabs { background: #27272a; }
body.site-dark-mode .library-tabs button.active { color: #f4f4f5; background: #3f3f46; }
body.site-dark-mode .library-empty strong { color: #d4d4d8; }
@media (min-width: 700px) {
  .library-viewer-overlay { align-items: center; padding: 24px; }
  .library-viewer { border-radius: 24px; }
}
/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-border-style: solid;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial,
    sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
    --color-orange-50: oklch(98% .016 73.684);
    --color-orange-100: oklch(95.4% .038 75.164);
    --color-orange-200: oklch(90.1% .076 70.697);
    --color-orange-500: oklch(70.5% .213 47.604);
    --color-orange-600: oklch(64.6% .222 41.116);
    --color-amber-400: oklch(82.8% .189 84.429);
    --color-amber-500: oklch(76.9% .188 70.08);
    --color-emerald-50: oklch(97.9% .021 166.113);
    --color-emerald-100: oklch(95% .052 163.051);
    --color-emerald-400: oklch(76.5% .177 163.223);
    --color-emerald-500: oklch(69.6% .17 162.48);
    --color-emerald-600: oklch(59.6% .145 163.225);
    --color-blue-50: oklch(97% .014 254.604);
    --color-blue-500: oklch(62.3% .214 259.815);
    --color-blue-600: oklch(54.6% .245 262.881);
    --color-indigo-50: oklch(96.2% .018 272.314);
    --color-indigo-600: oklch(51.1% .262 276.966);
    --color-rose-50: oklch(96.9% .015 12.422);
    --color-rose-100: oklch(94.1% .03 12.58);
    --color-rose-500: oklch(64.5% .246 16.439);
    --color-rose-600: oklch(58.6% .253 17.585);
    --color-slate-50: oklch(98.4% .003 247.858);
    --color-slate-100: oklch(96.8% .007 247.896);
    --color-slate-200: oklch(92.9% .013 255.508);
    --color-slate-300: oklch(86.9% .022 252.894);
    --color-slate-400: oklch(70.4% .04 256.788);
    --color-slate-500: oklch(55.4% .046 257.417);
    --color-slate-600: oklch(44.6% .043 257.281);
    --color-slate-700: oklch(37.2% .044 257.287);
    --color-slate-800: oklch(27.9% .041 260.031);
    --color-slate-900: oklch(20.8% .042 265.755);
    --color-white: #fff;
    --spacing: .25rem;
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25 / .875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --tracking-tight: -.025em;
    --tracking-wide: .025em;
    --tracking-wider: .05em;
    --leading-tight: 1.25;
    --radius-md: .375rem;
    --radius-lg: .5rem;
    --radius-xl: .75rem;
    --radius-2xl: 1rem;
    --ease-out: cubic-bezier(0, 0, .2, 1);
    --ease-in-out: cubic-bezier(.4, 0, .2, 1);
    --animate-spin: spin 1s linear infinite;
    --blur-sm: 8px;
    --blur-xl: 24px;
    --blur-2xl: 40px;
    --blur-3xl: 64px;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  }
}

@layer utilities {
  .pointer-events-none {
    pointer-events: none;
  }

  .collapse {
    visibility: collapse;
  }

  .visible {
    visibility: visible;
  }

  .sr-only {
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }

  .absolute {
    position: absolute;
  }

  .fixed {
    position: fixed;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .sticky {
    position: sticky;
  }

  .inset-0 {
    inset: 0;
  }

  .inset-y-0 {
    inset-block: 0;
  }

  .-top-4 {
    top: calc(var(--spacing) * -4);
  }

  .-top-6 {
    top: calc(var(--spacing) * -6);
  }

  .-top-8 {
    top: calc(var(--spacing) * -8);
  }

  .top-0 {
    top: 0;
  }

  .top-5 {
    top: calc(var(--spacing) * 5);
  }

  .-right-1 {
    right: calc(var(--spacing) * -1);
  }

  .-right-4 {
    right: calc(var(--spacing) * -4);
  }

  .-right-6 {
    right: calc(var(--spacing) * -6);
  }

  .-right-8 {
    right: calc(var(--spacing) * -8);
  }

  .right-5 {
    right: calc(var(--spacing) * 5);
  }

  .-bottom-1 {
    bottom: calc(var(--spacing) * -1);
  }

  .left-0 {
    left: 0;
  }

  .z-10 {
    z-index: 10;
  }

  .z-30 {
    z-index: 30;
  }

  .z-40 {
    z-index: 40;
  }

  .z-50 {
    z-index: 50;
  }

  .container {
    width: 100%;
  }

  @media (min-width: 40rem) {
    .container {
      max-width: 40rem;
    }
  }

  @media (min-width: 48rem) {
    .container {
      max-width: 48rem;
    }
  }

  @media (min-width: 64rem) {
    .container {
      max-width: 64rem;
    }
  }

  @media (min-width: 80rem) {
    .container {
      max-width: 80rem;
    }
  }

  @media (min-width: 96rem) {
    .container {
      max-width: 96rem;
    }
  }

  .mx-1\.5 {
    margin-inline: calc(var(--spacing) * 1.5);
  }

  .mt-0\.5 {
    margin-top: calc(var(--spacing) * .5);
  }

  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }

  .mt-5 {
    margin-top: calc(var(--spacing) * 5);
  }

  .mt-auto {
    margin-top: auto;
  }

  .mb-1 {
    margin-bottom: var(--spacing);
  }

  .mb-1\.5 {
    margin-bottom: calc(var(--spacing) * 1.5);
  }

  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }

  .mb-2\.5 {
    margin-bottom: calc(var(--spacing) * 2.5);
  }

  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }

  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }

  .mb-5 {
    margin-bottom: calc(var(--spacing) * 5);
  }

  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }

  .-ml-2 {
    margin-left: calc(var(--spacing) * -2);
  }

  .ml-1 {
    margin-left: var(--spacing);
  }

  .scrollbar-hide {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }

  .scrollbar-hide::-webkit-scrollbar {
    display: none;
  }

  .line-clamp-1 {
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
  }

  .block {
    display: block;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

  .table {
    display: table;
  }

  .h-1\.5 {
    height: calc(var(--spacing) * 1.5);
  }

  .h-4 {
    height: calc(var(--spacing) * 4);
  }

  .h-5 {
    height: calc(var(--spacing) * 5);
  }

  .h-6 {
    height: calc(var(--spacing) * 6);
  }

  .h-9 {
    height: calc(var(--spacing) * 9);
  }

  .h-10 {
    height: calc(var(--spacing) * 10);
  }

  .h-20 {
    height: calc(var(--spacing) * 20);
  }

  .h-32 {
    height: calc(var(--spacing) * 32);
  }

  .h-40 {
    height: calc(var(--spacing) * 40);
  }

  .h-\[52px\] {
    height: 52px;
  }

  .h-full {
    height: 100%;
  }

  .w-1\.5 {
    width: calc(var(--spacing) * 1.5);
  }

  .w-4 {
    width: calc(var(--spacing) * 4);
  }

  .w-9 {
    width: calc(var(--spacing) * 9);
  }

  .w-10 {
    width: calc(var(--spacing) * 10);
  }

  .w-11\/12 {
    width: 91.6667%;
  }

  .w-20 {
    width: calc(var(--spacing) * 20);
  }

  .w-32 {
    width: calc(var(--spacing) * 32);
  }

  .w-40 {
    width: calc(var(--spacing) * 40);
  }

  .w-64 {
    width: calc(var(--spacing) * 64);
  }

  .w-\[52px\] {
    width: 52px;
  }

  .w-\[260px\] {
    width: 260px;
  }

  .w-full {
    width: 100%;
  }

  .w-px {
    width: 1px;
  }

  .max-w-\[120px\] {
    max-width: 120px;
  }

  .min-w-0 {
    min-width: 0;
  }

  .flex-1 {
    flex: 1;
  }

  .flex-shrink {
    flex-shrink: 1;
  }

  .shrink-0 {
    flex-shrink: 0;
  }

  .flex-grow {
    flex-grow: 1;
  }

  .-translate-x-full {
    --tw-translate-x: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-0 {
    --tw-translate-x: 0px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .transform {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

  .animate-spin {
    animation: var(--animate-spin);
  }

  .cursor-default {
    cursor: default;
  }

  .cursor-pointer {
    cursor: pointer;
  }

  .resize {
    resize: both;
  }

  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .flex-col {
    flex-direction: column;
  }

  .flex-wrap {
    flex-wrap: wrap;
  }

  .items-center {
    align-items: center;
  }

  .items-start {
    align-items: flex-start;
  }

  .justify-between {
    justify-content: space-between;
  }

  .justify-center {
    justify-content: center;
  }

  .gap-1 {
    gap: var(--spacing);
  }

  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }

  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }

  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }

  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }

  .gap-3\.5 {
    gap: calc(var(--spacing) * 3.5);
  }

  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }

  .gap-5 {
    gap: calc(var(--spacing) * 5);
  }

  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }

  :where(.space-y-1 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(var(--spacing) * var(--tw-space-y-reverse));
    margin-block-end: calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-1\.5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-2 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-4 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-6 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
  }

  .truncate {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }

  .overflow-hidden {
    overflow: hidden;
  }

  .overflow-x-auto {
    overflow-x: auto;
  }

  .overflow-y-auto {
    overflow-y: auto;
  }

  .rounded {
    border-radius: .25rem;
  }

  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }

  .rounded-\[6px\] {
    border-radius: 6px;
  }

  .rounded-\[12px\] {
    border-radius: 12px;
  }

  .rounded-\[14px\] {
    border-radius: 14px;
  }

  .rounded-\[16px\] {
    border-radius: 16px;
  }

  .rounded-\[20px\] {
    border-radius: 20px;
  }

  .rounded-\[24px\] {
    border-radius: 24px;
  }

  .rounded-full {
    border-radius: 3.40282e38px;
  }

  .rounded-lg {
    border-radius: var(--radius-lg);
  }

  .rounded-md {
    border-radius: var(--radius-md);
  }

  .rounded-xl {
    border-radius: var(--radius-xl);
  }

  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }

  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }

  .border-r {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }

  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }

  .border-emerald-100\/50 {
    border-color: #d0fae580;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-emerald-100\/50 {
      border-color: color-mix(in oklab, var(--color-emerald-100) 50%, transparent);
    }
  }

  .border-emerald-400 {
    border-color: var(--color-emerald-400);
  }

  .border-orange-100\/50 {
    border-color: #ffedd580;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-orange-100\/50 {
      border-color: color-mix(in oklab, var(--color-orange-100) 50%, transparent);
    }
  }

  .border-orange-200 {
    border-color: var(--color-orange-200);
  }

  .border-rose-100 {
    border-color: var(--color-rose-100);
  }

  .border-rose-100\/50 {
    border-color: #ffe4e680;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-rose-100\/50 {
      border-color: color-mix(in oklab, var(--color-rose-100) 50%, transparent);
    }
  }

  .border-slate-100 {
    border-color: var(--color-slate-100);
  }

  .border-slate-100\/60 {
    border-color: #f1f5f999;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-100\/60 {
      border-color: color-mix(in oklab, var(--color-slate-100) 60%, transparent);
    }
  }

  .border-slate-200 {
    border-color: var(--color-slate-200);
  }

  .border-slate-200\/60 {
    border-color: #e2e8f099;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-200\/60 {
      border-color: color-mix(in oklab, var(--color-slate-200) 60%, transparent);
    }
  }

  .border-slate-300 {
    border-color: var(--color-slate-300);
  }

  .border-transparent {
    border-color: #0000;
  }

  .border-white {
    border-color: var(--color-white);
  }

  .border-white\/5 {
    border-color: #ffffff0d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/5 {
      border-color: color-mix(in oklab, var(--color-white) 5%, transparent);
    }
  }

  .border-white\/50 {
    border-color: #ffffff80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/50 {
      border-color: color-mix(in oklab, var(--color-white) 50%, transparent);
    }
  }

  .bg-amber-500 {
    background-color: var(--color-amber-500);
  }

  .bg-amber-500\/20 {
    background-color: #f99c0033;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-amber-500\/20 {
      background-color: color-mix(in oklab, var(--color-amber-500) 20%, transparent);
    }
  }

  .bg-blue-50 {
    background-color: var(--color-blue-50);
  }

  .bg-blue-500 {
    background-color: var(--color-blue-500);
  }

  .bg-emerald-50 {
    background-color: var(--color-emerald-50);
  }

  .bg-emerald-50\/50 {
    background-color: #ecfdf580;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-50\/50 {
      background-color: color-mix(in oklab, var(--color-emerald-50) 50%, transparent);
    }
  }

  .bg-emerald-500 {
    background-color: var(--color-emerald-500);
  }

  .bg-emerald-500\/10 {
    background-color: #00bb7f1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-500\/10 {
      background-color: color-mix(in oklab, var(--color-emerald-500) 10%, transparent);
    }
  }

  .bg-emerald-500\/20 {
    background-color: #00bb7f33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-500\/20 {
      background-color: color-mix(in oklab, var(--color-emerald-500) 20%, transparent);
    }
  }

  .bg-indigo-50 {
    background-color: var(--color-indigo-50);
  }

  .bg-orange-50 {
    background-color: var(--color-orange-50);
  }

  .bg-rose-50 {
    background-color: var(--color-rose-50);
  }

  .bg-rose-500 {
    background-color: var(--color-rose-500);
  }

  .bg-slate-50 {
    background-color: var(--color-slate-50);
  }

  .bg-slate-50\/80 {
    background-color: #f8fafccc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-50\/80 {
      background-color: color-mix(in oklab, var(--color-slate-50) 80%, transparent);
    }
  }

  .bg-slate-100 {
    background-color: var(--color-slate-100);
  }

  .bg-slate-100\/50 {
    background-color: #f1f5f980;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-100\/50 {
      background-color: color-mix(in oklab, var(--color-slate-100) 50%, transparent);
    }
  }

  .bg-slate-200 {
    background-color: var(--color-slate-200);
  }

  .bg-slate-900\/40 {
    background-color: #0f172b66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/40 {
      background-color: color-mix(in oklab, var(--color-slate-900) 40%, transparent);
    }
  }

  .bg-white {
    background-color: var(--color-white);
  }

  .bg-white\/5 {
    background-color: #ffffff0d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/5 {
      background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
    }
  }

  .bg-white\/70 {
    background-color: #ffffffb3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/70 {
      background-color: color-mix(in oklab, var(--color-white) 70%, transparent);
    }
  }

  .bg-gradient-to-b {
    --tw-gradient-position: to bottom in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }

  .bg-gradient-to-br {
    --tw-gradient-position: to bottom right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }

  .from-emerald-400 {
    --tw-gradient-from: var(--color-emerald-400);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .from-slate-800 {
    --tw-gradient-from: var(--color-slate-800);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .to-emerald-600 {
    --tw-gradient-to: var(--color-emerald-600);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .to-slate-900 {
    --tw-gradient-to: var(--color-slate-900);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .fill-orange-500 {
    fill: var(--color-orange-500);
  }

  .fill-white {
    fill: var(--color-white);
  }

  .object-cover {
    object-fit: cover;
  }

  .p-0\.5 {
    padding: calc(var(--spacing) * .5);
  }

  .p-1 {
    padding: var(--spacing);
  }

  .p-2\.5 {
    padding: calc(var(--spacing) * 2.5);
  }

  .p-3 {
    padding: calc(var(--spacing) * 3);
  }

  .p-3\.5 {
    padding: calc(var(--spacing) * 3.5);
  }

  .p-4 {
    padding: calc(var(--spacing) * 4);
  }

  .p-5 {
    padding: calc(var(--spacing) * 5);
  }

  .p-6 {
    padding: calc(var(--spacing) * 6);
  }

  .p-7 {
    padding: calc(var(--spacing) * 7);
  }

  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }

  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }

  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }

  .px-3\.5 {
    padding-inline: calc(var(--spacing) * 3.5);
  }

  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }

  .px-7 {
    padding-inline: calc(var(--spacing) * 7);
  }

  .py-0\.5 {
    padding-block: calc(var(--spacing) * .5);
  }

  .py-1 {
    padding-block: var(--spacing);
  }

  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }

  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }

  .py-2\.5 {
    padding-block: calc(var(--spacing) * 2.5);
  }

  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }

  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }

  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }

  .pt-0\.5 {
    padding-top: calc(var(--spacing) * .5);
  }

  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }

  .pr-3 {
    padding-right: calc(var(--spacing) * 3);
  }

  .pr-4 {
    padding-right: calc(var(--spacing) * 4);
  }

  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }

  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }

  .pl-10 {
    padding-left: calc(var(--spacing) * 10);
  }

  .text-left {
    text-align: left;
  }

  .font-mono {
    font-family: var(--font-mono);
  }

  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }

  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }

  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .text-\[9px\] {
    font-size: 9px;
  }

  .text-\[10px\] {
    font-size: 10px;
  }

  .text-\[11px\] {
    font-size: 11px;
  }

  .text-\[12px\] {
    font-size: 12px;
  }

  .text-\[13px\] {
    font-size: 13px;
  }

  .text-\[14px\] {
    font-size: 14px;
  }

  .text-\[15px\] {
    font-size: 15px;
  }

  .text-\[20px\] {
    font-size: 20px;
  }

  .text-\[22px\] {
    font-size: 22px;
  }

  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }

  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }

  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }

  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }

  .tracking-wider {
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
  }

  .text-amber-400 {
    color: var(--color-amber-400);
  }

  .text-blue-600 {
    color: var(--color-blue-600);
  }

  .text-emerald-400 {
    color: var(--color-emerald-400);
  }

  .text-emerald-500 {
    color: var(--color-emerald-500);
  }

  .text-emerald-600 {
    color: var(--color-emerald-600);
  }

  .text-indigo-600 {
    color: var(--color-indigo-600);
  }

  .text-orange-600 {
    color: var(--color-orange-600);
  }

  .text-rose-500 {
    color: var(--color-rose-500);
  }

  .text-rose-600 {
    color: var(--color-rose-600);
  }

  .text-slate-200 {
    color: var(--color-slate-200);
  }

  .text-slate-300 {
    color: var(--color-slate-300);
  }

  .text-slate-400 {
    color: var(--color-slate-400);
  }

  .text-slate-500 {
    color: var(--color-slate-500);
  }

  .text-slate-600 {
    color: var(--color-slate-600);
  }

  .text-slate-700 {
    color: var(--color-slate-700);
  }

  .text-slate-800 {
    color: var(--color-slate-800);
  }

  .text-slate-900 {
    color: var(--color-slate-900);
  }

  .text-white {
    color: var(--color-white);
  }

  .capitalize {
    text-transform: capitalize;
  }

  .uppercase {
    text-transform: uppercase;
  }

  .opacity-\[0\.08\] {
    opacity: .08;
  }

  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-2xl {
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, #00000040);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_2px_12px_rgb\(0\,0\,0\,0\.03\)\] {
    --tw-shadow: 0 2px 12px var(--tw-shadow-color, #00000008);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-sm {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring-1 {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring-4 {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-emerald-500\/20 {
    --tw-shadow-color: #00bb7f33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .shadow-emerald-500\/20 {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-emerald-500) 20%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }

  .ring-emerald-50\/50 {
    --tw-ring-color: #ecfdf580;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .ring-emerald-50\/50 {
      --tw-ring-color: color-mix(in oklab, var(--color-emerald-50) 50%, transparent);
    }
  }

  .ring-orange-50 {
    --tw-ring-color: var(--color-orange-50);
  }

  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }

  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .blur-2xl {
    --tw-blur: blur(var(--blur-2xl));
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .blur-3xl {
    --tw-blur: blur(var(--blur-3xl));
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .grayscale {
    --tw-grayscale: grayscale(100%);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .filter {
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .backdrop-blur-sm {
    --tw-backdrop-blur: blur(var(--blur-sm));
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .backdrop-blur-xl {
    --tw-backdrop-blur: blur(var(--blur-xl));
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .backdrop-filter {
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .duration-200 {
    --tw-duration: .2s;
    transition-duration: .2s;
  }

  .duration-300 {
    --tw-duration: .3s;
    transition-duration: .3s;
  }

  .duration-500 {
    --tw-duration: .5s;
    transition-duration: .5s;
  }

  .ease-in-out {
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }

  .ease-out {
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
  }

  @media (hover: hover) {
    .group-hover\:scale-110:is(:where(.group):hover *) {
      --tw-scale-x: 110%;
      --tw-scale-y: 110%;
      --tw-scale-z: 110%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }

    .group-hover\:scale-150:is(:where(.group):hover *) {
      --tw-scale-x: 150%;
      --tw-scale-y: 150%;
      --tw-scale-z: 150%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }

    .group-hover\:bg-emerald-500\/20:is(:where(.group):hover *) {
      background-color: #00bb7f33;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .group-hover\:bg-emerald-500\/20:is(:where(.group):hover *) {
        background-color: color-mix(in oklab, var(--color-emerald-500) 20%, transparent);
      }
    }

    .group-hover\:text-emerald-600:is(:where(.group):hover *) {
      color: var(--color-emerald-600);
    }

    .group-hover\:text-slate-600:is(:where(.group):hover *) {
      color: var(--color-slate-600);
    }
  }

  .placeholder\:text-slate-400::placeholder {
    color: var(--color-slate-400);
  }

  .last\:border-0:last-child {
    border-style: var(--tw-border-style);
    border-width: 0;
  }

  .last\:pb-0:last-child {
    padding-bottom: 0;
  }

  @media (hover: hover) {
    .hover\:-translate-y-0\.5:hover {
      --tw-translate-y: calc(var(--spacing) * -.5);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }

    .hover\:-translate-y-1:hover {
      --tw-translate-y: calc(var(--spacing) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }

    .hover\:border-slate-200\/60:hover {
      border-color: #e2e8f099;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-slate-200\/60:hover {
        border-color: color-mix(in oklab, var(--color-slate-200) 60%, transparent);
      }
    }

    .hover\:border-slate-300:hover {
      border-color: var(--color-slate-300);
    }

    .hover\:bg-emerald-50:hover {
      background-color: var(--color-emerald-50);
    }

    .hover\:bg-emerald-100:hover {
      background-color: var(--color-emerald-100);
    }

    .hover\:bg-rose-50:hover {
      background-color: var(--color-rose-50);
    }

    .hover\:bg-slate-50:hover {
      background-color: var(--color-slate-50);
    }

    .hover\:bg-slate-100:hover {
      background-color: var(--color-slate-100);
    }

    .hover\:bg-white\/10:hover {
      background-color: #ffffff1a;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-white\/10:hover {
        background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
      }
    }

    .hover\:text-emerald-600:hover {
      color: var(--color-emerald-600);
    }

    .hover\:text-rose-500:hover {
      color: var(--color-rose-500);
    }

    .hover\:text-slate-700:hover {
      color: var(--color-slate-700);
    }

    .hover\:text-slate-800:hover {
      color: var(--color-slate-800);
    }

    .hover\:text-slate-900:hover {
      color: var(--color-slate-900);
    }

    .hover\:opacity-80:hover {
      opacity: .8;
    }

    .hover\:shadow-\[0_8px_24px_rgb\(0\,0\,0\,0\.06\)\]:hover {
      --tw-shadow: 0 8px 24px var(--tw-shadow-color, #0000000f);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }

  .focus\:border-emerald-500\/30:focus {
    border-color: #00bb7f4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .focus\:border-emerald-500\/30:focus {
      border-color: color-mix(in oklab, var(--color-emerald-500) 30%, transparent);
    }
  }

  .focus\:bg-white:focus {
    background-color: var(--color-white);
  }

  .focus\:ring-4:focus {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .focus\:ring-emerald-500\/10:focus {
    --tw-ring-color: #00bb7f1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .focus\:ring-emerald-500\/10:focus {
      --tw-ring-color: color-mix(in oklab, var(--color-emerald-500) 10%, transparent);
    }
  }

  .focus\:ring-emerald-500\/30:focus {
    --tw-ring-color: #00bb7f4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .focus\:ring-emerald-500\/30:focus {
      --tw-ring-color: color-mix(in oklab, var(--color-emerald-500) 30%, transparent);
    }
  }

  .focus\:outline-none:focus {
    --tw-outline-style: none;
    outline-style: none;
  }

  .active\:scale-95:active {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  @media (min-width: 40rem) {
    .sm\:block {
      display: block;
    }

    .sm\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sm\:gap-6 {
      gap: calc(var(--spacing) * 6);
    }

    .sm\:p-5 {
      padding: calc(var(--spacing) * 5);
    }
  }

  @media (min-width: 48rem) {
    .md\:block {
      display: block;
    }

    .md\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .md\:p-7 {
      padding: calc(var(--spacing) * 7);
    }

    .md\:px-8 {
      padding-inline: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 64rem) {
    .lg\:static {
      position: static;
    }

    .lg\:col-span-2 {
      grid-column: span 2 / span 2;
    }

    .lg\:hidden {
      display: none;
    }

    .lg\:translate-x-0 {
      --tw-translate-x: 0px;
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }

    .lg\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .lg\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .lg\:shadow-none {
      --tw-shadow: 0 0 #0000;
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
}

@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false
}

@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-gradient-position {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-stops {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}

@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}

@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-leading {
  syntax: "*";
  inherits: false
}

@property --tw-font-weight {
  syntax: "*";
  inherits: false
}

@property --tw-tracking {
  syntax: "*";
  inherits: false
}

@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-ring-inset {
  syntax: "*";
  inherits: false
}

@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}

@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-blur {
  syntax: "*";
  inherits: false
}

@property --tw-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-invert {
  syntax: "*";
  inherits: false
}

@property --tw-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-duration {
  syntax: "*";
  inherits: false
}

@property --tw-ease {
  syntax: "*";
  inherits: false
}

@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.site-image-lightbox{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.92);touch-action:none;user-select:none}.site-image-lightbox.is-open{display:flex}.site-image-lightbox__image{max-width:92vw;max-height:86vh;object-fit:contain;transform:translate(0,0) scale(1);transform-origin:center center;transition:transform .18s ease;cursor:zoom-in;will-change:transform}.site-image-lightbox.is-zoomed .site-image-lightbox__image{cursor:grab}.site-image-lightbox.is-dragging .site-image-lightbox__image{cursor:grabbing;transition:none}.site-image-lightbox__close,.site-image-lightbox__nav,.site-image-lightbox__zoom{position:absolute;border:0;color:#fff;background:rgba(30,30,30,.65);cursor:pointer;-webkit-tap-highlight-color:transparent}.site-image-lightbox__close{top:max(16px,env(safe-area-inset-top));right:16px;width:42px;height:42px;border-radius:50%;font-size:28px;line-height:38px}.site-image-lightbox__nav{top:50%;width:44px;height:56px;margin-top:-28px;border-radius:8px;font-size:36px;line-height:48px}.site-image-lightbox__nav--prev{left:12px}.site-image-lightbox__nav--next{right:12px}.site-image-lightbox__toolbar{position:absolute;bottom:max(18px,env(safe-area-inset-bottom));left:50%;display:flex;gap:8px;align-items:center;transform:translateX(-50%)}.site-image-lightbox__zoom{position:static;width:40px;height:40px;border-radius:50%;font-size:22px}.site-image-lightbox__counter{min-width:54px;padding:7px 10px;color:#fff;font-size:14px;text-align:center;background:rgba(30,30,30,.65);border-radius:16px}@media (max-width:600px){.site-image-lightbox__image{max-width:96vw;max-height:82vh}.site-image-lightbox__nav{width:38px;height:48px;margin-top:-24px;font-size:30px}.site-image-lightbox__nav--prev{left:6px}.site-image-lightbox__nav--next{right:6px}}.site-player-overlay{position:fixed;inset:0;z-index:12000;display:flex;justify-content:center;background:#fff;transition:background .28s ease}.site-player-overlay.is-dark{background:#0f1115}.site-player-shell{width:100%;max-width:600px;height:100dvh;background:#f5f5f7;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;-webkit-overflow-scrolling:touch;scrollbar-width:none}.site-player-shell::-webkit-scrollbar{display:none}.site-player-header{z-index:5;display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 16px;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid #f0f0f2}.site-player-header button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:0;border-radius:50%;color:#000;background:0 0;cursor:pointer}.site-player-header button:hover{background:#f3f4f6}.site-player-header .site-player-theme-toggle{color:#4b5563;background:#f7f7f8;border:1px solid #ececf0;transition:background .2s ease,color .2s ease,transform .2s ease}.site-player-header .site-player-theme-toggle:hover{color:#111827;background:#ececf0;transform:rotate(-8deg)}.site-player-header .site-player-header-actions{display:inline-flex;align-items:center;gap:6px}.site-player-header svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.site-player-header .site-player-title{max-width:65%;overflow:hidden;color:#111827;font-size:16px;font-weight:700;letter-spacing:.3px;text-overflow:ellipsis;white-space:nowrap}.site-player-video{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#000}.site-player-video iframe,.site-player-video video{width:100%;height:100%;display:block;border:0;object-fit:cover;background:#000}.site-player-video-backdrop{position:absolute;inset:-24px;z-index:0;background-position:center;background-size:cover;filter:blur(4px);opacity:.62;transform:scale(1.06);transition:opacity .28s ease;pointer-events:none}.site-player-video-backdrop::after{position:absolute;inset:0;content:'';background:rgba(0,0,0,.16)}.site-player-video:not(.is-cover) .site-player-video-backdrop{opacity:0}.site-player-cover{position:relative;z-index:1;width:100%;height:100%;display:block;object-fit:contain;background:0 0}.site-player-video.is-cover::after{position:absolute;inset:0;content:'';background:linear-gradient(to top,rgba(0,0,0,.3),transparent 55%);pointer-events:none}.site-player-video video{cursor:pointer}.site-player-play-main{z-index:4;cursor:pointer}.site-player-play-main svg{fill:currentColor}.site-player-video.is-playing .site-player-play-main{opacity:0;pointer-events:none}.site-player-video-ui{position:absolute;right:0;bottom:0;left:0;display:flex;flex-direction:column;gap:10px;padding:48px 16px 12px;color:#fff;background:linear-gradient(to top,rgba(0,0,0,.9),rgba(0,0,0,.38),transparent)}.site-player-progress-row{display:flex;align-items:center;gap:10px}.site-player-progress-row span{min-width:34px;color:rgba(255,255,255,.88);font:11px/1 monospace}.site-player-progress-row span:last-child{color:rgba(255,255,255,.55);text-align:right}.site-player-progress{position:relative;flex:1;height:4px;overflow:hidden;background:rgba(255,255,255,.3);border-radius:4px;cursor:pointer}.site-player-progress input{position:absolute;inset:-8px 0;width:100%;height:20px;opacity:0;cursor:pointer}.site-player-progress-fill{width:0;height:100%;background:#ff4c79;border-radius:4px;box-shadow:0 0 8px rgba(255,76,121,.8);pointer-events:none}.site-player-controls{display:flex;align-items:center;justify-content:space-between}.site-player-controls-group{display:flex;align-items:center;gap:18px}.site-player-controls button{display:inline-flex;align-items:center;justify-content:center;padding:0;color:#fff;background:0 0;border:0;cursor:pointer}.site-player-controls svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.site-player-controls .site-player-fill-icon{fill:currentColor;stroke:none}.site-player-action-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border-bottom:1px solid #f0f0f2}.site-player-now-playing{display:flex;align-items:center;min-width:0;gap:8px;color:#1f2937;font-size:14px;font-weight:500}.site-player-now-playing>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-player-now-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 20px;color:#ff4c79;background:#f3f4f6;border-radius:5px}.site-player-now-icon svg{width:12px;height:12px;fill:currentColor}.site-player-episode-button{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;color:#4b5563;font-size:12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:999px;white-space:nowrap}.site-player-episode-button{cursor:pointer}.site-player-episode-button svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2}.site-player-divider{height:8px;background:#f5f5f7}.site-player-section{padding:20px 16px;background:#fff}.site-player-info{display:flex;gap:16px}.site-player-poster-wrap{position:relative;width:100px;flex:0 0 100px}.site-player-poster{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;background:#eee;border:1px solid #f3f4f6;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.12)}.site-player-rating{position:absolute;top:5px;right:5px;display:inline-flex;align-items:center;gap:4px;padding:3px 6px;color:#fff;font-size:10px;font-weight:600;background:rgba(0,0,0,.62);border-radius:5px;backdrop-filter:blur(8px)}.site-player-rating svg{width:10px;height:10px;fill:#fb923c;stroke:#fb923c}.site-player-info-main{display:flex;flex:1;flex-direction:column;justify-content:space-between;min-width:0;padding:2px 0}.site-player-info-main h2{margin:0 0 5px;color:#111827;font-size:21px;line-height:1.2}.site-player-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;color:#6b7280;font-size:11px}.site-player-tags span{padding:3px 6px;color:#4b5563;background:#f9fafb;border:1px solid #f3f4f6;border-radius:4px}.site-player-details{display:-webkit-box;overflow:hidden;color:#6b7280;font-size:12px;line-height:1.6;-webkit-box-orient:vertical;-webkit-line-clamp:3}.site-player-details strong{color:#111827;font-weight:600}.site-player-intro{display:inline-flex;align-items:center;align-self:flex-start;gap:2px;margin-top:4px;padding:0;color:#ff4c79;font-size:12px;font-weight:600;background:0 0;border:0}.site-player-intro svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;transform:rotate(-90deg)}.site-player-section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.site-player-section-title h3{margin:0;color:#111827;font-size:16px}.site-player-section-title span{color:#9ca3af;font-size:12px;font-weight:500}.site-player-episode-sort{display:inline-flex;align-items:center;gap:4px}.site-player-sort-button{padding:3px 7px;color:#6b7280;font-size:11px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer}.site-player-sort-button.active{color:#ff4c79;border-color:rgba(255,76,121,.35);background:#fff0f4}.site-player-episodes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0}.site-player-episodes button{position:relative;min-width:0;padding:13px 8px;color:#4b5563;font-size:14px;font-weight:500;background:#f9fafb;border:1px solid #f3f4f6;border-radius:12px;cursor:pointer}.site-player-episodes button.active{color:#ff4c79;font-weight:700;background:#fff0f4;border-color:rgba(255,76,121,.3);box-shadow:0 2px 6px rgba(255,76,121,.08)}.site-player-episodes button.active::after{position:absolute;top:0;right:0;width:0;height:0;content:'';border-top:16px solid #ff4c79;border-left:16px solid transparent}.site-player-episodes-empty{padding:10px 0;color:#9ca3af;font-size:12px}.site-player-episodes-empty.is-loading{display:flex;grid-column:1/-1;align-items:center;gap:10px;min-height:68px;padding:16px 2px;color:#64748b;font-size:15px;font-weight:600;letter-spacing:.2px;white-space:nowrap}.site-player-episodes-loader{display:inline-block;width:20px;height:20px;flex:0 0 20px;border:2px solid rgba(148,163,184,.25);border-top-color:#ff4c79;border-right-color:#fb7185;border-radius:50%;box-sizing:border-box;animation:site-player-episodes-spin .78s linear infinite;box-shadow:0 0 0 3px rgba(255,76,121,.06)}@keyframes site-player-episodes-spin{to{transform:rotate(360deg)}}.site-player-recommendations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-bottom:30px}.site-player-recommendation{min-width:0}.site-player-recommendation[data-recommendation-index],.site-player-recommendation[data-recommendation-remote-index]{cursor:pointer}.site-player-recommendation-cover{position:relative;overflow:hidden;aspect-ratio:2/3;background:#f3f4f6;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,.08)}.site-player-recommendation-cover img{display:block;width:100%;height:100%;object-fit:cover}.site-player-recommendation-cover::after{position:absolute;right:0;bottom:0;left:0;height:50%;content:'';background:linear-gradient(to top,rgba(0,0,0,.8),transparent)}.site-player-recommendation-rating{position:absolute;right:6px;bottom:6px;z-index:1;color:#fb923c;font-size:10px;font-weight:700}.site-player-recommendation-title{display:block;overflow:hidden;margin-top:6px;color:#1f2937;font-size:11px;font-weight:500;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.site-player-recommendations-empty{grid-column:1/-1;padding:18px 0 28px;color:#9ca3af;font-size:13px;text-align:center}.site-player-action-bar,.site-player-divider,.site-player-episode-button,.site-player-episodes button,.site-player-header,.site-player-recommendation-title,.site-player-section,.site-player-shell,.site-player-sort-button,.site-player-tags span{transition:background-color .28s ease,color .28s ease,border-color .28s ease}.site-player-shell.is-dark{background:#15171c;color:#f3f4f6}.site-player-shell.is-dark .site-player-header{background:rgba(24,26,32,.94);border-color:#2a2d35}.site-player-shell.is-dark .site-player-header button{color:#f3f4f6}.site-player-shell.is-dark .site-player-header .site-player-title{color:#f3f4f6}.site-player-shell.is-dark .site-player-header button:hover{background:#2a2d35}.site-player-shell.is-dark .site-player-header .site-player-theme-toggle{color:#fbbf24;background:#29251a;border-color:#55491e}.site-player-shell.is-dark .site-player-header .site-player-theme-toggle:hover{color:#fde68a;background:#3a321d}.site-player-shell.is-dark .site-player-action-bar,.site-player-shell.is-dark .site-player-section{background:#1b1e24;border-color:#2a2d35}.site-player-shell.is-dark .site-player-divider{background:#111318}.site-player-shell.is-dark .site-player-info-main h2,.site-player-shell.is-dark .site-player-now-playing,.site-player-shell.is-dark .site-player-section-title h3{color:#f3f4f6}.site-player-shell.is-dark .site-player-details,.site-player-shell.is-dark .site-player-section-title span{color:#aeb4c0}.site-player-shell.is-dark .site-player-details strong{color:#f3f4f6}.site-player-shell.is-dark .site-player-episode-button,.site-player-shell.is-dark .site-player-episodes button,.site-player-shell.is-dark .site-player-sort-button,.site-player-shell.is-dark .site-player-tags span{color:#d4d8e1;background:#242831;border-color:#343945}.site-player-shell.is-dark .site-player-episodes button.active,.site-player-shell.is-dark .site-player-sort-button.active{color:#ff7194;background:#38212b;border-color:rgba(255,113,148,.5)}.site-player-shell.is-dark .site-player-recommendation-title{color:#e5e7eb}.site-player-shell.is-dark .site-player-episodes-empty,.site-player-shell.is-dark .site-player-recommendations-empty{color:#8f96a3}.site-player-shell.is-dark .site-player-episodes-empty.is-loading{color:#d4d8e1}.site-player-shell.is-dark .site-player-episodes-loader{border-color:rgba(255,255,255,.14);border-top-color:#ff7194;border-right-color:#fb7185;box-shadow:0 0 0 3px rgba(255,113,148,.1)}body.site-dark-mode,html.site-dark-mode{background:#09090b;color:#e4e4e7}body.site-dark-mode::before{position:fixed;inset:0;z-index:0;content:'';pointer-events:none;background:radial-gradient(ellipse at top right,rgba(39,39,42,.55),transparent 55%),#09090b}body.site-dark-mode #app{position:relative;z-index:1;background:rgba(9,9,11,.78);color:#e4e4e7;box-shadow:0 0 34px rgba(0,0,0,.5)}body.site-dark-mode .empty-search-container,body.site-dark-mode .filter-controls-wrapper,body.site-dark-mode .modal-content,body.site-dark-mode .notification-modal-content,body.site-dark-mode .post-item,body.site-dark-mode .search-result-indicator,body.site-dark-mode .top-bar{background-color:rgba(9,9,11,.78);color:#f4f4f5;border-color:rgba(255,255,255,.07)}body.site-dark-mode .top-bar{background:rgba(9,9,11,.82);border-color:rgba(255,255,255,.07);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}body.site-dark-mode .filter-controls-wrapper{background:rgba(9,9,11,.72);border-color:rgba(255,255,255,.07);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}body.site-dark-mode .post-item{background:rgba(24,24,27,.72);border-color:rgba(255,255,255,.07)}body.site-dark-mode .modal-content h2,body.site-dark-mode .post-text,body.site-dark-mode .search-input,body.site-dark-mode .share-card .share-title,body.site-dark-mode .top-bar .title{color:#f3f4f6}body.site-dark-mode .advanced-filter-toggle-btn,body.site-dark-mode .filter-btn,body.site-dark-mode .login-prompt,body.site-dark-mode .search-input,body.site-dark-mode .share-card{background-color:#27272a;color:#d4d4d8;border-color:rgba(255,255,255,.1)}body.site-dark-mode .details-row,body.site-dark-mode .filter-label,body.site-dark-mode .post-meta,body.site-dark-mode .search-input::placeholder,body.site-dark-mode .share-card .share-subtitle{color:#aeb4c0}body.site-dark-mode .author-name,body.site-dark-mode .search-cancel-btn,body.site-dark-mode .tab-button{color:#c7cdd8}body.site-dark-mode .modal-overlay{background-color:rgba(0,0,0,.78)}body.site-dark-mode .site-image-lightbox{background:rgba(0,0,0,.95)}body.site-dark-mode .moments-header{margin:16px 16px 20px;border:0;border-radius:16px;overflow:visible;box-shadow:0 18px 42px rgba(0,0,0,.42)}body.site-dark-mode .moments-header .cover-photo{height:220px;opacity:.72;border-radius:16px}body.site-dark-mode .moments-header::after{position:absolute;inset:0;content:'';pointer-events:none;background:linear-gradient(180deg,rgba(9,9,11,.08),rgba(9,9,11,.74));border-radius:16px}body.site-dark-mode .advanced-filter-panel{background:rgba(24,24,27,.92);border-color:rgba(255,255,255,.07)}body.site-dark-mode .filter-btn.active{color:#fff;background:#3f3f46}body.site-dark-mode .site-player-overlay{background:#09090b}body.site-dark-mode .top-bar-icon,body.site-dark-mode .top-bar-icon circle,body.site-dark-mode .top-bar-icon path{color:#f3f4f6!important;stroke:#f3f4f6!important}body.site-dark-mode .filter-controls-wrapper{border-bottom:1px solid #2a2d35;box-shadow:0 2px 10px rgba(0,0,0,.16)}body.site-dark-mode .tab-button.active{color:#ff7194}body.site-dark-mode .tab-button{padding-bottom:10px}body.site-dark-mode .tab-button:hover{color:#e4e4e7}body.site-dark-mode .tab-button.active::after{height:2px;background:linear-gradient(90deg,#ec4899,#fb7185);box-shadow:0 0 8px rgba(244,114,182,.55)}body.site-dark-mode .scroll-indicator-track{background:rgba(255,255,255,.07)}body.site-dark-mode .scroll-indicator-thumb{background:linear-gradient(90deg,#ec4899,#fb7185)!important}.post-content-wrapper,.post-meta,.post-meta>div{overflow:visible}.actions-popover{z-index:80;box-sizing:border-box;border-radius:7px}body.site-dark-mode .site-player-shell{background:#09090b}body.site-dark-mode .site-player-shell.is-dark .site-player-header{background:rgba(9,9,11,.84);border-color:rgba(255,255,255,.07);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}body.site-dark-mode .site-player-shell.is-dark .site-player-action-bar,body.site-dark-mode .site-player-shell.is-dark .site-player-section{background:#18181b;border-color:rgba(255,255,255,.07)}body.site-dark-mode .site-player-shell.is-dark .site-player-divider{background:#09090b}body.site-dark-mode .interaction-section{color:#d4d4d8;background:#18181b;border:1px solid rgba(255,255,255,.07);box-shadow:0 8px 24px rgba(0,0,0,.16)}body.site-dark-mode .interaction-section::before{border-bottom-color:#18181b}body.site-dark-mode .interaction-section .likes{color:#a5b4fc}body.site-dark-mode .interaction-section .comment-text,body.site-dark-mode .interaction-section .comments{color:#d4d4d8}body.site-dark-mode .interaction-section .commenter{color:#a5b4fc}body.site-dark-mode .interaction-section .divider{background:rgba(255,255,255,.07)}body.site-dark-mode .interaction-section .replies{border-left-color:#3f3f46}body.site-dark-mode .interaction-section .comment-item.is-mine:hover,body.site-dark-mode .interaction-section .comment-item:hover{background:rgba(255,255,255,.05)}body.site-dark-mode .actions-btn{background:#27272a;border:1px solid rgba(255,255,255,.07)}body.site-dark-mode .actions-popover{z-index:80;height:36px;color:#f4f4f5;background:#27272a;border:1px solid rgba(255,255,255,.1);border-radius:8px;box-sizing:border-box;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.45)}body.site-dark-mode .popover-item{min-width:72px;box-sizing:border-box}body.site-dark-mode .popover-item:not(:last-child){border-right-color:rgba(255,255,255,.08)}body.site-dark-mode .popover-item:hover{background:#3f3f46}body.site-dark-mode .comment-form input{color:#f4f4f5;background:#27272a;border-color:#3f3f46}body.site-dark-mode .comment-form input::placeholder{color:#71717a}body.site-dark-mode .notification-modal-content{background:#09090b;color:#e4e4e7;box-shadow:0 0 36px rgba(0,0,0,.5)}body.site-dark-mode .notification-modal-content .modal-header{color:#f4f4f5;background:rgba(9,9,11,.86);border-bottom-color:rgba(255,255,255,.08);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}body.site-dark-mode .notification-modal-content .modal-header .icon-svg,body.site-dark-mode .notification-modal-content .modal-header svg{color:#f4f4f5}body.site-dark-mode .notification-modal-content .back-icon,body.site-dark-mode .notification-modal-content .clear-btn{color:#d4d4d8}body.site-dark-mode .notification-modal-content .modal-body{background:#09090b;scrollbar-color:#52525b #18181b}body.site-dark-mode .notification-item-wrapper{background:#18181b;border-bottom-color:rgba(255,255,255,.07)}body.site-dark-mode .notification-item{color:#e4e4e7;background:0 0}body.site-dark-mode .notification-item-wrapper:has(.notification-item.is-actionable:hover) .delete-action-wrapper,body.site-dark-mode .notification-item.is-actionable:hover{background:#202024}body.site-dark-mode .notification-item .actor-name{color:#f4f4f5}body.site-dark-mode .notification-item .action-text{color:#d4d4d8}body.site-dark-mode .notification-item .timestamp{color:#71717a}body.site-dark-mode .notification-item .details-btn{color:#d4d4d8;background:#27272a;border-color:#3f3f46}body.site-dark-mode .notification-item .details-btn:hover{color:#fff;background:#3f3f46}body.site-dark-mode .delete-action-wrapper{background:#18181b}body.site-dark-mode .notification-modal-content .delete-btn{color:#a1a1aa;background:#27272a;border:1px solid rgba(255,255,255,.06)}body.site-dark-mode .notification-modal-content .delete-btn:hover{color:#fda4af;background:rgba(244,63,94,.12);border-color:rgba(251,113,133,.2)}body.site-dark-mode .notification-modal-content .empty,body.site-dark-mode .notification-modal-content .loading,body.site-dark-mode .notification-modal-content .loading-indicator{color:#a1a1aa;background:#09090b}body.site-dark-mode .notification-modal-content .pull-to-refresh-indicator{color:#a1a1aa}body.site-dark-mode .site-notification-badge-icon{border-color:#18181b}body.site-dark-mode .loading-overlay{color:#d4d4d8;background:rgba(9,9,11,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}body.site-dark-mode .spinner{border-color:#27272a;border-top-color:#ec4899;box-shadow:0 0 18px rgba(236,72,153,.18)}body.site-dark-mode .load-more-indicator,body.site-dark-mode .loading-indicator,body.site-dark-mode .search-result-indicator{color:#a1a1aa;background:#09090b;border-color:rgba(255,255,255,.06)}body.site-dark-mode .empty-search-container,body.site-dark-mode .search-prompt{color:#71717a;background:#09090b}.notification-modal-content{width:100%;max-width:600px;height:100%;color:#334155;background:rgba(255,255,255,.72);box-shadow:0 0 36px rgba(0,0,0,.22)}.notification-modal-content .modal-header{position:sticky;top:0;z-index:3;height:58px;padding:0 16px;color:#0f172a;background:rgba(255,255,255,.82);border-bottom:1px solid #e2e8f0;box-shadow:0 2px 10px rgba(15,23,42,.06);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.notification-modal-content .modal-header h3{margin:0;font-size:17px;font-weight:800;letter-spacing:.7px}.notification-modal-content .back-icon,.notification-modal-content .clear-btn{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 8px;color:#64748b;font-size:14px;font-weight:700;border-radius:999px;cursor:pointer;transition:background .2s ease,color .2s ease}.notification-modal-content .back-icon{width:36px;padding:0;font-size:0}.notification-modal-content .back-icon::before{content:'‹';font-size:28px;font-weight:400;line-height:1}.notification-modal-content .back-icon:hover,.notification-modal-content .clear-btn:hover{color:#0f172a;background:#f1f5f9}.notification-modal-content .modal-body{padding:16px;background:linear-gradient(180deg,#f8fafc,#f1f5f9)}.notification-modal-content .modal-body>div:not(.pull-to-refresh-indicator):not(.loading):not(.empty):not(.loading-indicator){display:flex;flex-direction:column;gap:12px}.notification-item-wrapper{position:relative;overflow:visible;margin:0;background:rgba(255,255,255,.72);border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 5px 18px rgba(15,23,42,.06);transition:background .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease}.notification-item-wrapper:hover{background:rgba(255,255,255,.96);border-color:#cbd5e1;box-shadow:0 10px 24px rgba(15,23,42,.1);transform:translateY(-1px)}.notification-item{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:0 12px;align-items:start;padding:16px 16px 14px}.notification-item .actor-avatar{width:44px;height:44px;margin:1px 0 0;border:1px solid #e2e8f0;border-radius:50%;object-fit:cover;box-shadow:0 3px 8px rgba(15,23,42,.12)}.notification-item .item-content{min-width:0;padding-top:1px}.notification-item .actor-name{margin-bottom:5px;color:#0f172a;font-size:15px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-item .action-text{margin:0;color:#475569;font-size:13.5px;line-height:1.45;word-break:break-word}.notification-item .timestamp{margin-top:7px;color:#94a3b8;font-size:11px;font-weight:700}.notification-item .post-preview{display:flex;align-items:center;justify-content:flex-end;min-width:0;padding:0}.notification-item .details-btn{padding:7px 10px;color:#475569;font-size:11px;font-weight:700;white-space:nowrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:9px;box-shadow:0 2px 6px rgba(15,23,42,.05);cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.notification-item .details-btn:hover{color:#0f172a;background:#f1f5f9;border-color:#cbd5e1}.notification-item-wrapper:has(.heart-icon)::after,.notification-item-wrapper:has(.request-icon)::after{position:absolute;left:47px;top:48px;display:flex;align-items:center;justify-content:center;width:21px;height:21px;color:#fff;font-size:11px;font-weight:800;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 7px rgba(15,23,42,.22)}.notification-item-wrapper:has(.heart-icon)::after{content:'♥';background:linear-gradient(135deg,#f43f5e,#ec4899)}.notification-item-wrapper:has(.request-icon)::after{content:'⇩';background:linear-gradient(135deg,#3b82f6,#06b6d4)}.notification-item-wrapper .delete-action-wrapper{display:flex;justify-content:flex-end;padding:0 16px 14px;background:0 0}.notification-item-wrapper .delete-btn{width:auto;min-width:48px;padding:6px 10px;color:#e11d48;font-size:11px;font-weight:700;background:#fff1f2;border:1px solid #ffe4e6;border-radius:8px;opacity:.62;cursor:pointer;transition:opacity .2s ease,background .2s ease,color .2s ease}.notification-item-wrapper .delete-btn:focus,.notification-item-wrapper:hover .delete-btn{opacity:1}.notification-item-wrapper .delete-btn:hover{color:#be123c;background:#ffe4e6}@media (hover:none){.notification-item-wrapper .delete-btn{opacity:1}}.notification-modal-content .empty,.notification-modal-content .loading,.notification-modal-content .loading-indicator{padding:32px 0;color:#94a3b8;font-size:12px;font-weight:700;text-align:center}.site-notification-title-icon{width:17px;height:17px;margin-right:6px;color:currentColor;vertical-align:-3px}.site-notification-title-icon svg{width:100%;height:100%}.site-notification-badge-icon{position:absolute;left:47px;top:48px;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 7px rgba(15,23,42,.22)}.site-notification-badge-icon svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.site-notification-badge-icon.is-like{background:linear-gradient(135deg,#f43f5e,#ec4899)}.site-notification-badge-icon.is-request{background:linear-gradient(135deg,#3b82f6,#06b6d4)}.notification-item-wrapper.has-clean-badge::after{display:none}.notification-modal-content .back-icon.has-icon::before{display:none}.notification-modal-content .back-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.notification-item .heart-icon,.notification-item .request-icon{display:none}.site-theme-toast{position:fixed;top:68px;left:50%;z-index:20000;max-width:calc(100vw - 40px);padding:11px 16px;color:#f4f4f5;font-size:13px;line-height:1.45;white-space:nowrap;background:rgba(24,24,27,.92);border:1px solid rgba(255,255,255,.1);border-radius:999px;box-shadow:0 12px 34px rgba(0,0,0,.3);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transform:translate(-50%,-16px);opacity:0;pointer-events:none;transition:opacity .28s ease,transform .28s ease}.site-theme-toast.is-visible{opacity:1;transform:translate(-50%,0)}.site-theme-toast.is-light{color:#3f3f46;background:rgba(255,255,255,.94);border-color:rgba(24,24,27,.1);box-shadow:0 12px 34px rgba(0,0,0,.14)}@keyframes site-dark-locate-post{0%{background:rgba(236,72,153,.22);box-shadow:inset 3px 0 #ec4899,0 0 0 1px rgba(236,72,153,.2)}100%{background:0 0;box-shadow:inset 3px 0 transparent,0 0 0 1px transparent}}body.site-dark-mode .post-item.site-dark-located{animation:site-dark-locate-post 1.7s ease-out forwards}@media (max-width:520px){.site-theme-toast{top:60px;max-width:calc(100vw - 24px);padding:10px 13px;font-size:12px;white-space:normal;text-align:center}}@media (min-width:601px){.site-player-overlay{padding:0 16px}.site-player-shell{max-height:100vh;border-radius:0;box-shadow:0 0 30px rgba(0,0,0,.25)}}@media (max-width:420px){.site-player-episodes{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.site-player-episodes button{padding-left:4px;padding-right:4px;font-size:13px}}:root{--site-glass-radius:20px;--site-glass-border:rgba(15, 23, 42, .08);--site-glass-shadow:0 12px 34px rgba(15, 23, 42, .08);--site-accent:#ec4899}body{background:radial-gradient(circle at 50% -10%,#fff 0,#f5f7fb 45%,#edf1f7 100%)}#app{background:rgba(255,255,255,.68);box-shadow:0 0 45px rgba(15,23,42,.1)}.top-bar{background:rgba(255,255,255,.72);border-bottom:1px solid rgba(148,163,184,.2);box-shadow:0 8px 24px rgba(15,23,42,.05);backdrop-filter:blur(22px) saturate(135%);-webkit-backdrop-filter:blur(22px) saturate(135%)}.top-bar-icon{transition:color .2s ease,transform .2s ease,opacity .2s ease}.top-bar-icon:hover{transform:translateY(-1px) scale(1.05);opacity:.82}.filter-controls-wrapper{margin:0 12px 14px;padding:8px 10px;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:rgba(255,255,255,.6);box-shadow:0 8px 22px rgba(15,23,42,.05);backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%)}.filter-tabs{gap:2px;padding-right:6px}.tab-button{padding:8px 13px 10px;border-radius:10px}.tab-button:not(:first-child){margin-left:2px}.tab-button:hover{color:#1e293b;background:rgba(148,163,184,.1)}.tab-button.active{color:#db2777}.tab-button.active::after{height:3px;background:linear-gradient(90deg,#ec4899,#fb7185);box-shadow:0 0 10px rgba(236,72,153,.35)}.advanced-filter-toggle-btn,.filter-btn{border:1px solid rgba(148,163,184,.18);background:rgba(248,250,252,.78);box-shadow:0 3px 10px rgba(15,23,42,.04)}.advanced-filter-toggle-btn{margin-left:8px}.advanced-filter-panel{margin:-14px 12px 14px;border-top:0;border-radius:0 0 16px 16px;background:rgba(255,255,255,.7);box-shadow:0 8px 22px rgba(15,23,42,.05);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.moments-header{margin:12px 12px 22px;overflow:visible;border:1px solid rgba(255,255,255,.42);border-radius:var(--site-glass-radius);box-shadow:0 18px 42px rgba(15,23,42,.14)}.moments-header .cover-photo{height:228px;border-radius:var(--site-glass-radius)}.moments-header::after{position:absolute;inset:0;content:'';pointer-events:none;border-radius:var(--site-glass-radius);background:linear-gradient(180deg,rgba(15,23,42,.02) 20%,rgba(15,23,42,.68) 100%)}.user-info{z-index:1;right:16px;bottom:20px}.user-info .avatar{border:3px solid rgba(255,255,255,.95);border-radius:16px;box-shadow:0 8px 24px rgba(15,23,42,.22)}.feed{padding:0 12px 28px}.post-item{position:relative;margin:0 0 14px;padding:16px;border:1px solid var(--site-glass-border);border-radius:var(--site-glass-radius);background:rgba(255,255,255,.68);box-shadow:var(--site-glass-shadow);backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.post-item:hover{transform:translateY(-2px);border-color:rgba(236,72,153,.2);box-shadow:0 18px 38px rgba(15,23,42,.12)}.post-content-wrapper{min-width:0}.author-name{color:#334155}.post-text{color:#1e293b}.post-meta{color:#94a3b8}.actions-btn{border:1px solid rgba(148,163,184,.18);border-radius:9px;background:rgba(248,250,252,.78)}.login-prompt,.share-card{border:1px solid rgba(148,163,184,.16);border-radius:14px;background:rgba(248,250,252,.64);box-shadow:0 6px 18px rgba(15,23,42,.05)}.share-card:hover{background:rgba(255,255,255,.86)}.movie-card-vertical{margin-top:12px;height:136px;border:1px solid rgba(148,163,184,.18);border-radius:18px;background-color:rgba(30,41,59,.94);box-shadow:0 14px 30px rgba(15,23,42,.18);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.movie-card-vertical:hover{transform:translateY(-3px);border-color:rgba(236,72,153,.34);box-shadow:0 20px 38px rgba(15,23,42,.24)}.movie-card-vertical .cover-bg{left:13px;top:12px;width:86px;height:112px;border-radius:10px;box-shadow:0 7px 18px rgba(0,0,0,.34)}.movie-card-vertical .cover-bg img{width:100%;height:100%;border:1px solid rgba(255,255,255,.16);border-radius:10px;object-fit:cover}.movie-card-vertical .info-wrapper{padding:16px 14px 16px 112px}.movie-card-vertical .category-tag{border-radius:999px;color:#fbcfe8;background:rgba(236,72,153,.17);border:1px solid rgba(251,113,133,.22)}.movie-card-vertical .info-action .action-icon{width:34px;height:34px;background:rgba(255,255,255,.12)}.interaction-section{border:1px solid rgba(148,163,184,.14);border-radius:14px;background:rgba(248,250,252,.62);box-shadow:0 7px 18px rgba(15,23,42,.06)}.interaction-section::before{border-bottom-color:rgba(248,250,252,.62)}.comment-form input{border:1px solid rgba(148,163,184,.2);border-radius:10px;background:rgba(248,250,252,.72)}.search-input{border:1px solid rgba(148,163,184,.16);background:rgba(248,250,252,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.6)}.loading-overlay{background:rgba(248,250,252,.82);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.empty-search-container,.load-more-indicator,.search-result-indicator{background:rgba(248,250,252,.56);border:0}body.site-dark-mode{background:#09090b;background-image:radial-gradient(circle at 92% -8%,rgba(236,72,153,.14),transparent 35%),radial-gradient(circle at 8% 18%,rgba(59,130,246,.1),transparent 30%)}body.site-dark-mode::before{background:radial-gradient(ellipse at 88% 0,rgba(236,72,153,.13),transparent 42%),radial-gradient(ellipse at 8% 28%,rgba(59,130,246,.09),transparent 36%),#09090b}body.site-dark-mode #app{background:rgba(9,9,11,.72);box-shadow:0 0 60px rgba(0,0,0,.52)}body.site-dark-mode .top-bar{background:rgba(9,9,11,.64);border-bottom-color:rgba(255,255,255,.09);box-shadow:0 10px 26px rgba(0,0,0,.24)}body.site-dark-mode .filter-controls-wrapper{border-color:rgba(255,255,255,.1);background:rgba(24,24,27,.54);box-shadow:0 12px 28px rgba(0,0,0,.22)}body.site-dark-mode .tab-button.active{color:#f9a8d4}body.site-dark-mode .advanced-filter-toggle-btn,body.site-dark-mode .filter-btn{color:#d4d4d8;background:rgba(39,39,42,.72);border-color:rgba(255,255,255,.11)}body.site-dark-mode .advanced-filter-panel{border-color:rgba(255,255,255,.09);background:rgba(24,24,27,.76);box-shadow:0 14px 30px rgba(0,0,0,.25)}body.site-dark-mode .moments-header{border-color:rgba(255,255,255,.12);box-shadow:0 22px 48px rgba(0,0,0,.45)}body.site-dark-mode .moments-header .cover-photo{opacity:.78}body.site-dark-mode .moments-header::after{background:linear-gradient(180deg,rgba(9,9,11,.02) 15%,rgba(9,9,11,.8) 100%)}body.site-dark-mode .feed{padding:0 12px 30px}body.site-dark-mode .post-item{margin-bottom:14px;padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:var(--site-glass-radius);background:linear-gradient(145deg,rgba(39,39,42,.68),rgba(24,24,27,.56));box-shadow:0 16px 34px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.035);backdrop-filter:blur(20px) saturate(125%);-webkit-backdrop-filter:blur(20px) saturate(125%)}body.site-dark-mode .post-item:hover{border-color:rgba(244,114,182,.3);box-shadow:0 22px 42px rgba(0,0,0,.38),0 0 0 1px rgba(244,114,182,.06)}body.site-dark-mode .author-name{color:#ffffff}body.site-dark-mode .post-text{color:#f4f4f5}body.site-dark-mode .post-meta{color:#a1a1aa}body.site-dark-mode .actions-btn{color:#d4d4d8;background:rgba(63,63,70,.62);border-color:rgba(255,255,255,.1)}body.site-dark-mode .login-prompt,body.site-dark-mode .share-card{border-color:rgba(255,255,255,.1);background:rgba(39,39,42,.6);box-shadow:0 8px 22px rgba(0,0,0,.2)}body.site-dark-mode .share-card:hover{background:rgba(63,63,70,.76)}body.site-dark-mode .movie-card-vertical{background-color:rgba(24,24,27,.62)!important;border-color:rgba(147,197,253,.18);box-shadow:0 18px 36px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.04)}body.site-dark-mode .movie-card-vertical:hover{border-color:rgba(244,114,182,.38);box-shadow:0 24px 44px rgba(0,0,0,.44)}body.site-dark-mode .interaction-section{border-color:rgba(255,255,255,.1);background:rgba(39,39,42,.64);box-shadow:0 9px 24px rgba(0,0,0,.24)}body.site-dark-mode .interaction-section::before{border-bottom-color:rgba(39,39,42,.64)}body.site-dark-mode .comment-form input,body.site-dark-mode .search-input{color:#f4f4f5;background:rgba(39,39,42,.72);border-color:rgba(255,255,255,.11);box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}body.site-dark-mode .loading-overlay{background:rgba(9,9,11,.78)}body.site-dark-mode .empty-search-container,body.site-dark-mode .load-more-indicator,body.site-dark-mode .search-result-indicator{background:rgba(9,9,11,.46)}@media (max-width:600px){.moments-header{margin-left:10px;margin-right:10px}.filter-controls-wrapper{margin-left:10px;margin-right:10px}.advanced-filter-panel{margin-left:10px;margin-right:10px}.feed,body.site-dark-mode .feed{padding-left:10px;padding-right:10px}.post-item,body.site-dark-mode .post-item{border-radius:17px;padding:14px}}.movie-card-vertical .info-action{width:68px;min-width:68px;padding:0;align-items:center;justify-content:center;text-align:center;color:#fff}.movie-card-vertical .info-action .action-icon{background:rgba(107,114,128,.78)}.movie-card-vertical .info-action .action-icon .icon-svg{width:20px;height:20px;margin-left:2px}.movie-card-vertical .info-action .action-text{display:block;margin-top:6px;color:rgba(255,255,255,.92);font-size:12px;line-height:1.1;white-space:nowrap}.movie-card-vertical:hover .info-action .action-icon{background:rgba(148,163,184,.92)}body.site-dark-mode .movie-card-vertical .info-action .action-icon{background:rgba(113,113,122,.72);border-color:rgba(255,255,255,.24)}body.site-dark-mode .movie-card-vertical:hover .info-action .action-icon{background:rgba(161,161,170,.88)}.video-share-container .play-icon-overlay{flex-direction:column;gap:6px;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.3))}.video-share-container .play-icon-overlay::after{content:'播放';color:rgba(255,255,255,.94);font-size:12px;line-height:1;text-shadow:0 1px 4px rgba(0,0,0,.45)}.video-share-container .play-icon{width:42px;height:42px;padding:10px;box-sizing:border-box;color:#fff;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.2);border-radius:50%;filter:drop-shadow(0 5px 12px rgba(0,0,0,.28))}.site-player-play-main{flex-direction:column;gap:6px;background:0 0;border-radius:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.site-player-play-main::before{position:absolute;top:2px;width:42px;height:42px;content:'';background:rgba(107,114,128,.8);border:1px solid rgba(255,255,255,.22);border-radius:50%;box-shadow:0 7px 18px rgba(0,0,0,.3);transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.site-player-play-main svg{margin:-1px 0 0 3px}.site-player-play-main::after{position:relative;z-index:1;content:'播放';color:rgba(255,255,255,.95);font-size:12px;line-height:1;text-shadow:0 1px 4px rgba(0,0,0,.5)}.site-player-play-main:hover::before{background:rgba(148,163,184,.94);box-shadow:0 9px 22px rgba(0,0,0,.38),0 0 0 4px rgba(255,255,255,.08);transform:translateX(-50%) scale(1.08)}.site-player-play-main:focus-visible{outline:2px solid rgba(255,255,255,.85);outline-offset:4px;border-radius:10px}body.site-dark-mode .site-player-play-main::before{background:rgba(113,113,122,.76);border-color:rgba(255,255,255,.25)}body.site-dark-mode .site-player-play-main:hover::before{background:rgba(161,161,170,.92)}.site-player-recommendation-cover::before{position:absolute;top:50%;left:50%;z-index:2;display:flex;align-items:center;justify-content:center;width:34px;height:34px;content:'▶';color:#fff;font-size:14px;background:rgba(107,114,128,.78);border:1px solid rgba(255,255,255,.22);border-radius:50%;opacity:0;transform:translate(-50%,-50%) scale(.86);transition:opacity .2s ease,transform .2s ease}.site-player-recommendation:focus-within .site-player-recommendation-cover::before,.site-player-recommendation:hover .site-player-recommendation-cover::before{opacity:1;transform:translate(-50%,-50%) scale(1)}.site-player-shell{background:linear-gradient(180deg,#f8fafc 0,#eef2f7 100%)}.site-player-header{background:rgba(255,255,255,.7);border-bottom-color:rgba(148,163,184,.18);box-shadow:0 8px 24px rgba(15,23,42,.07);backdrop-filter:blur(22px) saturate(135%);-webkit-backdrop-filter:blur(22px) saturate(135%)}.site-player-action-bar,.site-player-section{margin:10px 12px;border:1px solid rgba(148,163,184,.16);border-radius:18px;background:rgba(255,255,255,.68);box-shadow:0 12px 30px rgba(15,23,42,.08);backdrop-filter:blur(18px) saturate(130%);-webkit-backdrop-filter:blur(18px) saturate(130%)}.site-player-action-bar{margin-top:10px}.site-player-divider{height:0;background:0 0}.site-player-episode-button,.site-player-episodes button,.site-player-sort-button,.site-player-tags span{border-color:rgba(148,163,184,.18);background:rgba(248,250,252,.72)}.site-player-recommendation-cover{border-radius:12px;box-shadow:0 8px 18px rgba(15,23,42,.12)}.site-player-shell.is-dark,body.site-dark-mode .site-player-shell{background:linear-gradient(180deg,#09090b 0,#111114 100%)}.site-player-shell.is-dark .site-player-header,body.site-dark-mode .site-player-header{background:rgba(9,9,11,.66);border-bottom-color:rgba(255,255,255,.09);box-shadow:0 10px 28px rgba(0,0,0,.28);backdrop-filter:blur(22px) saturate(125%);-webkit-backdrop-filter:blur(22px) saturate(125%)}.site-player-shell.is-dark .site-player-action-bar,.site-player-shell.is-dark .site-player-section,body.site-dark-mode .site-player-action-bar,body.site-dark-mode .site-player-section{margin:10px 12px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:linear-gradient(145deg,rgba(39,39,42,.68),rgba(24,24,27,.58));box-shadow:0 16px 34px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.035);backdrop-filter:blur(20px) saturate(125%);-webkit-backdrop-filter:blur(20px) saturate(125%)}.site-player-shell.is-dark .site-player-episode-button,.site-player-shell.is-dark .site-player-episodes button,.site-player-shell.is-dark .site-player-sort-button,.site-player-shell.is-dark .site-player-tags span,body.site-dark-mode .site-player-episode-button,body.site-dark-mode .site-player-episodes button,body.site-dark-mode .site-player-sort-button,body.site-dark-mode .site-player-tags span{border-color:rgba(255,255,255,.11);background:rgba(39,39,42,.68)}.site-player-shell.is-dark .site-player-recommendation-cover,body.site-dark-mode .site-player-recommendation-cover{box-shadow:0 10px 22px rgba(0,0,0,.34)}.site-player-play-main{display:block;width:74px;height:82px}.site-player-play-main::before{top:0;left:50%;transform:translateX(-50%)}.site-player-play-main svg{position:absolute;top:12px;left:50%;z-index:1;width:20px;height:20px;margin:0;transform:translateX(calc(-50% + 2px))}.site-player-play-main::after{position:absolute;top:53px;left:0;width:100%;text-align:center}.movie-card-vertical .info-action .action-icon .icon-svg{margin-left:0;transform:translateX(1px)}.modal-content,.music-player,.playlist-viewer-content{border:1px solid rgba(148,163,184,.18);background:rgba(255,255,255,.72);box-shadow:0 18px 44px rgba(15,23,42,.16);backdrop-filter:blur(22px) saturate(135%);-webkit-backdrop-filter:blur(22px) saturate(135%)}body.site-dark-mode .modal-content,body.site-dark-mode .music-player,body.site-dark-mode .playlist-viewer-content{border-color:rgba(255,255,255,.1);background:linear-gradient(145deg,rgba(39,39,42,.78),rgba(24,24,27,.7));box-shadow:0 22px 48px rgba(0,0,0,.42)}.post-item:has(.movie-card-vertical){padding:0;overflow:visible}.post-item:has(.movie-card-vertical) .post-content-wrapper{width:100%}.post-item:has(.movie-card-vertical) .movie-card-vertical{width:100%;margin:0;border-width:0;border-radius:calc(var(--site-glass-radius) - 1px) calc(var(--site-glass-radius) - 1px) 0 0}.post-item:has(.movie-card-vertical) .post-meta{margin:0;padding:11px 16px 13px;background:rgba(255,255,255,.42);border-top:1px solid rgba(148,163,184,.12)}.post-item:has(.movie-card-vertical) .comment-form,.post-item:has(.movie-card-vertical) .interaction-section{margin-left:16px;margin-right:16px}body.site-dark-mode .post-item:has(.movie-card-vertical) .post-meta{background:rgba(24,24,27,.56);border-top-color:rgba(255,255,255,.08)}@media (max-width:600px){.site-player-action-bar,.site-player-section,body.site-dark-mode .site-player-action-bar,body.site-dark-mode .site-player-section{margin-left:10px;margin-right:10px;border-radius:16px}.post-item:has(.movie-card-vertical) .post-meta{padding-left:14px;padding-right:14px}.post-item:has(.movie-card-vertical) .comment-form,.post-item:has(.movie-card-vertical) .interaction-section,body.site-dark-mode .post-item:has(.movie-card-vertical) .comment-form,body.site-dark-mode .post-item:has(.movie-card-vertical) .interaction-section{margin-left:14px;margin-right:14px}}.site-player-play-main{position:absolute;top:50%;left:50%;display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin:0;padding:0;color:#fff;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);border-radius:50%;box-shadow:0 8px 24px rgba(0,0,0,.24);transform:translate(-50%,-50%);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.site-player-play-main::after,.site-player-play-main::before{display:none}.site-player-play-main svg{position:static;z-index:auto;width:24px;height:24px;margin-left:3px;transform:none}body.site-dark-mode .post-item:has(.movie-card-vertical){padding:0!important;overflow:visible!important}body.site-dark-mode .post-item:has(.movie-card-vertical) .post-content-wrapper{width:100%;min-width:0;overflow:visible!important}body.site-dark-mode .post-item:has(.movie-card-vertical) .movie-card-vertical{display:grid;width:100%!important;margin:0!important;border-width:0;border-radius:calc(var(--site-glass-radius) - 1px) calc(var(--site-glass-radius) - 1px) 0 0}body.site-dark-mode .post-item:has(.movie-card-vertical) .post-meta{position:relative;z-index:2;display:flex;width:100%;box-sizing:border-box;margin:0!important;padding:11px 16px 13px;overflow:visible!important;background:rgba(24,24,27,.62)!important;border-top:1px solid rgba(255,255,255,.08)}body.site-dark-mode .post-item:has(.movie-card-vertical) .comment-form,body.site-dark-mode .post-item:has(.movie-card-vertical) .interaction-section{position:relative;z-index:1;margin-left:16px;margin-right:16px}body.site-dark-mode .post-item .post-content-wrapper,body.site-dark-mode .post-item .post-meta,body.site-dark-mode .post-item .post-meta>div{overflow:visible!important}body.site-dark-mode .post-item .actions-popover{z-index:120!important;overflow:hidden}.post-item .post-content-wrapper,.post-item .post-meta,.post-item .post-meta>div{overflow:visible!important}.post-item .actions-popover{z-index:120!important}.movie-card-vertical .info-action .action-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin:0 auto;color:#fff;background:rgb(107 114 128 / 0%);border:1px solid rgba(255,255,255,.2);border-radius:50%;box-shadow:0 6px 16px rgba(0,0,0,.2);transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.movie-card-vertical:hover .info-action .action-icon{transform:scale(1.08);background:#ffffff61;box-shadow:0 8px 20px rgba(0,0,0,.28),0 0 0 4px rgba(255,255,255,.06)}.site-global-theme-toggle,.site-player-header .site-player-theme-toggle{width:34px;height:34px;margin-left:12px;color:#334155;background:rgb(248 250 252 / 0%);border:0;border-radius:50%;box-shadow:none;transition:transform .22s ease,color .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease}.site-global-theme-toggle:hover,.site-player-header .site-player-theme-toggle:hover{color:#db2777;background:rgba(255,255,255,.96);border-color:rgba(236,72,153,.26);box-shadow:0 7px 18px rgba(236,72,153,.16);transform:rotate(12deg) scale(1.06)}.site-global-theme-toggle .site-theme-toggle-icon,.site-player-header .site-theme-toggle-icon{width:2em;height:2em;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.site-player-shell.is-dark .site-player-header .site-player-theme-toggle,body.site-dark-mode .site-global-theme-toggle,body.site-dark-mode .site-player-header .site-player-theme-toggle{color:#e2e8f0;background:rgb(248 250 252 / 0%);border:0;box-shadow:none}.site-player-shell.is-dark .site-player-header .site-player-theme-toggle:hover,body.site-dark-mode .site-global-theme-toggle:hover,body.site-dark-mode .site-player-header .site-player-theme-toggle:hover{color:#f9a8d4;background:rgba(63,63,70,.86);border-color:rgba(244,114,182,.32);box-shadow:0 8px 20px rgba(236,72,153,.2)}body.site-dark-mode .music-player{color:#f4f4f5;background:rgba(24,24,27,.88);border-top:1px solid rgba(255,255,255,.1);box-shadow:0 -14px 34px rgba(0,0,0,.34);backdrop-filter:blur(22px) saturate(130%);-webkit-backdrop-filter:blur(22px) saturate(130%)}body.site-dark-mode .music-player .player-info .title{color:#f4f4f5}body.site-dark-mode .music-player .player-info .artist{color:#a1a1aa}body.site-dark-mode .music-player .player-controls{color:#e4e4e7}body.site-dark-mode .music-player .player-controls .control-btn{color:#e4e4e7;fill:currentColor!important;stroke:none;opacity:.92;filter:drop-shadow(0 1px 4px rgba(0,0,0,.24));transition:color .2s ease,opacity .2s ease,transform .2s ease}body.site-dark-mode .music-player .player-controls .control-btn:hover{color:#f9a8d4;opacity:1;transform:scale(1.08)}body.site-dark-mode .music-player .progress-bar-container{height:3px;background:rgba(255,255,255,.08)!important;border-top:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}body.site-dark-mode .music-player .progress-bar{background:linear-gradient(90deg,#ec4899,#fb7185);box-shadow:0 0 10px rgba(236,72,153,.55)}body.site-dark-mode .music-player .player-cover{border:1px solid rgba(255,255,255,.12);box-shadow:0 5px 15px rgba(0,0,0,.34)}.music-player .player-controls .control-btn{fill:currentColor}.music-player{left:max(0px,calc((100vw - 600px)/ 2));right:max(0px,calc((100vw - 600px)/ 2));width:auto;max-width:none;margin-left:0;margin-right:0;box-sizing:border-box}.back-to-top,.back-to-top[data-v-6f176eef]{right:max(16px,calc((100vw - 600px)/ 2 + 16px));bottom:100px}body>.page-indicator,body>.page-indicator[data-v-65325117]{bottom:110px}@media (max-width:600px){.music-player{left:0;right:0;width:100%}.back-to-top{right:16px}}@media (min-width:601px){.back-to-top{left:calc(50% + 244px);right:auto}}.top-bar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:10px;align-items:center}.top-bar>.search-container,.top-bar>.top-bar-actions,.top-bar>span:first-child{min-width:0}.top-bar>span:first-child{grid-column:1;flex:0 0 auto}.top-bar .search-container{grid-column:2;min-width:0;width:auto;margin:0}.top-bar .title{position:static;display:block;width:100%;max-width:100%;margin:0;overflow:hidden;font-size:18px;line-height:1.15;text-align:left;text-overflow:ellipsis;white-space:nowrap;transform:none}.top-bar-actions{grid-column:3;flex:0 0 auto;min-width:max-content;gap:8px}.top-bar-actions>*{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin:0;box-sizing:border-box}.top-bar-actions>*+*{margin-left:0}.top-bar-actions .top-bar-icon{width:24px;height:24px}.top-bar-actions .site-global-theme-toggle{width:32px;height:32px;padding:0}.top-bar-actions .site-global-theme-toggle .site-theme-toggle-icon{width:26px;height:26px}@media (max-width:380px){.top-bar{column-gap:7px;padding-left:10px;padding-right:10px}.top-bar .title{font-size:16px}.top-bar-actions{gap:5px}}.site-player-video.is-cover>.site-player-video-backdrop{z-index:0}.site-player-video.is-cover>.site-player-cover{z-index:1;background:0 0}.site-player-video.is-cover::after{z-index:2}.site-player-video.is-cover>.site-player-play-main{z-index:5!important;display:flex!important;visibility:visible;opacity:1;pointer-events:auto;color:#fff;background:rgba(255,255,255,.1);border-color:#88888887;box-shadow:0 8px 24px rgba(0,0,0,.32),0 0 0 4px rgba(255,255,255,.08)}.modal-overlay:has(.form-group-checkbox){padding:16px;background:rgba(15,23,42,.4);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);animation:site-publish-overlay-in .28s ease-out}.modal-overlay:has(.form-group-checkbox) .modal-content{display:flex;flex-direction:column;width:min(480px,calc(100vw - 32px));max-width:480px;max-height:85vh;overflow:hidden;padding:0;color:#334155;background:rgba(255,255,255,.95);border:1px solid rgba(15,23,42,.06);border-radius:28px;box-shadow:0 24px 60px -12px rgba(0,0,0,.2);backdrop-filter:blur(28px) saturate(135%);-webkit-backdrop-filter:blur(28px) saturate(135%);animation:site-publish-modal-in .34s cubic-bezier(.16,1,.3,1)}@keyframes site-publish-overlay-in{from{opacity:0}to{opacity:1}}@keyframes site-publish-modal-in{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-overlay:has(.form-group-checkbox) .modal-content>.close-btn{top:18px;right:18px;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;color:#94a3b8;font-size:24px;line-height:1;border-radius:50%;transition:color .2s ease,background .2s ease,transform .2s ease}.modal-overlay:has(.form-group-checkbox) .modal-content>.close-btn:hover{color:#334155;background:#f1f5f9;transform:rotate(90deg)}.modal-overlay:has(.form-group-checkbox) .modal-content>h2{margin:0;padding:22px 56px 16px;color:#1e293b;font-size:17px;font-weight:800;letter-spacing:.6px;text-align:center}.modal-overlay:has(.form-group-checkbox) .post-modal-tabs{display:flex;gap:4px;margin:0 24px 8px;padding:6px;border:0;border-radius:18px;background:rgba(241,245,249,.86)}.modal-overlay:has(.form-group-checkbox) .post-modal-tabs button{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;padding:9px 4px;color:#64748b;font-size:11px;font-weight:700;line-height:1.1;border:0;border-radius:14px;transition:color .25s ease,background .25s ease,box-shadow .25s ease,transform .25s ease}.modal-overlay:has(.form-group-checkbox) .post-modal-tabs button.active{color:#0f172a;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,.06);transform:scale(1.02)}.site-post-tab-icon{display:inline-flex;width:18px;height:18px;color:#94a3b8}.site-post-tab-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.post-modal-tabs button.active .site-post-tab-icon{color:#10b981}.modal-overlay:has(.form-group-checkbox) .modal-content>div:last-child{flex:1;min-height:0;overflow-y:auto;padding:16px 24px 24px;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.55) transparent}.modal-overlay:has(.form-group-checkbox) .modal-content>div:last-child::-webkit-scrollbar{width:5px}.modal-overlay:has(.form-group-checkbox) .modal-content>div:last-child::-webkit-scrollbar-thumb{background:rgba(148,163,184,.55);border-radius:10px}.modal-overlay:has(.form-group-checkbox) .form-group.full-width{margin:0 0 18px;padding:0;overflow:hidden;border:1px solid rgba(203,213,225,.6);border-radius:16px;background:rgba(248,250,252,.7);transition:border-color .25s ease,background .25s ease,box-shadow .25s ease}.modal-overlay:has(.form-group-checkbox) .form-group.full-width:focus-within{background:#fff;border-color:#34d399;box-shadow:0 0 0 3px rgba(16,185,129,.1)}.modal-overlay:has(.form-group-checkbox) .form-group.full-width textarea{width:100%;min-height:112px;box-sizing:border-box;padding:15px;color:#1e293b;font-size:15px;line-height:1.5;background:0 0;border:0;resize:vertical}.modal-overlay:has(.form-group-checkbox) .form-group.full-width textarea:focus{outline:0}.modal-overlay:has(.form-group-checkbox) .form-section{margin:0 0 18px;padding:4px;border:1px solid rgba(203,213,225,.6);border-radius:16px;background:rgba(248,250,252,.7)}.modal-overlay:has(.form-group-checkbox) .form-section .form-group{min-height:48px;margin:0;padding:0 12px;border-bottom:1px solid rgba(203,213,225,.6)}.modal-overlay:has(.form-group-checkbox) .form-section .form-group:last-child{border-bottom:0}.modal-overlay:has(.form-group-checkbox) .form-section .form-group label{width:64px;margin-right:10px;color:#64748b;font-size:13px;font-weight:700}.modal-overlay:has(.form-group-checkbox) .form-section input,.modal-overlay:has(.form-group-checkbox) .form-section select{min-width:0;padding:13px 0;color:#1e293b;font-size:14px;background:0 0;border:0}.modal-overlay:has(.form-group-checkbox) .form-section input:focus,.modal-overlay:has(.form-group-checkbox) .form-section select:focus{outline:0}.modal-overlay:has(.form-group-checkbox) .form-section .select-wrapper{flex:1 1 400px;width:min(400px,100%);max-width:400px;min-width:0}.modal-overlay:has(.form-group-checkbox) .form-section .select-wrapper select{display:block;width:100%;min-width:0;height:46px;box-sizing:border-box;padding:0 40px 0 14px;color:#334155;font-size:14px;font-weight:700;line-height:46px;background:rgba(255,255,255,.8);border:1px solid rgba(203,213,225,.82);border-radius:12px;cursor:pointer}.modal-overlay:has(.form-group-checkbox) .form-section .select-wrapper::after{right:15px;border-top-color:#94a3b8;transform-origin:center;transition:transform .2s ease,border-color .2s ease}.modal-overlay:has(.form-group-checkbox) .form-section .select-wrapper select:focus{border-color:#34d399;box-shadow:0 0 0 3px rgba(16,185,129,.12)}.modal-overlay:has(.form-group-checkbox) .form-section .select-wrapper.is-custom-select-open::after{transform:translateY(-50%) rotate(180deg);border-top-color:#10b981}.modal-overlay:has(.form-group-checkbox) .form-section .select-wrapper select.site-custom-select-native{cursor:pointer;user-select:none}.site-custom-select-menu{position:fixed;z-index:20050;display:flex;flex-direction:column;gap:3px;max-height:min(260px,calc(100vh - 28px));padding:7px;overflow-y:auto;background:rgba(255,255,255,.94);border:1px solid rgba(226,232,240,.92);border-radius:16px;box-shadow:0 18px 44px rgba(15,23,42,.2),0 2px 8px rgba(15,23,42,.08);backdrop-filter:blur(22px) saturate(135%);-webkit-backdrop-filter:blur(22px) saturate(135%);opacity:0;transform:translateY(-5px) scale(.98);transform-origin:top center;pointer-events:none;transition:opacity .18s ease,transform .2s cubic-bezier(.16,1,.3,1)}.site-custom-select-menu.is-visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.site-custom-select-option{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:40px;box-sizing:border-box;padding:8px 12px;color:#475569;font:inherit;font-size:14px;font-weight:700;line-height:1.2;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:10px;cursor:pointer;transition:color .16s ease,background .16s ease,transform .16s ease}.site-custom-select-option:focus-visible,.site-custom-select-option:hover{color:#047857;background:rgba(209,250,229,.76);outline:0}.site-custom-select-option.is-selected{color:#059669;background:rgba(236,253,245,.94)}.site-custom-select-option.is-selected::after{content:'✓';margin-left:12px;color:#10b981;font-size:15px;font-weight:900}body.site-dark-mode .site-custom-select-menu{background:rgba(39,39,42,.96);border-color:rgba(255,255,255,.14);box-shadow:0 20px 50px rgba(0,0,0,.48),0 2px 10px rgba(0,0,0,.24)}body.site-dark-mode .site-custom-select-option{color:#d4d4d8}body.site-dark-mode .site-custom-select-option:focus-visible,body.site-dark-mode .site-custom-select-option:hover{color:#a7f3d0;background:rgba(16,185,129,.18)}body.site-dark-mode .site-custom-select-option.is-selected{color:#6ee7b7;background:rgba(16,185,129,.22)}body.site-dark-mode .site-custom-select-option.is-selected::after{color:#6ee7b7}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-section .select-wrapper select{color:#f4f4f5;background:rgba(63,63,70,.72);border-color:rgba(255,255,255,.13)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-section .select-wrapper::after{border-top-color:#a1a1aa}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-section .select-wrapper select:focus{border-color:rgba(110,231,183,.72);box-shadow:0 0 0 3px rgba(16,185,129,.16)}.modal-overlay:has(.form-group-checkbox) .image-uploader{padding:8px}.modal-overlay:has(.form-group-checkbox) .upload-placeholder{width:112px;height:112px;border:2px dashed #cbd5e1;border-radius:16px;background:rgba(248,250,252,.72);transition:border-color .2s ease,background .2s ease,color .2s ease}.modal-overlay:has(.form-group-checkbox) .upload-placeholder:hover{color:#10b981;border-color:#34d399;background:rgba(236,253,245,.65)}.modal-overlay:has(.form-group-checkbox) .preview-item{width:112px;height:112px}.modal-overlay:has(.form-group-checkbox) .music-subtype-chooser{gap:4px;max-width:210px;margin:0 0 12px;padding:4px;border-radius:12px;background:rgba(226,232,240,.6)}.modal-overlay:has(.form-group-checkbox) .music-subtype-chooser .filter-btn{flex:1;padding:7px 10px;font-size:12px;border:0;border-radius:9px}.modal-overlay:has(.form-group-checkbox) .music-subtype-chooser .filter-btn.active{color:#1e293b;background:#fff;box-shadow:0 2px 7px rgba(0,0,0,.06)}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox{position:relative;margin:0;padding:13px 12px;border:1px solid rgba(203,213,225,.6);background:rgba(248,250,252,.72)}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox:has(+ .form-group-checkbox){border-radius:16px 16px 0 0}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox+.form-group-checkbox{border-top:0;border-radius:0 0 16px 16px}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox input{position:absolute;width:1px;height:1px;opacity:0}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox label{position:relative;display:block;width:100%;margin:0;padding-right:54px;box-sizing:border-box;color:#475569;font-size:14px;font-weight:700;cursor:pointer}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox label::before{position:absolute;top:50%;right:0;width:42px;height:24px;content:'';background:#e2e8f0;transform:translateY(-50%);transition:background .25s ease}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox label::after{position:absolute;top:50%;right:20px;width:20px;height:20px;content:'';background:#fff;border-radius:50%;box-shadow:0 1px 4px rgba(15,23,42,.16);transform:translate(0,-50%);transition:transform .25s ease}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox input:checked+label::after{transform:translate(18px,-50%)}.modal-overlay:has(.form-group-checkbox) .notification-options{margin:18px 0 4px;padding:0;border:0}.modal-overlay:has(.form-group-checkbox) .notification-options h4{margin:0 0 10px 4px;color:#94a3b8;font-size:11px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}.modal-overlay:has(.form-group-checkbox) .option-group{gap:8px;margin:0}.modal-overlay:has(.form-group-checkbox) .option-group label{position:relative;flex:1;margin:0;padding:10px 6px;color:#64748b;font-size:12px;font-weight:700;text-align:center;border:1px solid #e2e8f0;border-radius:12px;background:#fff;cursor:pointer;transition:all .2s ease}.modal-overlay:has(.form-group-checkbox) .option-group input{position:absolute;opacity:0;pointer-events:none}.modal-overlay:has(.form-group-checkbox) .option-group label:has(input:checked){color:#059669;border-color:#a7f3d0;background:#ecfdf5;box-shadow:0 2px 12px rgba(16,185,129,.15)}.modal-overlay:has(.form-group-checkbox) .action-btn{position:sticky;bottom:0;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin:22px 0 0;padding:14px;color:#fff;font-size:15px;font-weight:800;letter-spacing:2px;border:0;border-radius:14px;background:#10b981;box-shadow:0 8px 20px rgba(16,185,129,.25);transition:background .2s ease,box-shadow .2s ease,transform .2s ease}.modal-overlay:has(.form-group-checkbox) .action-btn::before{content:'➤';font-size:14px}.modal-overlay:has(.form-group-checkbox) .action-btn:hover{background:#34d399;box-shadow:0 12px 25px rgba(16,185,129,.35);transform:translateY(-2px)}.modal-overlay:has(.form-group-checkbox) .action-btn:active{transform:translateY(0) scale(.98)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox){background:rgba(2,6,23,.64)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .modal-content{color:#e4e4e7;background:rgba(24,24,27,.94);border-color:rgba(255,255,255,.1);box-shadow:0 26px 66px rgba(0,0,0,.48)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .modal-content>h2{color:#f4f4f5}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .modal-content>.close-btn{color:#a1a1aa}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .modal-content>.close-btn:hover{color:#f4f4f5;background:rgba(255,255,255,.08)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .post-modal-tabs{background:rgba(39,39,42,.72)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .post-modal-tabs button{color:#a1a1aa}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .post-modal-tabs button.active{color:#f4f4f5;background:#3f3f46;box-shadow:0 2px 12px rgba(0,0,0,.24)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .site-post-tab-icon{color:#71717a}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .post-modal-tabs button.active .site-post-tab-icon{color:#6ee7b7}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-group-checkbox,body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-group.full-width,body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-section{border-color:rgba(255,255,255,.1);background:rgba(39,39,42,.58)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-group.full-width:focus-within{background:rgba(63,63,70,.72);border-color:#34d399}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-section .form-group{border-bottom-color:rgba(255,255,255,.08)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-group-checkbox label,body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-section .form-group label{color:#cbd5e1}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-group.full-width textarea,body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-section input,body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-section select{color:#f4f4f5}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .notification-options h4{color:#71717a}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .option-group label{color:#a1a1aa;border-color:rgba(255,255,255,.1);background:rgba(39,39,42,.68)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .option-group label:has(input:checked){color:#6ee7b7;border-color:rgba(52,211,153,.42);background:rgba(16,185,129,.12)}.modal-overlay:has(.form-group-checkbox) .site-file-picker{display:inline-flex;align-items:center;min-width:0;flex:1;gap:10px;padding:7px 0}.modal-overlay:has(.form-group-checkbox) .site-file-trigger{flex:0 0 auto;padding:7px 14px;color:#475569;font-size:12px;font-weight:800;white-space:nowrap;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 2px 7px rgba(15,23,42,.08);cursor:pointer;transition:color .2s ease,background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}.modal-overlay:has(.form-group-checkbox) .site-file-trigger:hover{color:#059669;background:#f8fffc;border-color:#a7f3d0;box-shadow:0 4px 12px rgba(16,185,129,.12)}.modal-overlay:has(.form-group-checkbox) .site-file-trigger:active{transform:scale(.97)}.modal-overlay:has(.form-group-checkbox) .site-file-status{min-width:0;overflow:hidden;color:#94a3b8;font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.modal-overlay:has(.form-group-checkbox) .site-file-input-native{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .site-file-trigger{color:#d4d4d8;background:rgba(63,63,70,.74);border-color:rgba(255,255,255,.12);box-shadow:0 3px 9px rgba(0,0,0,.2)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .site-file-trigger:hover{color:#6ee7b7;background:rgba(52,211,153,.12);border-color:rgba(52,211,153,.38)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .site-file-status{color:#a1a1aa}.modal-overlay:has(.form-group-checkbox) .site-user-picker{display:flex;flex-direction:column;gap:8px;width:100%;padding:8px 0 4px}.modal-overlay:has(.form-group-checkbox) .site-user-picker-summary{padding:0 2px;color:#64748b;font-size:12px;font-weight:700}.modal-overlay:has(.form-group-checkbox) .site-user-picker-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px;max-height:190px;padding:2px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.55) transparent}.modal-overlay:has(.form-group-checkbox) .site-user-option{display:flex;align-items:center;width:100%;min-width:0;gap:8px;padding:9px 10px;color:#475569;font-size:13px;font-weight:700;font-family:inherit;line-height:1.25;text-align:left;appearance:none;background:rgba(255,255,255,.7);border:1px solid rgba(203,213,225,.72);border-radius:12px;cursor:pointer;transition:color .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}.modal-overlay:has(.form-group-checkbox) .site-user-option:hover{color:#059669;border-color:#a7f3d0;background:#f8fffc;transform:translateY(-1px)}.modal-overlay:has(.form-group-checkbox) .site-user-option.is-selected{color:#047857;background:rgba(236,253,245,.9);border-color:#6ee7b7;box-shadow:0 4px 12px rgba(16,185,129,.12)}.modal-overlay:has(.form-group-checkbox) .site-user-option input{width:16px;height:16px;flex:0 0 16px;margin:0;accent-color:#10b981}.modal-overlay:has(.form-group-checkbox) .site-user-option-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-overlay:has(.form-group-checkbox) .site-user-select-native{position:absolute!important;width:1px!important;height:1px!important;min-width:0!important;min-height:0!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}.modal-overlay:has(.form-group-checkbox) .user-select-wrapper{display:flex;flex:1 1 100%;flex-direction:column;min-width:0;width:100%}.modal-overlay:has(.form-group-checkbox) .user-select-info{display:none}.modal-overlay:has(.form-group-checkbox) .site-user-multi-trigger{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:52px;box-sizing:border-box;margin-top:8px;padding:0 42px 0 14px;color:#334155;font:inherit;font-size:14px;font-weight:700;line-height:1.35;text-align:left;appearance:none;-webkit-appearance:none;background:rgba(255,255,255,.8);border:1px solid rgba(203,213,225,.82);border-radius:15px;box-shadow:0 2px 8px rgba(15,23,42,.04);cursor:pointer;transition:color .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}.modal-overlay:has(.form-group-checkbox) .site-user-multi-trigger:focus-visible,.modal-overlay:has(.form-group-checkbox) .site-user-multi-trigger:hover{color:#047857;border-color:#6ee7b7;outline:0;box-shadow:0 0 0 3px rgba(16,185,129,.12)}.modal-overlay:has(.form-group-checkbox) .site-user-multi-trigger.is-open{color:#047857;border-color:#34d399;box-shadow:0 0 0 4px rgba(16,185,129,.12)}.site-user-multi-trigger-summary{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-user-multi-trigger-summary.is-placeholder{color:#94a3b8;font-weight:600}.site-user-multi-trigger-arrow{position:absolute;top:50%;right:17px;width:9px;height:9px;box-sizing:border-box;border-top:2px solid #94a3b8;border-right:2px solid #94a3b8;transform:translateY(-65%) rotate(135deg);transition:transform .2s ease,border-color .2s ease}.site-user-multi-trigger.is-open .site-user-multi-trigger-arrow{border-color:#10b981;transform:translateY(-25%) rotate(-45deg)}.site-user-multi-menu{position:fixed;z-index:20050;display:flex;flex-direction:column;gap:5px;max-height:min(248px,calc(100vh - 28px));padding:7px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(16,185,129,.42) transparent;background:rgba(255,255,255,.96);border:1px solid rgba(167,243,208,.82);border-radius:17px;box-shadow:0 0 0 3px rgba(16,185,129,.08),0 18px 44px rgba(15,23,42,.2),0 2px 8px rgba(15,23,42,.08);backdrop-filter:blur(22px) saturate(135%);-webkit-backdrop-filter:blur(22px) saturate(135%);opacity:0;transform:translateY(-5px) scale(.98);transform-origin:top center;pointer-events:none;transition:opacity .18s ease,transform .2s cubic-bezier(.16,1,.3,1)}.site-user-multi-menu::-webkit-scrollbar{width:6px}.site-user-multi-menu::-webkit-scrollbar-track{background:0 0}.site-user-multi-menu::-webkit-scrollbar-thumb{background:rgba(16,185,129,.42);border-radius:999px}.site-user-multi-menu::-webkit-scrollbar-thumb:hover{background:rgba(5,150,105,.62)}.site-user-multi-menu.is-visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.site-user-multi-option{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:40px;box-sizing:border-box;padding:8px 10px;color:#475569;font:inherit;font-size:14px;font-weight:700;line-height:1.2;text-align:left;appearance:none;-webkit-appearance:none;background:0 0;border:0;border-radius:11px;cursor:pointer;transition:color .16s ease,background .16s ease}.site-user-multi-option:focus-visible,.site-user-multi-option:hover{color:#047857;background:rgba(236,253,245,.82);outline:0}.site-user-multi-option:disabled{color:#94a3b8;cursor:not-allowed;opacity:.58}.site-user-multi-option.is-selected{color:#059669;background:rgba(236,253,245,.94)}.site-user-multi-option-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-user-multi-option-check{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 20px;margin-left:12px;color:transparent;font-size:13px;font-weight:900;background:rgba(148,163,184,.12);border:1px solid rgba(148,163,184,.4);border-radius:6px;transition:color .16s ease,background .16s ease,border-color .16s ease,transform .16s ease}.site-user-multi-option.is-selected .site-user-multi-option-check{color:#fff;background:#10b981;border-color:#10b981;box-shadow:0 3px 9px rgba(16,185,129,.25)}.site-user-multi-empty{padding:12px 10px;color:#94a3b8;font-size:13px;text-align:center}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .site-user-picker-summary{color:#a1a1aa}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .site-user-picker-list{scrollbar-color:#52525b transparent}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .site-user-option{color:#d4d4d8;background:rgba(39,39,42,.72);border-color:rgba(255,255,255,.11)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .site-user-option:hover{color:#a7f3d0;background:rgba(52,211,153,.1);border-color:rgba(110,231,183,.38)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .site-user-option.is-selected{color:#a7f3d0;background:rgba(16,185,129,.16);border-color:rgba(110,231,183,.54);box-shadow:0 5px 14px rgba(0,0,0,.2)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .site-user-multi-trigger{color:#f4f4f5;background:rgba(39,39,42,.82);border-color:rgba(255,255,255,.14)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .site-user-multi-trigger.is-open,body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .site-user-multi-trigger:focus-visible,body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .site-user-multi-trigger:hover{color:#a7f3d0;border-color:rgba(110,231,183,.72);box-shadow:0 0 0 4px rgba(16,185,129,.14)}body.site-dark-mode .site-user-multi-trigger-summary.is-placeholder{color:#71717a}body.site-dark-mode .site-user-multi-trigger-arrow{border-color:#a1a1aa}body.site-dark-mode .site-user-multi-trigger.is-open .site-user-multi-trigger-arrow{border-color:#6ee7b7}body.site-dark-mode .site-user-multi-menu{background:rgba(39,39,42,.97);border-color:rgba(110,231,183,.3);box-shadow:0 0 0 3px rgba(16,185,129,.1),0 20px 50px rgba(0,0,0,.48),0 2px 10px rgba(0,0,0,.24)}body.site-dark-mode .site-user-multi-menu{scrollbar-color:rgba(110,231,183,.42) transparent}body.site-dark-mode .site-user-multi-menu::-webkit-scrollbar-thumb{background:rgba(110,231,183,.42)}body.site-dark-mode .site-user-multi-menu::-webkit-scrollbar-thumb:hover{background:rgba(110,231,183,.62)}body.site-dark-mode .site-user-multi-option{color:#d4d4d8}body.site-dark-mode .site-user-multi-option.is-selected,body.site-dark-mode .site-user-multi-option:focus-visible,body.site-dark-mode .site-user-multi-option:hover{color:#a7f3d0;background:rgba(16,185,129,.18)}body.site-dark-mode .site-user-multi-option-check{background:rgba(113,113,122,.22);border-color:rgba(255,255,255,.16)}body.site-dark-mode .site-user-multi-option.is-selected .site-user-multi-option-check{color:#052e1b;background:#6ee7b7;border-color:#6ee7b7}body.site-dark-mode .site-user-multi-option:disabled{color:#71717a}body.site-dark-mode .site-user-multi-empty{color:#71717a}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .upload-placeholder{color:#6ee7b7;background:rgba(39,39,42,.78);border-color:rgba(110,231,183,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .upload-placeholder .icon-svg{color:#6ee7b7;stroke:currentColor;filter:drop-shadow(0 2px 6px rgba(16,185,129,.26))}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox label::before{display:flex;align-items:center;justify-content:flex-end;padding:0 5px 0 21px;box-sizing:border-box;content:'关';color:#64748b;font-size:9px;font-weight:800;line-height:1;letter-spacing:0}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox label::after{z-index:1}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox input:checked+label::before{justify-content:flex-start;padding-right:21px;padding-left:5px;content:'开';color:#fff;background:#10b981}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-group-checkbox label::before{color:#d4d4d8;background:#52525b}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-group-checkbox input:checked+label::before{color:#ecfdf5;background:#10b981}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox{overflow:visible}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox label::before{position:absolute!important;right:0!important;display:flex!important;width:48px!important;height:28px!important;min-width:48px!important;max-width:48px!important;box-sizing:border-box!important;overflow:hidden;border-radius:999px;transform:translateY(-50%)!important}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox label::after{position:absolute!important;right:24px!important;width:22px!important;height:22px!important;min-width:22px!important;max-width:22px!important;box-sizing:border-box!important;transform:translate(0,-50%)!important}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox input:checked+label::after{transform:translate(22px,-50%)!important}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox label::before{padding-left:5px!important;padding-right:23px!important}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox input:checked+label::before{padding-left:7px!important;padding-right:21px!important}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox{position:relative!important;display:flex;align-items:center;min-height:50px;box-sizing:border-box}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox label{padding-right:62px}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox label::before{right:12px!important;top:50%!important}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox label::after{right:36px!important;top:50%!important}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox label::after,.modal-overlay:has(.form-group-checkbox) .form-group-checkbox label::before{content:none!important;display:none!important}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox label{position:static!important;flex:1 1 auto;width:auto;min-width:0;padding-right:0!important}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox input.site-toggle-input{position:relative!important;order:2;display:block;width:48px!important;height:28px!important;min-width:48px!important;max-width:48px!important;flex:0 0 48px;margin:0 0 0 auto!important;padding:0!important;opacity:1!important;appearance:none;-webkit-appearance:none;border:0;border-radius:999px;outline:0;cursor:pointer;background:radial-gradient(circle at 14px 50%,#fff 0 10px,transparent 10.5px),#cbd5e1;box-shadow:inset 0 0 0 1px rgba(15,23,42,.1),0 2px 6px rgba(15,23,42,.1);transition:background .22s ease,box-shadow .22s ease,transform .18s ease}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox input.site-toggle-input:checked{background:radial-gradient(circle at 34px 50%,#fff 0 10px,transparent 10.5px),#10b981;box-shadow:inset 0 0 0 1px rgba(6,95,70,.16),0 3px 10px rgba(16,185,129,.24)}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox input.site-toggle-input:active{transform:scale(.95)}.modal-overlay:has(.form-group-checkbox) .site-toggle-state{position:absolute;top:50%!important;right:12px!important;z-index:1;display:flex;align-items:center;justify-content:flex-end;width:48px;height:28px;box-sizing:border-box;padding-right:7px;color:#475569;font-size:9px;font-weight:900;line-height:28px;text-align:center;pointer-events:none;transform:translateY(-50%)!important}.modal-overlay:has(.form-group-checkbox) .form-group-checkbox.is-on .site-toggle-state{justify-content:flex-start;padding-right:0;padding-left:7px;color:#ecfdf5}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-group-checkbox input.site-toggle-input{background:radial-gradient(circle at 14px 50%,#f4f4f5 0 10px,transparent 10.5px),#52525b;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 2px 7px rgba(0,0,0,.25)}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-group-checkbox input.site-toggle-input:checked{background:radial-gradient(circle at 34px 50%,#fff 0 10px,transparent 10.5px),#10b981}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .site-toggle-state{color:#d4d4d8}body.site-dark-mode .modal-overlay:has(.form-group-checkbox) .form-group-checkbox.is-on .site-toggle-state{color:#ecfdf5}.modal-overlay:has(.site-login-modal){padding:16px;background:rgba(15,23,42,.4);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);animation:site-login-overlay-in .28s ease-out}.site-login-modal{position:relative;width:min(400px,calc(100vw - 32px));max-width:400px;overflow:hidden;padding:0!important;color:#334155;background-color:rgba(255,255,255,.95)!important;background-image:radial-gradient(circle at 8% 0,rgba(59,130,246,.12),transparent 34%),radial-gradient(circle at 88% 8%,rgba(168,85,247,.12),transparent 36%),radial-gradient(circle at 50% 0,rgba(16,185,129,.08),transparent 44%);border:1px solid rgba(15,23,42,.06);border-radius:32px;box-shadow:0 24px 60px -12px rgba(0,0,0,.2);backdrop-filter:blur(28px) saturate(135%);-webkit-backdrop-filter:blur(28px) saturate(135%);animation:site-login-modal-in .34s cubic-bezier(.16,1,.3,1)}@keyframes site-login-overlay-in{from{opacity:0}to{opacity:1}}@keyframes site-login-modal-in{from{opacity:0;transform:translateY(15px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.site-login-modal>.close-btn{top:18px;right:18px;z-index:3;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;color:#94a3b8;font-size:25px;line-height:1;border-radius:50%;transition:color .2s ease,background .2s ease,transform .2s ease}.site-login-modal>.close-btn:hover{color:#334155;background:rgba(226,232,240,.72);transform:rotate(90deg)}.site-login-modal>h2{position:relative;z-index:1;margin:0;padding:118px 32px 0;color:#0f172a;font-size:0;line-height:1.2;text-align:center}.site-login-modal>h2::before{display:block;margin:0 auto 22px;width:64px;height:64px;content:'飞';color:#fff;font-size:26px;font-weight:900;line-height:64px;text-align:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:16px;box-shadow:0 10px 24px rgba(139,92,246,.22)}.site-login-modal>h2::after{display:block;margin-top:10px;color:#64748b;content:'登录 飞行者游博，发现更多精彩';font-size:13px;font-weight:600;letter-spacing:.15px}.site-login-modal>h2{color:transparent}.site-login-modal>h2::first-line{color:transparent}.site-login-modal form{width:auto;margin:30px 32px 32px}.site-login-modal .site-login-field{position:relative;display:block;margin:0 0 14px}.site-login-modal .site-login-field input{width:100%;box-sizing:border-box;min-height:50px;padding:14px 16px 14px 44px;color:#1e293b;font-size:14px;font-weight:600;background:rgba(248,250,252,.86);border:1px solid rgba(203,213,225,.8);border-radius:16px;box-shadow:0 2px 8px rgba(15,23,42,.04);transition:background .25s ease,border-color .25s ease,box-shadow .25s ease}.site-login-modal .site-login-field input::placeholder{color:#94a3b8;font-weight:500}.site-login-modal .site-login-field input:focus{outline:0;background:#fff;border-color:#34d399;box-shadow:0 0 0 3px rgba(16,185,129,.1),0 4px 12px rgba(15,23,42,.06)}.site-login-field-icon{position:absolute;top:50%;left:15px;z-index:1;display:inline-flex;width:18px;height:18px;color:#94a3b8;pointer-events:none;transform:translateY(-50%);transition:color .2s ease}.site-login-field-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.site-login-field:focus-within .site-login-field-icon{color:#10b981}.site-login-modal .action-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:54px;margin-top:28px;padding:14px 18px;color:#fff;font-size:15px;font-weight:800;letter-spacing:2px;background:#0f172a;border:0;border-radius:16px;box-shadow:0 8px 20px rgba(15,23,42,.2);transition:background .2s ease,box-shadow .2s ease,transform .2s ease}.site-login-modal .action-btn:hover{background:#1e293b;box-shadow:0 12px 25px rgba(15,23,42,.3);transform:translateY(-2px)}.site-login-modal .action-btn:active{transform:translateY(0) scale(.98)}.site-login-modal .action-btn::after{content:'→';margin-left:8px;color:rgba(255,255,255,.7);font-size:18px;line-height:1;transition:color .2s ease,transform .2s ease}.site-login-modal .action-btn:hover::after{color:#fff;transform:translateX(3px)}body.site-dark-mode .modal-overlay:has(.site-login-modal){background:rgba(2,6,23,.68)}body.site-dark-mode .site-login-modal{color:#e4e4e7;background-color:rgba(24,24,27,.94)!important;background-image:radial-gradient(circle at 8% 0,rgba(59,130,246,.16),transparent 34%),radial-gradient(circle at 88% 8%,rgba(168,85,247,.14),transparent 36%),radial-gradient(circle at 50% 0,rgba(16,185,129,.08),transparent 44%);border-color:rgba(255,255,255,.1);box-shadow:0 26px 66px rgba(0,0,0,.48)}body.site-dark-mode .site-login-modal>.close-btn{color:#a1a1aa}body.site-dark-mode .site-login-modal>.close-btn:hover{color:#f4f4f5;background:rgba(255,255,255,.08)}body.site-dark-mode .site-login-modal>h2{color:#f4f4f5}body.site-dark-mode .site-login-modal>h2::after{color:#a1a1aa}body.site-dark-mode .site-login-modal .site-login-field input{color:#f4f4f5;background:rgba(39,39,42,.72);border-color:rgba(255,255,255,.11)}body.site-dark-mode .site-login-modal .site-login-field input::placeholder{color:#71717a}body.site-dark-mode .site-login-modal .site-login-field input:focus{background:rgba(63,63,70,.84);border-color:#34d399}body.site-dark-mode .site-login-field-icon{color:#71717a}body.site-dark-mode .site-login-field:focus-within .site-login-field-icon{color:#6ee7b7}body.site-dark-mode .site-login-modal .action-btn{color:#18181b;background:#f4f4f5;box-shadow:0 8px 20px rgba(0,0,0,.3)}body.site-dark-mode .site-login-modal .action-btn:hover{color:#09090b;background:#fff;box-shadow:0 12px 25px rgba(0,0,0,.42)}body.site-dark-mode .site-login-modal .action-btn::after{color:rgba(24,24,27,.62)}body.site-dark-mode .site-login-modal .action-btn:hover::after{color:#09090b}@media (max-width:420px){.site-login-modal>h2{padding-top:96px}.site-login-modal form{margin-left:22px;margin-right:22px}}.site-login-modal>h2{padding-top:38px;font-size:24px}.site-login-modal>h2 .site-login-welcome{display:block;color:#0f172a;font-size:24px;font-weight:800;letter-spacing:-.3px}.site-login-modal.has-home-avatar>h2{padding-top:0}.site-login-modal.has-home-avatar>h2::before{display:none}.site-login-brand-avatar{display:block;width:64px;height:64px;margin:38px auto 22px;object-fit:cover;border:2px solid rgba(255,255,255,.9);border-radius:50%;box-shadow:0 10px 24px rgba(15,23,42,.18)}body.site-dark-mode .site-login-modal>h2 .site-login-welcome{color:#f4f4f5}body.site-dark-mode .site-login-brand-avatar{border-color:rgba(255,255,255,.18);box-shadow:0 10px 26px rgba(0,0,0,.4)}@media (max-width:420px){.site-login-modal>h2{padding-top:28px}.site-login-modal.has-home-avatar>h2{padding-top:0}}.modal-overlay:has(.admin-panel-modal){padding:24px;background:rgba(15,23,42,.46);backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%)}.modal-overlay:has(.admin-panel-modal)>.modal-content.admin-panel-modal{display:flex;flex-direction:column;width:min(1280px,calc(100vw - 48px))!important;max-width:1280px!important;max-height:88vh;overflow:hidden;padding:0;color:#334155;background:rgba(255,255,255,.95);border:1px solid rgba(255,255,255,.82);border-radius:28px;box-shadow:0 28px 70px -24px rgba(15,23,42,.34);backdrop-filter:blur(28px) saturate(135%);-webkit-backdrop-filter:blur(28px) saturate(135%)}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal>h2{flex:0 0 auto;margin:0;padding:26px 32px 22px;color:#0f172a;font-size:24px;font-weight:800;letter-spacing:-.4px;text-align:left;border-bottom:1px solid rgba(226,232,240,.78)}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal>.close-btn{top:18px;right:22px;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;color:#94a3b8;font-size:27px;line-height:1;border-radius:50%;transition:color .2s ease,background .2s ease,transform .2s ease}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal>.close-btn:hover{color:#475569;background:rgba(226,232,240,.72);transform:rotate(8deg)}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal>.add-user-btn{flex:0 0 auto;width:calc(100% - 56px);min-height:54px;margin:24px 28px 16px;padding:14px 20px;color:#fff;font-size:16px;font-weight:800;letter-spacing:.2px;background:linear-gradient(135deg,#10b981,#34d399);border:0;border-radius:16px;box-shadow:0 12px 24px rgba(16,185,129,.2);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal>.add-user-btn::before{content:'＋';margin-right:8px;font-size:20px;font-weight:500;line-height:1}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal>.add-user-btn:hover{filter:brightness(.98);box-shadow:0 16px 30px rgba(16,185,129,.28);transform:translateY(-2px)}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal>.add-user-btn:active{transform:translateY(0) scale(.985)}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal .add-user-form{flex:0 0 auto;margin:0 28px 18px;padding:18px;background:rgba(248,250,252,.82);border:1px solid rgba(226,232,240,.88);border-radius:18px}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal .add-user-form .form-group{display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;align-items:center;margin-bottom:12px}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal .add-user-form .form-group label{width:auto;margin:0;color:#64748b;font-size:13px;font-weight:700}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal .add-user-form input[type=password],.modal-overlay:has(.admin-panel-modal) .admin-panel-modal .add-user-form input[type=text]{min-width:0;width:100%;padding:11px 13px;color:#334155;background:rgba(255,255,255,.88);border:1px solid #e2e8f0;border-radius:12px;box-sizing:border-box}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal .add-user-form .form-group-checkbox{display:flex;gap:8px;margin:4px 0 14px}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal .add-user-form .form-group-checkbox label{color:#64748b}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal .add-user-form>.action-btn{width:100%;margin-top:4px;border-radius:12px;background:#0f172a}.modal-overlay:has(.admin-panel-modal) .admin-panel-table-wrapper{flex:1 1 auto;min-height:0;margin:0 28px 28px;max-height:none;overflow:auto;border:1px solid #e2e8f0;border-radius:18px;background:rgba(255,255,255,.66);box-shadow:0 8px 22px rgba(15,23,42,.05)}.modal-overlay:has(.admin-panel-modal) .admin-panel-table{min-width:1080px;border-collapse:separate;border-spacing:0;color:#475569;font-size:13px}.modal-overlay:has(.admin-panel-modal) .admin-panel-table th{position:sticky;top:0;z-index:1;padding:13px 14px;color:#334155;font-size:12px;font-weight:800;letter-spacing:.2px;background:rgba(248,250,252,.96);border:0;border-right:1px solid rgba(226,232,240,.76);border-bottom:1px solid #e2e8f0}.modal-overlay:has(.admin-panel-modal) .admin-panel-table th:last-child{border-right:0}.modal-overlay:has(.admin-panel-modal) .admin-panel-table td{padding:13px 14px;border:0;border-bottom:1px solid rgba(226,232,240,.7);vertical-align:middle}.modal-overlay:has(.admin-panel-modal) .admin-panel-table .cell-break{min-width:180px;max-width:220px;overflow:hidden;white-space:nowrap;word-break:normal;text-overflow:ellipsis}.modal-overlay:has(.admin-panel-modal) .admin-panel-table tbody tr:last-child td{border-bottom:0}.modal-overlay:has(.admin-panel-modal) .admin-panel-table tbody tr:hover td{background:rgba(236,253,245,.62)}.modal-overlay:has(.admin-panel-modal) .admin-panel-table .user-avatar{width:36px;height:36px;margin-right:8px;border:2px solid #fff;border-radius:50%;box-shadow:0 3px 8px rgba(15,23,42,.12)}.modal-overlay:has(.admin-panel-modal) .admin-panel-table td.is-admin-yes{display:table-cell;vertical-align:middle;padding:13px 14px;color:transparent;font-size:0;background:0 0;border:0}.modal-overlay:has(.admin-panel-modal) .admin-panel-table td.is-admin-yes::after{content:'管理员';display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;color:#e11d48;font-size:13px;font-weight:800;line-height:1.2;background:#fff1f2;border:1px solid #fecdd3;border-radius:8px}.modal-overlay:has(.admin-panel-modal) .admin-panel-table .delete-btn{min-width:48px;padding:8px 10px;color:#e11d48;font-weight:800;background:#fff1f2;border:1px solid #fecdd3;border-radius:11px;transition:color .2s ease,background .2s ease,transform .2s ease}.modal-overlay:has(.admin-panel-modal) .admin-panel-table .delete-btn:hover{color:#fff;background:#f43f5e;transform:translateY(-1px)}body.site-dark-mode .modal-overlay:has(.admin-panel-modal){background:rgba(2,6,23,.68)}body.site-dark-mode .modal-overlay:has(.admin-panel-modal)>.modal-content.admin-panel-modal{color:#e4e4e7;background-color:rgba(24,24,27,.96);background-image:radial-gradient(circle at 10% -10%,rgba(16,185,129,.1),transparent 32%),radial-gradient(circle at 92% 0,rgba(59,130,246,.08),transparent 30%);border-color:rgba(255,255,255,.1);box-shadow:0 28px 70px -24px rgba(0,0,0,.55)}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-modal>h2{color:#f4f4f5;border-bottom-color:rgba(255,255,255,.08)}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-modal>.close-btn{color:#a1a1aa}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-modal>.close-btn:hover{color:#f4f4f5;background:rgba(255,255,255,.08)}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-modal .add-user-form{background:rgba(39,39,42,.62);border-color:rgba(255,255,255,.1)}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-modal .add-user-form .form-group label{color:#a1a1aa}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-modal .add-user-form input{color:#f4f4f5;background:rgba(24,24,27,.72);border-color:rgba(255,255,255,.12)}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table-wrapper{border-color:rgba(255,255,255,.09);background:#18181b;box-shadow:0 12px 28px rgba(0,0,0,.22);scrollbar-color:#52525b transparent}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table-wrapper::-webkit-scrollbar{width:9px;height:9px}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table-wrapper::-webkit-scrollbar-track{background:0 0}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table-wrapper::-webkit-scrollbar-thumb{background:#52525b;border:2px solid #18181b;border-radius:999px}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table{color:#d4d4d8}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table th{color:#e4e4e7;background:rgba(39,39,42,.98);border-right-color:rgba(255,255,255,.07);border-bottom-color:rgba(255,255,255,.1)}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table td{color:#d4d4d8;border-bottom-color:rgba(255,255,255,.065);background:0 0}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table tbody tr,body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table tbody tr:nth-child(odd){background:rgba(24,24,27,.9)!important}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table tbody tr:nth-child(2n){background:rgba(32,32,36,.94)!important}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table tbody tr:hover{background:rgba(16,185,129,.1)!important}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table tbody tr:hover td{background:0 0}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table .user-avatar{border-color:rgba(255,255,255,.14)}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table td.is-admin-yes{color:transparent;background:0 0;border-color:transparent}body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table .delete-btn,body.site-dark-mode .modal-overlay:has(.admin-panel-modal) .admin-panel-table td.is-admin-yes::after{color:#fda4af;background:rgba(244,63,94,.12);border-color:rgba(251,113,133,.26)}@media (max-width:700px){.modal-overlay:has(.admin-panel-modal){padding:10px}.modal-overlay:has(.admin-panel-modal)>.modal-content.admin-panel-modal{width:calc(100vw - 20px)!important;max-height:92vh;border-radius:22px}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal>h2{padding:22px 20px 18px;font-size:21px}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal>.close-btn{top:14px;right:14px}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal>.add-user-btn{width:calc(100% - 32px);margin:18px 16px 14px}.modal-overlay:has(.admin-panel-modal) .admin-panel-modal .add-user-form{margin-left:16px;margin-right:16px}.modal-overlay:has(.admin-panel-modal) .admin-panel-table-wrapper{margin-left:16px;margin-right:16px;margin-bottom:16px}}.post-item.site-music-post{width:100%;padding:14px!important;overflow:visible;box-sizing:border-box;background:rgba(255,255,255,.82);border:1px solid rgba(226,232,240,.88);border-radius:20px;box-shadow:0 5px 18px rgba(15,23,42,.06);backdrop-filter:blur(20px) saturate(130%);-webkit-backdrop-filter:blur(20px) saturate(130%);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease,background .3s ease}.post-item.site-music-post:hover{border-color:rgba(110,231,183,.78);box-shadow:0 18px 38px rgba(16,185,129,.11);transform:translateY(-2px)}.site-music-post .post-content-wrapper{width:100%;min-width:0}.site-music-post .share-card.site-music-playlist-card{display:flex;align-items:center;width:100%;min-height:64px;box-sizing:border-box;gap:16px;margin:0;padding:0;color:#0f172a;background:0 0!important;border:0;border-radius:0;box-shadow:none;cursor:pointer}.site-music-post .share-card.site-music-playlist-card .share-cover{display:block;width:64px;height:64px;flex:0 0 64px;margin:0;object-fit:cover;background:#e2e8f0;border:1px solid rgba(226,232,240,.92);border-radius:14px;box-shadow:0 4px 12px rgba(15,23,42,.1);transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .3s ease}.site-music-post:hover .share-card.site-music-playlist-card .share-cover{box-shadow:0 8px 18px rgba(15,23,42,.14);transform:scale(1.045)}.site-music-post .share-info{display:flex;flex:1;flex-direction:column;justify-content:center;min-width:0;padding:0}.site-music-post .share-title-line{display:flex;align-items:center;min-width:0}.site-music-post .share-card .share-title{display:block;min-width:0;overflow:hidden;color:#0f172a;font-size:16px;font-weight:800;line-height:1.4;letter-spacing:.3px;text-overflow:ellipsis;white-space:nowrap}.site-music-post .share-card .share-subtitle{display:block;margin-top:4px;overflow:hidden;color:#64748b;font-size:12px;font-weight:600;line-height:1.35;letter-spacing:.2px;text-overflow:ellipsis;white-space:nowrap}.site-music-post .post-meta{display:flex;align-items:center;justify-content:space-between;width:100%;box-sizing:border-box;margin:14px 0 0;padding:11px 2px 0;overflow:visible;color:#94a3b8;font-size:11px;font-weight:700;border-top:1px solid rgba(226,232,240,.72);background:0 0}.site-music-post .actions-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;box-sizing:border-box;padding:0 0 7px;color:#94a3b8;font-size:19px;line-height:1;background:rgba(248,250,252,.92);border:1px solid transparent;border-radius:50%;transition:color .2s ease,background .2s ease,transform .2s ease}.site-music-post .actions-btn:hover{color:#334155;background:#f1f5f9;transform:scale(1.06)}.site-music-post .interaction-section{margin-top:12px}body.site-dark-mode .post-item.site-music-post{color:#e4e4e7;background:rgba(24,24,27,.78)!important;border-color:rgba(255,255,255,.1);box-shadow:0 16px 34px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.035)}body.site-dark-mode .post-item.site-music-post:hover{border-color:rgba(52,211,153,.34);box-shadow:0 22px 44px rgba(0,0,0,.38),0 0 0 1px rgba(16,185,129,.06)}body.site-dark-mode .site-music-post .share-card.site-music-playlist-card{color:#f4f4f5;background:0 0!important}body.site-dark-mode .site-music-post .share-card .share-title{color:#f4f4f5}body.site-dark-mode .site-music-post .share-card .share-subtitle{color:#a1a1aa}body.site-dark-mode .site-music-post .share-card .share-cover{background:#27272a;border-color:rgba(255,255,255,.11);box-shadow:0 6px 16px rgba(0,0,0,.34)}body.site-dark-mode .site-music-post .post-meta{color:#71717a;border-top-color:rgba(255,255,255,.08);background:0 0!important}body.site-dark-mode .site-music-post .actions-btn{color:#a1a1aa;background:rgba(63,63,70,.44);border-color:transparent}body.site-dark-mode .site-music-post .actions-btn:hover{color:#a7f3d0;background:rgba(16,185,129,.13)}body.site-music-player-visible .feed{padding-bottom:126px}.music-player.site-modern-music-player{position:fixed;z-index:2000;right:max(12px,calc((100vw - 600px)/ 2 + 12px));bottom:max(18px,env(safe-area-inset-bottom));left:max(12px,calc((100vw - 600px)/ 2 + 12px));display:flex;align-items:center;width:auto;max-width:none;min-height:72px;height:auto;box-sizing:border-box;gap:12px;margin:0;padding:10px 12px;color:#334155;background:rgba(255,255,255,.92)!important;border:1px solid rgba(203,213,225,.78);border-radius:18px;box-shadow:0 20px 60px -10px rgba(15,23,42,.28),inset 0 1px 0 rgba(255,255,255,.72);backdrop-filter:blur(26px) saturate(145%);-webkit-backdrop-filter:blur(26px) saturate(145%)}.music-player.site-modern-music-player .progress-bar-container{position:absolute;top:0;right:14px;left:14px;width:auto;height:3px;overflow:hidden;background:rgba(148,163,184,.17);border-radius:0 0 999px 999px;cursor:pointer}.music-player.site-modern-music-player .progress-bar{height:100%;background:linear-gradient(90deg,#10b981,#2dd4bf);border-radius:inherit;box-shadow:0 0 9px rgba(16,185,129,.44)}.music-player.site-modern-music-player .player-cover{display:block;width:48px;height:48px;flex:0 0 48px;box-sizing:border-box;margin:0;object-fit:cover;background:#0f172a;border:4px solid rgba(15,23,42,.84);border-radius:50%;box-shadow:0 5px 15px rgba(15,23,42,.2),inset 0 0 0 1px rgba(255,255,255,.16)}.music-player.site-modern-music-player .player-cover.playing{animation:site-music-vinyl-spin 8s linear infinite}@keyframes site-music-vinyl-spin{to{transform:rotate(360deg)}}.music-player.site-modern-music-player .player-info{display:flex;flex:1 1 auto;flex-direction:column;justify-content:center;min-width:0;margin:0;overflow:hidden}.music-player.site-modern-music-player .player-info .title{overflow:hidden;color:#0f172a;font-size:14px;font-weight:800;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.music-player.site-modern-music-player .player-info .artist{overflow:hidden;margin-top:2px;color:#64748b;font-size:11px;font-weight:600;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.music-player.site-modern-music-player .player-controls{display:flex;flex:0 0 auto;align-items:center;gap:3px;color:#475569}.music-player.site-modern-music-player .player-controls .control-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;box-sizing:border-box;padding:7px;color:inherit;fill:none!important;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;background:0 0;border:0;border-radius:50%;cursor:pointer;filter:none;opacity:1;transition:color .2s ease,background .2s ease,transform .2s ease}.music-player.site-modern-music-player .player-controls .control-btn:hover{color:#059669;background:rgba(16,185,129,.09);transform:scale(1.08)}.music-player.site-modern-music-player .player-controls .site-music-play{width:38px;height:38px;padding:7px;color:#0f172a}.music-player.site-modern-music-player .player-controls .site-music-close{width:38px;height:38px;margin-left:2px;color:#94a3b8}.music-player.site-modern-music-player .player-controls .site-music-close:hover{color:#e11d48;background:rgba(244,63,94,.08)}.music-player.site-modern-music-player .player-controls .site-music-playlist{margin-left:4px;border-left:1px solid #e2e8f0;border-radius:0 50% 50% 0}body.site-dark-mode .music-player.site-modern-music-player{color:#e4e4e7;background:rgba(24,24,27,.92)!important;border-color:rgba(255,255,255,.12);box-shadow:0 22px 60px -10px rgba(0,0,0,.56),inset 0 1px 0 rgba(255,255,255,.045)}body.site-dark-mode .music-player.site-modern-music-player .progress-bar-container{background:rgba(255,255,255,.075)!important}body.site-dark-mode .music-player.site-modern-music-player .progress-bar{background:linear-gradient(90deg,#34d399,#2dd4bf);box-shadow:0 0 10px rgba(52,211,153,.42)}body.site-dark-mode .music-player.site-modern-music-player .player-cover{border-color:#09090b;box-shadow:0 6px 16px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,255,255,.13)}body.site-dark-mode .music-player.site-modern-music-player .player-info .title{color:#f4f4f5}body.site-dark-mode .music-player.site-modern-music-player .player-info .artist{color:#a1a1aa}body.site-dark-mode .music-player.site-modern-music-player .player-controls{color:#d4d4d8}body.site-dark-mode .music-player.site-modern-music-player .player-controls .control-btn{color:inherit;fill:none!important;stroke:currentColor;filter:none}body.site-dark-mode .music-player.site-modern-music-player .player-controls .control-btn:hover{color:#6ee7b7;background:rgba(16,185,129,.13)}body.site-dark-mode .music-player.site-modern-music-player .player-controls .site-music-play{color:#f4f4f5}body.site-dark-mode .music-player.site-modern-music-player .player-controls .site-music-close{color:#71717a}body.site-dark-mode .music-player.site-modern-music-player .player-controls .site-music-close:hover{color:#fda4af;background:rgba(244,63,94,.12)}body.site-dark-mode .music-player.site-modern-music-player .player-controls .site-music-playlist{border-left-color:rgba(255,255,255,.1)}.playlist-viewer-overlay{position:fixed;inset:0;z-index:21000;display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:24px;background:rgba(15,23,42,.4);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist{position:relative;display:flex;flex-direction:column;width:min(600px,100%);max-width:600px;height:min(600px,80vh);overflow:hidden;color:#334155;background:rgba(255,255,255,.94)!important;border:1px solid rgba(15,23,42,.1);border-radius:32px;box-shadow:0 24px 80px -12px rgba(15,23,42,.42),inset 0 1px 0 rgba(255,255,255,.72);backdrop-filter:blur(30px) saturate(145%);-webkit-backdrop-filter:blur(30px) saturate(145%);animation:site-playlist-enter .4s cubic-bezier(.16,1,.3,1)}@keyframes site-playlist-enter{from{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:none}}.playlist-viewer-content.site-modern-playlist .playlist-header{position:relative;z-index:2;display:flex;flex:0 0 auto;justify-content:space-between;min-height:72px;padding:18px 22px 18px 24px;background:rgba(255,255,255,.42);border-bottom:1px solid rgba(203,213,225,.66)}.playlist-viewer-content.site-modern-playlist .playlist-header h3{gap:8px;color:#0f172a;font-size:20px;font-weight:900;letter-spacing:-.3px}.site-playlist-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;min-height:20px;box-sizing:border-box;padding:2px 7px;color:#64748b;font-size:11px;font-weight:800;line-height:1;background:#f1f5f9;border-radius:999px}.playlist-viewer-content.site-modern-playlist .playlist-header .close-btn-text{margin-left:auto;padding:7px 11px;color:#64748b;font-size:12px;font-weight:800;line-height:1;background:#f1f5f9;border:0;border-radius:12px;transition:color .2s ease,background .2s ease}.playlist-viewer-content.site-modern-playlist .playlist-header .close-btn-text:hover{color:#334155;background:#e2e8f0}.site-playlist-close-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 36px;box-sizing:border-box;margin-left:6px;padding:8px;color:#94a3b8;background:0 0;border:0;border-radius:50%;cursor:pointer;transition:color .2s ease,background .2s ease,transform .2s ease}.site-playlist-close-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.site-playlist-close-icon:hover{color:#334155;background:#f1f5f9;transform:rotate(6deg)}.playlist-viewer-content.site-modern-playlist .playlist-list{flex:1 1 auto;min-height:0;margin:0;padding:0;overflow-y:auto;list-style:none;background:rgba(248,250,252,.56);scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.55) transparent;scroll-behavior:smooth}.playlist-viewer-content.site-modern-playlist .playlist-list::-webkit-scrollbar{width:6px}.playlist-viewer-content.site-modern-playlist .playlist-list::-webkit-scrollbar-track{background:0 0}.playlist-viewer-content.site-modern-playlist .playlist-list::-webkit-scrollbar-thumb{background:rgba(148,163,184,.55);border-radius:999px}.playlist-viewer-content.site-modern-playlist .playlist-list li{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:68px;box-sizing:border-box;padding:13px 24px;background:0 0;border-bottom:1px solid rgba(226,232,240,.72);cursor:pointer;transition:background .2s ease,color .2s ease}.playlist-viewer-content.site-modern-playlist .playlist-list li:hover{background:rgba(255,255,255,.92)}.playlist-viewer-content.site-modern-playlist .playlist-list li.active{background:rgba(236,253,245,.88)}.playlist-viewer-content.site-modern-playlist .playlist-list li.active::before{position:absolute;top:0;bottom:0;left:0;width:4px;content:'';background:#10b981;box-shadow:0 0 9px rgba(16,185,129,.48)}.playlist-viewer-content.site-modern-playlist .track-info{display:flex;flex:1;flex-direction:column;min-width:0;padding-right:14px;overflow:hidden}.playlist-viewer-content.site-modern-playlist .track-title{overflow:hidden;color:#334155;font-size:15px;font-weight:800;line-height:1.4;text-overflow:ellipsis;white-space:nowrap;transition:color .2s ease}.playlist-viewer-content.site-modern-playlist .track-artist{overflow:hidden;margin-top:2px;color:#64748b;font-size:12px;font-weight:600;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.playlist-viewer-content.site-modern-playlist .playlist-list li:hover .track-title{color:#059669}.playlist-viewer-content.site-modern-playlist .playlist-list li.active .track-title{color:#059669;font-weight:800}.playlist-viewer-content.site-modern-playlist .playlist-list li.active .track-artist{color:rgba(5,150,105,.76);font-weight:600}.playlist-viewer-content.site-modern-playlist .playing-indicator{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex:0 0 32px;color:#10b981;background:#d1fae5;border-radius:50%}.playlist-viewer-content.site-modern-playlist .playing-indicator svg{width:17px;height:17px;color:currentColor}.site-music-equalizer{display:none;align-items:flex-end;justify-content:center;gap:2px;width:16px;height:15px}.site-music-equalizer span{width:3px;height:35%;background:#10b981;border-radius:999px;transform-origin:bottom}body.site-music-playing .playlist-list li.active .playing-indicator>svg{display:none}body.site-music-playing .playlist-list li.active .site-music-equalizer{display:flex}body.site-music-playing .site-music-equalizer span:first-child{animation:site-music-bar .72s ease-in-out infinite alternate}body.site-music-playing .site-music-equalizer span:nth-child(2){animation:site-music-bar .78s .18s ease-in-out infinite alternate}body.site-music-playing .site-music-equalizer span:nth-child(3){animation:site-music-bar .66s .36s ease-in-out infinite alternate}@keyframes site-music-bar{0%{height:30%}100%{height:100%}}.playlist-viewer-content.site-modern-playlist .playlist-footer{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;min-height:68px;box-sizing:border-box;gap:12px;padding:14px 24px;background:rgba(255,255,255,.62);border-top:1px solid rgba(203,213,225,.66)}.playlist-viewer-content.site-modern-playlist .playlist-footer button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;box-sizing:border-box;gap:5px;padding:8px 14px;color:#475569;font-size:13px;font-weight:800;background:#f1f5f9;border:1px solid transparent;cursor:pointer;transition:color .2s ease,background .2s ease,border-color .2s ease,transform .2s ease}.playlist-viewer-content.site-modern-playlist .playlist-footer button:last-child{color:#334155;background:#fff;border-color:#e2e8f0;box-shadow:0 2px 8px rgba(15,23,42,.06)}.playlist-viewer-content.site-modern-playlist .playlist-footer button:hover:not(:disabled){color:#059669;background:#ecfdf5;border-color:#a7f3d0;transform:translateY(-1px)}.playlist-viewer-content.site-modern-playlist .playlist-footer button:disabled{opacity:.44;cursor:not-allowed;transform:none}.playlist-viewer-content.site-modern-playlist .playlist-footer button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.playlist-viewer-content.site-modern-playlist .page-indicator{color:#64748b;font-size:12px;font-weight:800;letter-spacing:2px}body.site-dark-mode .playlist-viewer-overlay{background:rgba(0,0,0,.66)}body.site-dark-mode .playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist{color:#d4d4d8;background:rgba(24,24,27,.95)!important;border-color:rgba(255,255,255,.11);box-shadow:0 28px 90px -18px rgba(0,0,0,.72),inset 0 1px 0 rgba(255,255,255,.04)}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-header{background:rgba(24,24,27,.58)}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-header h3{color:#f4f4f5}body.site-dark-mode .site-playlist-count{color:#a1a1aa;background:#27272a}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-header .close-btn-text{color:#a1a1aa;background:#27272a}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-header .close-btn-text:hover{color:#f4f4f5;background:#3f3f46}body.site-dark-mode .site-playlist-close-icon{color:#71717a}body.site-dark-mode .site-playlist-close-icon:hover{color:#f4f4f5;background:rgba(255,255,255,.08)}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list{scrollbar-color:#52525b transparent}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list::-webkit-scrollbar-thumb{background:#52525b}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list li{border-bottom-color:rgba(255,255,255,.065)}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list li:hover{background:rgba(255,255,255,.045)}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list li.active{background:rgba(16,185,129,.14)}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .track-title{color:#e4e4e7}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .track-artist{color:#8f8f98}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list li.active .track-title,body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list li:hover .track-title{color:#6ee7b7}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list li.active .track-artist{color:rgba(110,231,183,.74)}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playing-indicator{color:#6ee7b7;background:rgba(16,185,129,.18)}body.site-dark-mode .site-music-equalizer span{background:#6ee7b7}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-footer{background:rgba(24,24,27,.72)}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-footer button,body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-footer button:last-child{color:#d4d4d8;background:#27272a;border-color:rgba(255,255,255,.1);box-shadow:none}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-footer button:hover:not(:disabled){color:#a7f3d0;background:rgba(16,185,129,.14);border-color:rgba(110,231,183,.34)}body.site-dark-mode .playlist-viewer-content.site-modern-playlist .page-indicator{color:#a1a1aa}@media (max-width:640px){body.site-music-player-visible .feed{padding-bottom:112px}.music-player.site-modern-music-player{right:10px;bottom:max(10px,env(safe-area-inset-bottom));left:10px;min-height:68px;gap:9px;padding:9px 10px;border-radius:16px}.music-player.site-modern-music-player .player-cover{width:46px;height:46px;flex-basis:46px}.music-player.site-modern-music-player .player-controls{gap:1px}.music-player.site-modern-music-player .player-controls .control-btn{width:32px;height:32px;padding:7px}.music-player.site-modern-music-player .player-controls .site-music-next,.music-player.site-modern-music-player .player-controls .site-music-prev{display:none}.music-player.site-modern-music-player .player-controls .site-music-play{display:inline-flex;width:36px;height:36px}.music-player.site-modern-music-player .player-controls .site-music-lyrics{display:inline-flex;width:30px;height:32px;padding:6px}.music-player.site-modern-music-player .player-controls .site-music-close{width:36px;height:36px}.playlist-viewer-overlay{align-items:flex-end;padding:0}.playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist{width:100%;max-width:none;height:min(80vh,680px);border-right:0;border-bottom:0;border-left:0;border-radius:28px 28px 0 0;animation-name:site-playlist-enter-mobile}@keyframes site-playlist-enter-mobile{from{opacity:0;transform:translateY(100%)}to{opacity:1;transform:none}}.playlist-viewer-content.site-modern-playlist .playlist-header{min-height:68px;padding:16px 14px 16px 20px}.playlist-viewer-content.site-modern-playlist .playlist-header h3{font-size:19px}.playlist-viewer-content.site-modern-playlist .playlist-list li{min-height:64px;padding:12px 20px}.playlist-viewer-content.site-modern-playlist .playlist-footer{min-height:64px;padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.playlist-viewer-content.site-modern-playlist .playlist-footer button{min-height:36px;padding:7px 11px;font-size:12px}}@media (max-width:380px){.music-player.site-modern-music-player .player-info .artist{display:none}.playlist-viewer-content.site-modern-playlist .playlist-header .close-btn-text{display:none}.playlist-viewer-content.site-modern-playlist .playlist-footer{gap:8px;padding-right:12px;padding-left:12px}.playlist-viewer-content.site-modern-playlist .page-indicator{letter-spacing:1px}}.filter-controls-wrapper{display:flex;align-items:center;gap:8px;margin:0 12px 6px;padding:0 10px;border:0;border-radius:0;background:0 0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.filter-tabs{flex:1 1 auto;min-width:0;gap:3px;padding:0 2px 3px}.tab-button{position:relative;padding:9px 13px 11px;border-radius:12px;color:#64748b;font-size:15px;font-weight:700;transition:color .22s ease,background .22s ease,transform .22s ease}.tab-button:not(:first-child){margin-left:0}.tab-button:hover{color:#334155;background:rgba(226,232,240,.56);transform:translateY(-1px)}.tab-button.active{color:#059669}.tab-button.active::after{width:58%;height:2px;bottom:1px;background:linear-gradient(90deg,#10b981,#14b8a6);box-shadow:0 0 9px rgba(16,185,129,.42)}.advanced-filter-toggle-btn{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;gap:6px;min-height:38px;margin-left:auto;padding:8px 14px;color:#059669;font-size:13px;font-weight:800;line-height:1;background:rgba(236,253,245,.72);border:1px solid rgba(52,211,153,.42);border-radius:999px;box-shadow:0 5px 16px rgba(16,185,129,.1),inset 0 1px 0 rgba(255,255,255,.72);transition:color .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease,transform .22s ease}.advanced-filter-toggle-btn.open,.advanced-filter-toggle-btn:hover{color:#047857;background:rgba(209,250,229,.94);border-color:rgba(16,185,129,.58);box-shadow:0 8px 22px rgba(16,185,129,.16),0 0 0 3px rgba(16,185,129,.08);transform:translateY(-1px)}.advanced-filter-toggle-btn .icon-svg{width:15px;height:15px;transition:transform .28s cubic-bezier(.16,1,.3,1)}.advanced-filter-toggle-btn.open .icon-svg{transform:rotate(180deg)}.advanced-filter-panel{max-height:0;margin:0 12px;padding:0;overflow:hidden;border:1px solid transparent;border-radius:20px;background:0 0;box-shadow:none;opacity:0;transform:translateY(-6px) scale(.99);transform-origin:top center;transition:max-height .42s cubic-bezier(.16,1,.3,1),margin .32s ease,padding .42s ease,opacity .22s ease,transform .38s cubic-bezier(.16,1,.3,1),background .28s ease,border-color .28s ease,box-shadow .28s ease}.advanced-filter-panel.open{max-height:760px;margin:6px 12px 16px;padding:8px 14px 12px;opacity:1;transform:translateY(0) scale(1);border-color:rgba(203,213,225,.78);background:rgba(255,255,255,.76);box-shadow:0 14px 34px rgba(15,23,42,.09),inset 0 1px 0 rgba(255,255,255,.78);backdrop-filter:blur(22px) saturate(140%);-webkit-backdrop-filter:blur(22px) saturate(140%)}.advanced-filter-panel .filter-row{display:flex;align-items:flex-start;gap:12px;margin:0;padding:12px 0}.advanced-filter-panel .filter-row+.filter-row{border-top:0}.advanced-filter-panel .filter-label{flex:0 0 48px;width:48px;padding-top:7px;color:#94a3b8;font-size:13px;font-weight:900;letter-spacing:.5px}.advanced-filter-panel .filter-options{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:9px 10px;min-width:0}.advanced-filter-panel .filter-btn{min-height:36px;padding:7px 14px;color:#475569;font-size:13px;font-weight:700;line-height:1.1;background:rgba(241,245,249,.8);border:1px solid transparent;border-radius:999px;box-shadow:none;transition:color .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}.advanced-filter-panel .filter-btn:hover{color:#334155;background:#e2e8f0;border-color:rgba(148,163,184,.22);transform:translateY(-1px)}.advanced-filter-panel .filter-btn.active{color:#fff;background:linear-gradient(135deg,#10b981,#06b6d4);border-color:rgba(5,150,105,.22);box-shadow:0 7px 16px rgba(16,185,129,.24),0 0 0 3px rgba(16,185,129,.07)}.advanced-filter-panel .filter-btn.active:hover{color:#fff;background:linear-gradient(135deg,#059669,#0891b2)}body.site-dark-mode .filter-controls-wrapper{background:0 0;border-color:transparent;box-shadow:none}body.site-dark-mode .tab-button{color:#a1a1aa}body.site-dark-mode .tab-button:hover{color:#f4f4f5;background:rgba(255,255,255,.07)}body.site-dark-mode .tab-button.active{color:#6ee7b7}body.site-dark-mode .tab-button.active::after{background:linear-gradient(90deg,#34d399,#2dd4bf);box-shadow:0 0 10px rgba(52,211,153,.52)}body.site-dark-mode .advanced-filter-toggle-btn,body.site-dark-mode .advanced-filter-toggle-btn.open{color:#6ee7b7;background:rgba(6,78,59,.42);border-color:rgba(52,211,153,.38);box-shadow:0 7px 20px rgba(0,0,0,.22),0 0 0 3px rgba(16,185,129,.07)}body.site-dark-mode .advanced-filter-toggle-btn:hover{color:#a7f3d0;background:rgba(6,95,70,.56)}body.site-dark-mode .advanced-filter-panel.open{border-color:rgba(255,255,255,.11);background:rgba(24,24,27,.78);box-shadow:0 18px 40px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.04)}body.site-dark-mode .advanced-filter-panel .filter-label{color:#a1a1aa}body.site-dark-mode .advanced-filter-panel .filter-btn{color:#d4d4d8;background:rgba(63,63,70,.64);border-color:rgba(255,255,255,.08)}body.site-dark-mode .advanced-filter-panel .filter-btn:hover{color:#f4f4f5;background:rgba(82,82,91,.78)}body.site-dark-mode .advanced-filter-panel .filter-btn.active{color:#052e1b;background:linear-gradient(135deg,#34d399,#2dd4bf);border-color:rgba(167,243,208,.24);box-shadow:0 7px 17px rgba(16,185,129,.22),0 0 0 3px rgba(52,211,153,.1)}@media (max-width:600px){.filter-controls-wrapper{margin-right:10px;margin-left:10px;padding-right:6px;padding-left:6px}.tab-button{padding-right:11px;padding-left:11px;font-size:14px}.advanced-filter-toggle-btn{min-height:36px;padding-right:11px;padding-left:11px}.advanced-filter-panel{margin-right:10px;margin-left:10px}.advanced-filter-panel.open{max-height:1400px;margin-right:10px;margin-left:10px;padding-right:10px;padding-left:10px}.advanced-filter-panel .filter-row{gap:8px}.advanced-filter-panel .filter-label{flex-basis:42px;width:42px;font-size:12px}.advanced-filter-panel .filter-options{gap:8px}.advanced-filter-panel .filter-btn{min-height:34px;padding-right:11px;padding-left:11px;font-size:12px}}
/* immersive hero lyrics */
.moments-header .cover-photo{clip-path:inset(0 round var(--site-glass-radius,16px));transition:filter 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1),opacity 1s ease,object-position 1s ease}
.moments-header::after{transition:background 1s ease,opacity 1s ease}
.moments-header.site-hero-playing .cover-photo{filter:blur(1px) brightness(.5) saturate(.72);transform:none;opacity:.82}
.moments-header.site-hero-playing::after{background:linear-gradient(180deg,rgba(5,8,11,.3) 0%,rgba(5,8,11,.72) 65%,rgba(5,8,11,.94) 100%),radial-gradient(circle at 50% 46%,rgba(16,185,129,.08),transparent 48%)}
.moments-header .site-hero-lyrics{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;padding:18px 22px 48px;box-sizing:border-box;pointer-events:none;opacity:0;visibility:hidden;transform:translateY(12px) scale(.985);transition:opacity .95s cubic-bezier(.16,1,.3,1),transform .95s cubic-bezier(.16,1,.3,1),visibility 0s linear 1s}
.moments-header.site-hero-playing .site-hero-lyrics{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.site-hero-lyrics__stack{display:flex;flex-direction:column;align-items:center;justify-content:center;width:min(100%,560px);gap:8px;text-align:center}
.site-hero-lyrics__line{display:block;width:100%;margin:0;overflow:hidden;color:rgba(255,255,255,.48);font-size:13px;font-weight:700;line-height:1.4;letter-spacing:.16em;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 2px 12px rgba(0,0,0,.42);transition:opacity .65s ease,transform .8s cubic-bezier(.16,1,.3,1),font-size .8s ease,color .65s ease,filter .65s ease}
.site-hero-lyrics__line--prev{opacity:.64;transform:translateY(-13px) scale(.86);filter:blur(.2px)}
.site-hero-lyrics__line--current{color:#fff;font-size:clamp(20px,4.9vw,30px);font-weight:900;line-height:1.28;letter-spacing:.12em;text-shadow:0 3px 18px rgba(0,0,0,.78),0 0 28px rgba(255,255,255,.16);transform:scale(1.03)}
.site-hero-lyrics__line--next{opacity:.64;transform:translateY(13px) scale(.86);filter:blur(.2px)}
.site-hero-lyrics__line.is-empty{opacity:0;transform:scale(.82)}
.site-hero-lyrics__line.is-changing{animation:site-hero-line-change .72s cubic-bezier(.16,1,.3,1)}
.site-hero-lyrics__track{position:absolute;right:22px;bottom:18px;left:22px;display:flex;align-items:center;gap:10px;min-width:0;color:#6ee7b7;text-shadow:0 2px 12px rgba(0,0,0,.5);transition:opacity .8s ease,transform .8s cubic-bezier(.16,1,.3,1)}
.site-hero-lyrics__equalizer{display:flex;align-items:flex-end;justify-content:center;gap:3px;width:18px;height:17px;flex:0 0 18px}
.site-hero-lyrics__equalizer i{display:block;width:3px;height:35%;background:#6ee7b7;border-radius:99px;box-shadow:0 0 8px rgba(52,211,153,.6);transform-origin:bottom}
.site-hero-lyrics__equalizer i:nth-child(1){animation:site-hero-music-bar .72s ease-in-out infinite alternate}
.site-hero-lyrics__equalizer i:nth-child(2){animation:site-hero-music-bar .8s .18s ease-in-out infinite alternate}
.site-hero-lyrics__equalizer i:nth-child(3){animation:site-hero-music-bar .68s .34s ease-in-out infinite alternate}
.moments-header:not(.site-hero-playing) .site-hero-lyrics__equalizer i{animation-play-state:paused}
.site-hero-lyrics__track-copy{display:flex;align-items:baseline;gap:7px;min-width:0;overflow:hidden;font-size:11px;font-weight:800;letter-spacing:.08em;white-space:nowrap}
.site-hero-lyrics__track-title{overflow:hidden;text-overflow:ellipsis}
.site-hero-lyrics__track-artist{overflow:hidden;color:rgba(167,243,208,.72);font-weight:600;text-overflow:ellipsis}
.moments-header.site-hero-playing .user-info{opacity:.3;transform:translate(8px,8px) scale(.8);transform-origin:right bottom;transition:opacity .9s ease,transform .9s cubic-bezier(.16,1,.3,1)}
.user-info{transition:opacity .9s ease,transform .9s cubic-bezier(.16,1,.3,1)}
body.site-dark-mode .moments-header.site-hero-playing .cover-photo{filter:blur(18px) brightness(.38) saturate(.75);transform:none;opacity:.74}
body.site-dark-mode .moments-header.site-hero-playing::after{background:linear-gradient(180deg,rgba(3,5,7,.36) 0%,rgba(3,5,7,.8) 66%,rgba(3,5,7,.96) 100%),radial-gradient(circle at 50% 46%,rgba(16,185,129,.11),transparent 48%)}
body.site-dark-mode .site-hero-lyrics__line{color:rgba(244,244,245,.5)}
body.site-dark-mode .site-hero-lyrics__line--current{color:#fff}
body.site-dark-mode .site-hero-lyrics__track-artist{color:rgba(167,243,208,.7)}
@keyframes site-hero-music-bar{0%{height:28%}100%{height:100%}}
@keyframes site-hero-line-change{0%{opacity:0;transform:translateY(18px) scale(.92);filter:blur(2px)}100%{filter:blur(0)}}
@media (max-width:480px){.moments-header .site-hero-lyrics{padding-right:16px;padding-left:16px;padding-bottom:44px}.site-hero-lyrics__stack{gap:5px}.site-hero-lyrics__line{font-size:11px;letter-spacing:.11em}.site-hero-lyrics__line--current{font-size:clamp(18px,6vw,25px);letter-spacing:.08em}.site-hero-lyrics__line--prev{transform:translateY(-9px) scale(.88)}.site-hero-lyrics__line--next{transform:translateY(9px) scale(.88)}.site-hero-lyrics__track{right:16px;bottom:14px;left:16px}.site-hero-lyrics__track-copy{font-size:10px;letter-spacing:.04em}}
@media (prefers-reduced-motion:reduce){.moments-header .cover-photo,.moments-header::after,.moments-header .site-hero-lyrics,.site-hero-lyrics__line,.moments-header .user-info{transition-duration:.01ms!important}.site-hero-lyrics__equalizer i{animation:none!important;height:65%}}

/* keep the playing background fused inside the Hero bounds */
.moments-header.site-hero-playing{overflow:hidden}

/* lyric loading state */
.site-hero-lyrics.is-loading .site-hero-lyrics__line--current{display:flex;align-items:center;justify-content:center;gap:10px;color:rgba(255,255,255,.86);font-size:clamp(15px,3.8vw,22px);letter-spacing:.1em;text-shadow:0 3px 16px rgba(0,0,0,.7)}
.site-hero-lyrics__loader{display:inline-flex;align-items:flex-end;justify-content:center;gap:3px;width:18px;height:16px;flex:0 0 18px;vertical-align:middle}
.site-hero-lyrics__loader i{display:block;width:4px;height:4px;background:#6ee7b7;border-radius:50%;box-shadow:0 0 8px rgba(52,211,153,.72);animation:site-hero-lyrics-loader 1s ease-in-out infinite}
.site-hero-lyrics__loader i:nth-child(2){animation-delay:.14s}
.site-hero-lyrics__loader i:nth-child(3){animation-delay:.28s}
@keyframes site-hero-lyrics-loader{0%,100%{opacity:.4;transform:translateY(0) scale(.82)}50%{opacity:1;transform:translateY(-7px) scale(1.08)}}
@media (prefers-reduced-motion:reduce){.site-hero-lyrics__loader i{animation:none!important;opacity:.72;transform:none!important}}

/* center the player title against the full header, independent of side controls */
.site-player-header .site-player-title{position:absolute;top:30%;left:calc(49% + 0px);width:max-content;max-width:calc(100% - 140px);text-align:center;transform:translate(-50%,-50%)}

/* home autoplay glass toggle */
html.site-autoplay-guest .site-hero-autoplay,html.site-autoplay-guest .music-player,html.site-autoplay-guest .site-hero-lyrics{display:none!important}
.site-hero-autoplay{position:absolute;top:16px;right:16px;z-index:9;display:inline-flex;align-items:center;justify-content:center;min-height:38px;gap:10px;padding:7px 9px 7px 14px;color:#334155;font-family:inherit;font-size:12px;font-weight:850;line-height:1;letter-spacing:.02em;appearance:none;background:rgba(255,255,255,.76);border:1px solid rgba(255,255,255,.78);border-radius:999px;box-sizing:border-box;box-shadow:0 9px 24px rgba(15,23,42,.16),inset 0 1px 0 rgba(255,255,255,.9);cursor:pointer;backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%);transition:color .8s ease,background .8s ease,border-color .8s ease,box-shadow .8s ease,transform .24s ease}
.site-hero-autoplay:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(15,23,42,.2),inset 0 1px 0 rgba(255,255,255,.95)}
.site-hero-autoplay:active{transform:scale(.98)}
.site-hero-autoplay:focus-visible{outline:2px solid #34d399;outline-offset:3px}
.site-hero-autoplay__label{display:block;white-space:nowrap;text-shadow:0 1px 0 rgba(255,255,255,.48)}
.site-hero-autoplay__track{position:relative;display:block;width:36px;height:20px;flex:0 0 36px;background:rgba(100,116,139,.34);border:1px solid rgba(71,85,105,.14);border-radius:999px;box-sizing:border-box;box-shadow:inset 0 2px 5px rgba(15,23,42,.16);transition:background .55s cubic-bezier(.16,1,.3,1),border-color .55s ease,box-shadow .55s ease}
.site-hero-autoplay__thumb{position:absolute;top:2px;left:2px;width:14px;height:14px;background:#fff;border-radius:50%;box-shadow:0 2px 7px rgba(15,23,42,.3);transform:translateX(0);transition:transform .55s cubic-bezier(.16,1,.3,1),box-shadow .55s ease}
.site-hero-autoplay.is-enabled .site-hero-autoplay__track{background:linear-gradient(135deg,#34d399,#14b8a6);border-color:rgba(167,243,208,.58);box-shadow:0 0 0 3px rgba(52,211,153,.12),inset 0 1px 2px rgba(5,150,105,.2)}
.site-hero-autoplay.is-enabled .site-hero-autoplay__thumb{transform:translateX(16px);box-shadow:0 2px 9px rgba(6,95,70,.4)}
.site-hero-autoplay.is-waiting .site-hero-autoplay__track{animation:site-hero-autoplay-pulse 1.2s ease-in-out infinite}
@keyframes site-hero-autoplay-pulse{0%,100%{box-shadow:inset 0 2px 5px rgba(15,23,42,.16)}50%{box-shadow:0 0 0 4px rgba(52,211,153,.16),inset 0 2px 5px rgba(15,23,42,.16)}}
.moments-header.site-hero-playing .site-hero-autoplay{color:rgba(255,255,255,.94);background:rgba(15,23,42,.52);border-color:rgba(255,255,255,.22);box-shadow:0 10px 30px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.14);backdrop-filter:blur(20px) saturate(125%);-webkit-backdrop-filter:blur(20px) saturate(125%)}
.moments-header.site-hero-playing .site-hero-autoplay__label{text-shadow:0 2px 8px rgba(0,0,0,.5)}
body.site-dark-mode .site-hero-autoplay{color:#f4f4f5;background:rgba(24,24,27,.62);border-color:rgba(255,255,255,.15);box-shadow:0 10px 30px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.1)}
body.site-dark-mode .site-hero-autoplay__label{text-shadow:0 2px 8px rgba(0,0,0,.46)}
@media (max-width:480px){.site-hero-autoplay{top:11px;right:11px;min-height:34px;gap:7px;padding:6px 7px 6px 11px;font-size:10px}.site-hero-autoplay__track{width:32px;height:18px;flex-basis:32px}.site-hero-autoplay__thumb{width:12px;height:12px}.site-hero-autoplay.is-enabled .site-hero-autoplay__thumb{transform:translateX(14px)}}
@media (prefers-reduced-motion:reduce){.site-hero-autoplay,.site-hero-autoplay__track,.site-hero-autoplay__thumb{transition-duration:.01ms!important}.site-hero-autoplay.is-waiting .site-hero-autoplay__track{animation:none!important}}

/* 影视筛选：底部抽屉与固定操作栏 */
body.site-filter-sheet-open{overflow:hidden}
body.site-filter-sheet-open #app{position:relative}
body.site-filter-sheet-open #app::after{position:fixed;inset:0;z-index:12000;content:'';background:rgba(15,23,42,.42);backdrop-filter:blur(5px) saturate(115%);-webkit-backdrop-filter:blur(5px) saturate(115%);pointer-events:auto}
.advanced-filter-panel.site-bottom-sheet-filter{position:fixed;left:50%;bottom:0;z-index:12001;width:min(calc(100% - 24px),600px);height:0;max-height:0;margin:0!important;padding:0 20px;overflow:hidden;box-sizing:border-box;visibility:hidden;opacity:0;transform:translate(-50%,100%);transform-origin:center bottom;border:1px solid transparent;border-bottom:0;border-radius:28px 28px 0 0;background:rgba(255,255,255,.96);box-shadow:0 -18px 48px rgba(15,23,42,.22);pointer-events:none;transition:height .45s cubic-bezier(.16,1,.3,1),max-height .45s cubic-bezier(.16,1,.3,1),padding .45s cubic-bezier(.16,1,.3,1),opacity .3s ease,transform .55s cubic-bezier(.16,1,.3,1),visibility 0s linear .55s}
.advanced-filter-panel.site-bottom-sheet-filter.open{height:min(88vh,760px);max-height:min(88vh,760px);padding:76px 20px 132px;overflow-y:auto;visibility:visible;opacity:1;transform:translate(-50%,0);border-color:rgba(226,232,240,.92);pointer-events:auto;transition-delay:0s;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}
.advanced-filter-panel.site-bottom-sheet-filter.open::-webkit-scrollbar{width:6px}
.advanced-filter-panel.site-bottom-sheet-filter.open::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:99px}
.advanced-filter-panel.site-bottom-sheet-filter .filter-row{display:block;margin:0;padding:12px 0 18px}
.advanced-filter-panel.site-bottom-sheet-filter .filter-row+.filter-row{border-top:1px solid rgba(226,232,240,.52)}
.advanced-filter-panel.site-bottom-sheet-filter .filter-label{display:flex;align-items:center;gap:8px;width:auto;padding:0 0 11px;color:#0f172a;font-size:15px;font-weight:850;line-height:1.35;letter-spacing:.02em}
.advanced-filter-panel.site-bottom-sheet-filter .filter-label::after{display:none;align-items:center;max-width:58%;overflow:hidden;padding:4px 9px;color:#059669;font-size:11px;font-weight:800;line-height:1;text-overflow:ellipsis;white-space:nowrap;background:#ecfdf5;border-radius:999px;content:attr(data-selected)}
.advanced-filter-panel.site-bottom-sheet-filter .filter-label[data-selected]::after{display:inline-flex}
.advanced-filter-panel.site-bottom-sheet-filter .filter-options{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:9px 10px;min-width:0}
.advanced-filter-panel.site-bottom-sheet-filter .filter-btn{min-height:40px;padding:8px 15px;color:#475569;font-size:14px;font-weight:650;line-height:1.1;background:rgba(255,255,255,.82);border:1px solid #dbe4ee;border-radius:999px;box-shadow:0 2px 5px rgba(15,23,42,.025);transition:color .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.advanced-filter-panel.site-bottom-sheet-filter .filter-btn:hover{color:#047857;background:#f0fdf4;border-color:#86efac;transform:translateY(-1px)}
.advanced-filter-panel.site-bottom-sheet-filter .filter-btn.active{color:#fff;background:linear-gradient(135deg,#10b981,#05b98e);border-color:#10b981;box-shadow:0 8px 18px rgba(16,185,129,.24),0 0 0 3px rgba(16,185,129,.08)}
.advanced-filter-toggle-btn{position:relative}
.advanced-filter-toggle-btn::after{display:none;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 4px;color:#fff;font-size:10px;font-weight:900;line-height:17px;background:#10b981;border:2px solid #fff;border-radius:999px;box-shadow:0 2px 7px rgba(16,185,129,.28);content:attr(data-selected-count)}
.advanced-filter-toggle-btn[data-selected-count]:not([data-selected-count="0"])::after{display:inline-flex}
.site-filter-sheet-chrome{position:fixed;left:50%;bottom:0;z-index:12002;width:min(calc(100% - 24px),600px);height:min(88vh,760px);box-sizing:border-box;visibility:hidden;opacity:0;transform:translate(-50%,100%);pointer-events:none;transition:opacity .3s ease,transform .55s cubic-bezier(.16,1,.3,1),visibility 0s linear .55s}
.site-filter-sheet-chrome.is-open{visibility:visible;opacity:1;transform:translate(-50%,0);transition-delay:0s}
.site-filter-sheet-header{position:absolute;top:0;right:0;left:0;display:flex;align-items:center;justify-content:space-between;height:68px;padding:0 18px 0 22px;box-sizing:border-box;color:#0f172a;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(226,232,240,.78);border-radius:28px 28px 0 0;box-shadow:0 1px 0 rgba(255,255,255,.7);pointer-events:auto}
.site-filter-sheet-header::before{position:absolute;top:11px;left:50%;width:42px;height:5px;border-radius:999px;background:#dbe3ed;content:'';transform:translateX(-50%)}
.site-filter-sheet-title{font-size:19px;font-weight:900;letter-spacing:.01em}
.site-filter-sheet-actions{display:flex;align-items:center;gap:9px}
.site-filter-sheet-reset{padding:7px 4px;color:#94a3b8;font-size:14px;font-weight:800;background:none;border:0;cursor:pointer}
.site-filter-sheet-reset:hover{color:#059669}
.site-filter-sheet-footer{position:absolute;right:0;bottom:0;left:0;display:flex;flex-direction:column;min-height:126px;padding:12px 20px calc(14px + env(safe-area-inset-bottom));box-sizing:border-box;background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(255,255,255,.98) 25%);border-top:1px solid rgba(226,232,240,.78);pointer-events:auto}
.site-filter-sheet-footer:not(.has-selections){min-height:84px;padding-top:16px}
.site-filter-sheet-selected{display:flex;align-items:center;gap:8px;min-width:0;min-height:31px;margin:0 0 10px;overflow-x:auto;scrollbar-width:none}
.site-filter-sheet-selected::-webkit-scrollbar{display:none}
.site-filter-sheet-selected-label{flex:0 0 auto;color:#94a3b8;font-size:13px;font-weight:800}
.site-filter-sheet-selected-list{display:flex;align-items:center;gap:8px;min-width:max-content}
.site-filter-sheet-chip{display:inline-flex;align-items:center;max-width:190px;padding:6px 9px;overflow:hidden;color:#059669;font-size:12px;font-weight:800;line-height:1;white-space:nowrap;text-overflow:ellipsis;background:#ecfdf5;border:1px solid #bbf7d0;border-radius:7px}
.site-filter-sheet-done{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:48px;padding:12px;color:#fff;font-size:17px;font-weight:850;background:#0f172a;border:0;border-radius:15px;box-shadow:0 9px 18px rgba(15,23,42,.18);cursor:pointer;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}
.site-filter-sheet-done:hover{background:#1e293b;box-shadow:0 11px 22px rgba(15,23,42,.22);transform:translateY(-1px)}
.site-filter-sheet-done:active{transform:scale(.99)}
.site-filter-sheet-done svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
body.site-dark-mode.site-filter-sheet-open #app::after{background:rgba(0,0,0,.64)}
body.site-dark-mode .advanced-filter-panel.site-bottom-sheet-filter{background:rgba(24,24,27,.97);border-color:rgba(255,255,255,.1);box-shadow:0 -18px 48px rgba(0,0,0,.5);scrollbar-color:#52525b transparent}
body.site-dark-mode .advanced-filter-panel.site-bottom-sheet-filter.open::-webkit-scrollbar-thumb{background:#52525b}
body.site-dark-mode .advanced-filter-panel.site-bottom-sheet-filter .filter-row+.filter-row{border-top-color:rgba(255,255,255,.08)}
body.site-dark-mode .advanced-filter-panel.site-bottom-sheet-filter .filter-label{color:#f4f4f5}
body.site-dark-mode .advanced-filter-panel.site-bottom-sheet-filter .filter-label::after{color:#6ee7b7;background:rgba(6,78,59,.5)}
body.site-dark-mode .advanced-filter-panel.site-bottom-sheet-filter .filter-btn{color:#d4d4d8;background:rgba(63,63,70,.72);border-color:rgba(255,255,255,.11)}
body.site-dark-mode .advanced-filter-panel.site-bottom-sheet-filter .filter-btn:hover{color:#a7f3d0;background:rgba(6,95,70,.5);border-color:rgba(52,211,153,.4)}
body.site-dark-mode .advanced-filter-panel.site-bottom-sheet-filter .filter-btn.active{color:#052e1b;background:linear-gradient(135deg,#34d399,#2dd4bf);border-color:#34d399}
body.site-dark-mode .site-filter-sheet-header{color:#f4f4f5;background:rgba(24,24,27,.97);border-bottom-color:rgba(255,255,255,.09)}
body.site-dark-mode .site-filter-sheet-header::before{background:#52525b}
body.site-dark-mode .site-filter-sheet-footer{background:linear-gradient(180deg,rgba(24,24,27,.8),rgba(24,24,27,.99) 25%);border-top-color:rgba(255,255,255,.09)}
body.site-dark-mode .site-filter-sheet-selected-label{color:#a1a1aa}
body.site-dark-mode .site-filter-sheet-chip{color:#6ee7b7;background:rgba(6,78,59,.5);border-color:rgba(52,211,153,.25)}
body.site-dark-mode .site-filter-sheet-done{color:#052e1b;background:#6ee7b7}
body.site-dark-mode .site-filter-sheet-done:hover{background:#a7f3d0}
@media (max-width:600px){.advanced-filter-panel.site-bottom-sheet-filter,.site-filter-sheet-chrome{width:100%}.advanced-filter-panel.site-bottom-sheet-filter.open{height:min(88vh,760px);max-height:min(88vh,760px);padding-right:18px;padding-left:18px}.advanced-filter-panel.site-bottom-sheet-filter .filter-label{font-size:15px}.advanced-filter-panel.site-bottom-sheet-filter .filter-btn{min-height:39px;padding-right:14px;padding-left:14px;font-size:13px}.site-filter-sheet-header{padding-right:14px;padding-left:20px}.site-filter-sheet-footer{padding-right:16px;padding-left:16px}.site-filter-sheet-done{min-height:48px}}
@media (prefers-reduced-motion:reduce){.advanced-filter-panel.site-bottom-sheet-filter,.site-filter-sheet-chrome{transition-duration:.01ms!important}}

/* 即使旧版脚本尚未更新，也将原筛选面板直接锁定为底部抽屉 */
.advanced-filter-panel.open{position:fixed!important;left:50%;bottom:0;z-index:12001;width:min(calc(100% - 24px),600px);height:min(88vh,760px);max-height:min(88vh,760px);margin:0!important;padding:76px 20px 132px;overflow-y:auto;box-sizing:border-box;transform:translate(-50%,0);border-radius:28px 28px 0 0}
.advanced-filter-panel.open .filter-row{display:block;margin:0;padding:12px 0 18px}
.advanced-filter-panel.open .filter-label{display:flex;align-items:center;gap:8px;width:auto;padding:0 0 11px;font-size:15px;font-weight:850}
.advanced-filter-panel.open .filter-options{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:9px 10px;min-width:0}
.advanced-filter-panel.open .filter-btn{min-height:40px;padding:8px 15px;border-radius:999px}
body:has(.advanced-filter-panel.open) #app::after{position:fixed;inset:0;z-index:12000;content:'';background:rgba(15,23,42,.42);backdrop-filter:blur(5px) saturate(115%);-webkit-backdrop-filter:blur(5px) saturate(115%);pointer-events:auto}
@media (max-width:600px){.advanced-filter-panel.open{width:100%;height:min(88vh,760px);max-height:min(88vh,760px);padding-right:18px;padding-left:18px}}

/* 播放列表与筛选统一为底部抽屉 */
.playlist-viewer-overlay{align-items:flex-end!important;justify-content:center!important;padding:0!important;background:rgba(15,23,42,.42)!important;backdrop-filter:blur(5px) saturate(115%);-webkit-backdrop-filter:blur(5px) saturate(115%)}
.playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist{width:min(100%,600px)!important;max-width:600px!important;height:min(88vh,760px)!important;max-height:min(88vh,760px);margin:0;border-right:1px solid rgba(15,23,42,.1);border-bottom:0;border-left:1px solid rgba(15,23,42,.1);border-radius:28px 28px 0 0!important;box-shadow:0 -18px 48px rgba(15,23,42,.22),inset 0 1px 0 rgba(255,255,255,.72);animation:site-playlist-sheet-enter .5s cubic-bezier(.16,1,.3,1)}
.playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist::before{position:absolute;top:11px;left:50%;z-index:4;width:42px;height:5px;border-radius:999px;background:#dbe3ed;content:'';transform:translateX(-50%)}
.playlist-viewer-content.site-modern-playlist .playlist-header{min-height:74px;padding:22px 18px 14px 22px;background:rgba(255,255,255,.7);border-bottom-color:rgba(226,232,240,.78)}
.playlist-viewer-content.site-modern-playlist .playlist-header h3{font-size:19px}
.playlist-viewer-content.site-modern-playlist .playlist-list{background:rgba(248,250,252,.66)}
.playlist-viewer-content.site-modern-playlist .playlist-footer{min-height:76px;padding:12px 20px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(255,255,255,.8),rgba(255,255,255,.98) 28%);border-top-color:rgba(226,232,240,.78)}
.playlist-viewer-content.site-modern-playlist .playlist-footer button{min-height:40px;padding:9px 15px;border-radius:12px}
@keyframes site-playlist-sheet-enter{from{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}
body.site-dark-mode .playlist-viewer-overlay{background:rgba(0,0,0,.64)!important}
body.site-dark-mode .playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist{border-color:rgba(255,255,255,.1);box-shadow:0 -18px 48px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.04)}
body.site-dark-mode .playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist::before{background:#52525b}
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-header{background:rgba(24,24,27,.8);border-bottom-color:rgba(255,255,255,.09)}
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list{background:rgba(9,9,11,.35)}
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-footer{background:linear-gradient(180deg,rgba(24,24,27,.8),rgba(24,24,27,.99) 28%);border-top-color:rgba(255,255,255,.09)}
@media (max-width:600px){.playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist{width:100%!important;max-width:none!important;height:min(88vh,760px)!important;border-right:0;border-left:0}.playlist-viewer-content.site-modern-playlist .playlist-header{min-height:74px;padding-right:14px;padding-left:20px}.playlist-viewer-content.site-modern-playlist .playlist-list li{min-height:64px;padding-right:20px;padding-left:20px}.playlist-viewer-content.site-modern-playlist .playlist-footer{min-height:76px;padding-right:16px;padding-left:16px}}
@media (prefers-reduced-motion:reduce){.playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist{animation-duration:.01ms!important}}

/* 影视播放页：保留首页的 92% 高度底部抽屉 */
.site-player-overlay{align-items:flex-end!important;justify-content:center!important;padding:0!important;background:rgba(15,23,42,.42)!important;backdrop-filter:blur(5px) saturate(115%);-webkit-backdrop-filter:blur(5px) saturate(115%)}
.site-player-shell{position:relative;width:min(100%,600px);height:92vh;max-height:92vh;margin:0;overflow-y:auto;border:1px solid rgba(255,255,255,.68);border-bottom:0;border-radius:28px 28px 0 0;box-shadow:0 -18px 48px rgba(15,23,42,.24);animation:site-player-drawer-enter .58s cubic-bezier(.16,1,.3,1)}
.site-player-header{background:linear-gradient(180deg,rgba(15,23,42,.78),rgba(15,23,42,.3) 70%,transparent)}
.site-player-header::before{position:absolute;top:9px;left:50%;width:42px;height:5px;border-radius:999px;background:rgba(255,255,255,.68);content:'';transform:translateX(-50%)}
.site-player-header>button[data-player-action="close"]{z-index:1;width:38px;height:38px;color:#fff;background:rgba(15,23,42,.52);border:1px solid rgba(255,255,255,.18);box-shadow:0 5px 14px rgba(0,0,0,.18);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.site-player-header>button[data-player-action="close"] svg{transform:rotate(-90deg)}
.site-player-header>button[data-player-action="close"]:hover{background:rgba(15,23,42,.76)}
.site-player-header .site-player-title{z-index:1;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.48)}
.site-player-header .site-player-header-actions{z-index:1}
.site-player-header .site-player-header-actions button{color:#fff;background:rgba(15,23,42,.46);border-color:rgba(255,255,255,.16);box-shadow:0 5px 14px rgba(0,0,0,.16);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.site-player-header .site-player-header-actions button:hover{background:rgba(15,23,42,.72)}
.site-player-video{border-radius:28px 28px 0 0}
@keyframes site-player-drawer-enter{from{opacity:.55;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}
body.site-dark-mode .site-player-overlay{background:rgba(0,0,0,.66)!important}
body.site-dark-mode .site-player-shell{border-color:rgba(255,255,255,.1);box-shadow:0 -18px 48px rgba(0,0,0,.52)}
body.site-dark-mode .site-player-header{background:linear-gradient(180deg,rgba(0,0,0,.76),rgba(0,0,0,.32) 70%,transparent)}
@media (max-width:600px){.site-player-shell{width:100%;height:92vh;max-height:92vh;border-right:0;border-left:0;border-radius:28px 28px 0 0}.site-player-header{padding-right:12px;padding-left:12px}.site-player-video{border-radius:28px 28px 0 0}}
@media (prefers-reduced-motion:reduce){.site-player-shell{animation-duration:.01ms!important}}

/* 三类底部抽屉：只使用合成层动画，避免上移时反复触发布局 */
.advanced-filter-panel.site-bottom-sheet-filter{height:min(88vh,760px)!important;max-height:min(88vh,760px)!important;overflow-y:auto!important;transform:translate3d(-50%,100%,0)!important;will-change:transform,opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:opacity .22s ease,transform .44s cubic-bezier(.16,1,.3,1),visibility 0s linear .44s!important}
.advanced-filter-panel.site-bottom-sheet-filter.open{transform:translate3d(-50%,0,0)!important;transition-delay:0s!important}
.site-filter-sheet-chrome{transform:translate3d(-50%,100%,0);will-change:transform,opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden;isolation:isolate;transition:opacity .22s ease,transform .44s cubic-bezier(.16,1,.3,1),visibility 0s linear .44s}
.site-filter-sheet-chrome.is-open{transform:translate3d(-50%,0,0)}
.playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist{will-change:transform,opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden;isolation:isolate;animation-duration:.44s;animation-fill-mode:both}
.site-player-shell{will-change:transform,opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden;isolation:isolate;animation-duration:.46s;animation-fill-mode:both}
.advanced-filter-panel.site-bottom-sheet-filter.open{backdrop-filter:blur(14px) saturate(125%);-webkit-backdrop-filter:blur(14px) saturate(125%)}
.playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist{backdrop-filter:blur(18px) saturate(130%);-webkit-backdrop-filter:blur(18px) saturate(130%)}
@keyframes site-playlist-sheet-enter{from{opacity:0;transform:translate3d(0,100%,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes site-player-drawer-enter{from{opacity:.55;transform:translate3d(0,100%,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@media (prefers-reduced-motion:reduce){.advanced-filter-panel.site-bottom-sheet-filter,.site-filter-sheet-chrome{transition-duration:.01ms!important}.playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist,.site-player-shell{animation-duration:.01ms!important}}

/* 手机端播放页：播放器铺满抽屉，并适当增加视频高度 */
.site-player-shell{box-sizing:border-box}
@media (max-width:600px){.site-player-shell{width:100vw!important;max-width:100vw!important;margin-right:0;margin-left:0}.site-player-video{aspect-ratio:16/14}}

/* 搜索页：统一为 96% 高度的高级底部抽屉 */
.site-search-backdrop{position:fixed;inset:0;z-index:12000;visibility:hidden;opacity:0;background:rgba(71,85,105,.25);backdrop-filter:blur(7px) saturate(115%);-webkit-backdrop-filter:blur(7px) saturate(115%);transition:opacity .28s ease,visibility 0s linear .42s}
.site-search-backdrop.is-open{visibility:visible;opacity:1;transition-delay:0s}
body.site-search-mode,body.site-search-closing{overflow:hidden}
body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{position:fixed;left:50%;bottom:0;z-index:12001;width:min(calc(100% - 24px),600px);height:96vh;max-height:96vh;margin:0;overflow-y:auto;box-sizing:border-box;opacity:0;transform:translate3d(-50%,100%,0);background:#fbfcfe;border:1px solid rgba(226,232,240,.92);border-bottom:0;border-radius:30px 30px 0 0;box-shadow:0 -20px 60px rgba(15,23,42,.22);transition:opacity .24s ease,transform .46s cubic-bezier(.16,1,.3,1)}
body.site-search-mode #app .scroll-container.site-search-sheet.site-search-sheet-open{opacity:1;transform:translate3d(-50%,0,0)}
body.site-search-mode #app .scroll-container.site-search-sheet.site-search-sheet-open{animation:site-search-sheet-enter .48s cubic-bezier(.16,1,.3,1) both}
@keyframes site-search-sheet-enter{from{opacity:0;transform:translate3d(-50%,100%,0)}to{opacity:1;transform:translate3d(-50%,0,0)}}
body.site-search-mode #app .scroll-container.site-search-sheet::-webkit-scrollbar,body.site-search-closing #app .scroll-container.site-search-sheet::-webkit-scrollbar{width:5px}
body.site-search-mode #app .scroll-container.site-search-sheet::-webkit-scrollbar-thumb,body.site-search-closing #app .scroll-container.site-search-sheet::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:99px}
body.site-search-mode .top-bar{position:sticky;top:0;z-index:10;display:flex;min-height:78px;height:auto;box-sizing:border-box;gap:10px;padding:18px 16px 14px;background:rgba(251,252,254,.96);border-bottom:1px solid rgba(226,232,240,.72);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
body.site-search-mode .top-bar>span{display:none!important}
body.site-search-mode .search-container{flex:1 1 auto;min-width:0;margin:0}
body.site-search-mode .search-bar-wrapper{width:100%;gap:10px}
body.site-search-mode .search-bar-input-group{min-width:0}
body.site-search-mode .search-input{height:56px;padding:0 16px 0 50px;color:#334155;font-size:16px;font-weight:650;background:#f0f3f8;border:1px solid transparent;border-radius:18px;box-shadow:inset 0 2px 7px rgba(100,116,139,.08);transition:background .24s ease,border-color .24s ease,box-shadow .24s ease}
body.site-search-mode .search-input:focus{background:#fff;outline:0;border-color:rgba(124,106,239,.24);box-shadow:0 0 0 4px rgba(124,106,239,.12),inset 0 2px 7px rgba(100,116,139,.06)}
body.site-search-mode .search-input::placeholder{color:#94a3b8;font-weight:600}
body.site-search-mode .search-bar-icon{left:18px;width:24px;height:24px;color:#91a4c0}
body.site-search-mode .search-cancel-btn{flex:0 0 auto;padding:8px 2px;color:#6758d9;font-size:16px;font-weight:850;line-height:1;background:transparent;transition:color .2s ease,transform .2s ease}
body.site-search-mode .search-cancel-btn:hover{color:#5143bf;transform:translateY(-1px)}
body.site-search-mode .top-bar-actions{display:flex;align-items:center;gap:4px;margin:0}
body.site-search-mode .top-bar-actions>*+*{margin-left:0}
body.site-search-mode .top-bar-actions>.notification-icon-wrapper{display:none!important}
body.site-search-mode .top-bar-actions .site-global-theme-toggle{display:inline-flex;width:38px;height:38px;margin:0;padding:0;color:#667b9a;background:transparent;border:0;border-radius:50%;box-shadow:none}
body.site-search-mode .top-bar-actions .site-global-theme-toggle:hover{color:#6758d9;background:rgba(124,106,239,.09);box-shadow:none;transform:rotate(10deg) scale(1.04)}
body.site-search-mode .moments-container{padding:0 0 34px}
body.site-search-mode .search-prompt,body.site-search-mode .empty-search-box{display:none!important}
body:has(.search-input) .search-prompt,body:has(.search-input) .empty-search-box{display:none!important}
.site-search-empty-state{display:none;padding:4px 18px 34px;color:#1e293b}
body.site-search-mode.site-search-empty .site-search-empty-state{display:block}
body.site-search-mode.site-search-empty main.feed{display:none!important}
.site-search-blank{display:none;gap:12px;min-height:160px;padding:24px 0}
body.site-search-mode.site-search-no-history .site-search-blank{display:flex}
.site-search-blank-icon{display:inline-flex;width:68px;height:68px;color:#b6c4d8;background:#f3f6fa;border-radius:24px}
.site-search-blank-icon svg{width:38px;height:38px;stroke-width:1.8}
.site-search-blank p{font-size:15px;font-weight:650}
.site-search-section{margin:22px 0 0}
.site-search-section-heading{margin:0 0 14px;padding:0 2px}
.site-search-section-heading h2{gap:8px;color:#172033;font-size:17px;line-height:1.2}
.site-search-section-heading h2 svg{width:19px;height:19px;stroke:#8499b5;stroke-width:2}
.site-search-hot .site-search-section-heading h2 svg{stroke:#ff2d55}
.site-search-section-heading button{padding:5px 0;color:#8da1ba;font-size:13px;font-weight:800}
.site-search-section-heading button:hover{color:#6758d9}
.site-search-history-list{gap:10px}
.site-search-pill{padding:10px 17px;color:#526681;font-size:14px;font-weight:650;line-height:1;background:#f7f9fc;border:1px solid #e6ebf2;border-radius:14px;box-shadow:0 3px 8px rgba(15,23,42,.06);transition:color .2s ease,background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.site-search-pill:hover{color:#5c4bd0;background:#f4f1ff;border-color:#d8d0ff;box-shadow:0 7px 15px rgba(124,106,239,.12);transform:translateY(-2px)}
.site-search-hot-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:19px}
.site-search-hot-item{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;min-width:0;gap:6px;padding:0;color:#40536f;text-align:left;background:transparent;border:0}
.site-search-hot-rank{color:#b8c5d6;font-size:18px;font-weight:950;line-height:1}
.site-search-hot-rank.rank-1,.site-search-hot-rank.rank-2,.site-search-hot-rank.rank-3{color:#ff2d55}
.site-search-hot-name{font-weight:800;line-height:1.2}
.site-search-hot-category{padding:5px 7px;color:#91a4bc;font-size:10px;font-weight:800;line-height:1;background:#f0f4f9;border-radius:5px}
.site-search-hot-item:hover .site-search-hot-name{color:#6758d9}
.site-search-request{display:flex;align-items:center;gap:10px;width:100%;margin:34px 0 0;padding:15px 16px;color:#fff;text-align:left;background:linear-gradient(135deg,#7464e8,#6d8cf6);border:0;border-radius:18px;box-shadow:0 12px 24px rgba(104,93,218,.2);transition:box-shadow .24s ease,transform .24s ease,filter .24s ease}
.site-search-request:hover{filter:saturate(1.08);box-shadow:0 16px 30px rgba(104,93,218,.28);transform:translateY(-2px)}
.site-search-request-after{display:none!important;margin:24px 18px 34px;width:calc(100% - 36px)}
body.site-search-mode.site-search-has-query .site-search-request-after.is-visible{display:flex!important}
.site-search-request>span:nth-child(2){display:flex;flex:1;flex-direction:column;gap:3px;font-size:12px;font-weight:650;line-height:1.2}
.site-search-request strong{font-size:15px;font-weight:900}
.site-search-request-icon{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;background:rgba(255,255,255,.18);border-radius:12px}
.site-search-request-icon svg,.site-search-request>svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
body.site-search-mode.site-search-has-query .site-search-empty-state{display:none}
body.site-search-mode.site-search-has-query main.feed{padding:10px 0 24px}
body.site-search-mode.site-search-has-query .search-result-indicator{background:#f4f6fa}
body.site-dark-mode .site-search-backdrop{background:rgba(0,0,0,.5)}
body.site-dark-mode.site-search-mode #app .scroll-container.site-search-sheet,body.site-dark-mode.site-search-closing #app .scroll-container.site-search-sheet{background:#15171c;border-color:rgba(255,255,255,.1);box-shadow:0 -20px 60px rgba(0,0,0,.55)}
body.site-dark-mode.site-search-mode .top-bar{background:rgba(21,23,28,.96);border-bottom-color:rgba(255,255,255,.08)}
body.site-dark-mode.site-search-mode .search-input{color:#e5e7eb;background:#242831;border-color:rgba(255,255,255,.06);box-shadow:inset 0 2px 7px rgba(0,0,0,.18)}
body.site-dark-mode.site-search-mode .search-input:focus{background:#2b303a;border-color:rgba(167,139,250,.35);box-shadow:0 0 0 4px rgba(139,92,246,.16),inset 0 2px 7px rgba(0,0,0,.12)}
body.site-dark-mode.site-search-mode .search-input::placeholder{color:#8f96a3}
body.site-dark-mode.site-search-mode .search-bar-icon{color:#a5b4cf}
body.site-dark-mode.site-search-mode .search-cancel-btn{color:#b4a7ff}
body.site-dark-mode.site-search-mode .top-bar-actions .site-global-theme-toggle{color:#c4b5fd}
body.site-dark-mode .site-search-empty-state{color:#e4e4e7}
body.site-dark-mode .site-search-section-heading h2 svg{stroke:#a5b4cf}
body.site-dark-mode .site-search-hot .site-search-section-heading h2 svg{stroke:#ff6b85}
body.site-dark-mode .site-search-pill{color:#d4d8e1;background:#242831;border-color:rgba(255,255,255,.08);box-shadow:none}
body.site-dark-mode .site-search-pill:hover{color:#d8d0ff;background:#302b4b;border-color:rgba(167,139,250,.3)}
body.site-dark-mode .site-search-hot-item{color:#d4d8e1}
body.site-dark-mode .site-search-hot-rank{color:#8f96a3}
body.site-dark-mode .site-search-hot-rank.rank-1,body.site-dark-mode .site-search-hot-rank.rank-2,body.site-dark-mode .site-search-hot-rank.rank-3{color:#ff7190}
body.site-dark-mode .site-search-hot-category{color:#a5b4cf;background:#242831}
body.site-dark-mode .site-search-blank-icon{color:#a5b4cf;background:#242831}
body.site-dark-mode .site-search-request{box-shadow:0 14px 30px rgba(0,0,0,.3)}
@media (max-width:600px){body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{width:100vw;max-width:100vw;border-right:0;border-left:0;border-radius:28px 28px 0 0}.site-search-empty-state{padding-right:18px;padding-left:18px}.site-search-hot-list{column-gap:12px}.site-search-hot-item{grid-template-columns:21px minmax(0,1fr) auto}.site-search-hot-name{font-size:14px}.site-search-hot-category{padding-right:5px;padding-left:5px;font-size:9px}.site-search-request{margin-top:30px}.site-search-request-after{margin-right:18px;margin-left:18px;width:calc(100% - 36px)}}
@media (prefers-reduced-motion:reduce){.site-search-backdrop,body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet,.site-search-pill,.site-search-request{transition-duration:.01ms!important}}

/* 搜索抽屉修复：遮罩与面板放入同一层叠上下文，避免深色模式/毛玻璃把面板一起模糊 */
.site-search-backdrop{pointer-events:none;transform:translateZ(0)}
.site-search-backdrop.is-open{pointer-events:auto}
body.site-search-mode .scroll-container.site-search-sheet,body.site-search-closing .scroll-container.site-search-sheet{z-index:12001!important;pointer-events:none;animation:none!important;transition:opacity .2s ease,transform .52s cubic-bezier(.16,1,.3,1),visibility 0s linear .52s!important}
body.site-search-mode .scroll-container.site-search-sheet.site-search-sheet-open{pointer-events:auto;animation:none!important;transition-delay:0s!important}
body.site-search-mode .scroll-container.site-search-sheet,body.site-search-closing .scroll-container.site-search-sheet{opacity:0;transform:translate3d(-50%,100%,0)}
body.site-search-mode .scroll-container.site-search-sheet.site-search-sheet-open{opacity:1;transform:translate3d(-50%,0,0)}
body.site-search-mode .search-prompt,body.site-search-mode .empty-search-box,body.site-search-closing .search-prompt,body.site-search-closing .empty-search-box,[data-site-search-legacy-hidden="1"]{display:none!important;visibility:hidden!important}
body.site-search-mode .site-search-empty-state{position:relative;z-index:1}
body.site-search-mode .site-search-empty-state,body.site-search-mode .site-search-empty-state *{backdrop-filter:none;-webkit-backdrop-filter:none}
body.site-dark-mode .site-search-backdrop{background:rgba(0,0,0,.52)!important}
@media (prefers-reduced-motion:reduce){body.site-search-mode .scroll-container.site-search-sheet,body.site-search-closing .scroll-container.site-search-sheet{transition-duration:.01ms!important}}

/* 视频播放头部：保持透明，只保留轻微的底部渐变和布局 */
.site-player-header{position:relative;top:auto;z-index:6;height:62px;margin-bottom:-62px;padding:12px 16px 0;box-sizing:border-box;background:linear-gradient(115deg,rgba(15,23,42,0),rgba(15,23,42,0) 70%,transparent);border-bottom:0;border-color:transparent;box-shadow:none;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.site-player-shell.is-dark .site-player-header,body.site-dark-mode .site-player-header,body.site-dark-mode .site-player-shell.is-dark .site-player-header{background:linear-gradient(115deg,rgba(15,23,42,0),rgba(15,23,42,0) 70%,transparent)!important;border:0!important;border-color:transparent!important;box-shadow:none!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important}

/* 播放页浅色主题与首页统一：页面外层使用 #f1f1f1，内容卡片使用 #fff */
.site-player-overlay{background:#f1f1f1!important}
.site-player-shell{background:#fff!important;color:#111827}
.site-player-action-bar,.site-player-section{background:#fff!important}
.site-player-divider{background:#f1f1f1!important}
body.site-dark-mode .site-player-overlay{background:#09090b!important}
body.site-dark-mode .site-player-shell{background:#09090b!important}

/* 搜索只保留底部上移动画，禁用 Vue 原来的横向/旧切换动画 */
.title-search-swap-enter-active,.title-search-swap-leave-active{transition:opacity .18s ease!important}
.title-search-swap-enter-from,.title-search-swap-leave-to{opacity:0!important;transform:none!important}
body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{pointer-events:none!important;transition:opacity .22s ease,transform .52s cubic-bezier(.16,1,.3,1),visibility 0s linear .52s!important}
body.site-search-mode .scroll-container.site-search-sheet .search-prompt,body.site-search-mode .scroll-container.site-search-sheet .empty-search-box,body.site-search-closing .scroll-container.site-search-sheet .search-prompt,body.site-search-closing .scroll-container.site-search-sheet .empty-search-box{display:none!important;visibility:hidden!important;opacity:0!important}

/* 筛选抽屉改为不透明主题色，移除深色毛玻璃块 */
body:has(.advanced-filter-panel.open) #app::after{background:rgba(15,23,42,.42)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.advanced-filter-panel.site-bottom-sheet-filter.open{background:#fff!important;box-shadow:0 -18px 48px rgba(15,23,42,.16)!important}
.site-filter-sheet-header,.site-filter-sheet-footer{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
body.site-dark-mode .advanced-filter-panel.site-bottom-sheet-filter.open{background:#18181b!important;border-color:#2a2d35!important;box-shadow:0 -18px 48px rgba(0,0,0,.45)!important}

/* 筛选抽屉始终由面板自己接收纵向触摸滚动，遮罩只负责阻挡背景，不负责关闭 */
.advanced-filter-panel.site-bottom-sheet-filter.open{overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain; -webkit-overflow-scrolling:touch;touch-action:pan-y}
.site-filter-sheet-chrome,.site-filter-sheet-chrome *{touch-action:manipulation}

/* 搜索抽屉只从底部进入，初始状态不可见且不参与点击 */
body.site-search-mode .scroll-container.site-search-sheet,body.site-search-closing .scroll-container.site-search-sheet{visibility:hidden!important}
body.site-search-mode .scroll-container.site-search-sheet.site-search-sheet-open{visibility:visible!important}

/* 搜索抽屉只允许纵向入场：用左右定位居中，彻底取消水平 translate */
body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{left:0!important;right:0!important;width:min(calc(100% - 24px),600px)!important;margin:0 auto!important;transform:translate3d(0,100%,0)!important}
body.site-search-mode #app .scroll-container.site-search-sheet.site-search-sheet-open{transform:translate3d(0,0,0)!important}
body.site-dark-mode .site-filter-sheet-header{background:#18181b!important;border-bottom-color:#2a2d35!important;box-shadow:none!important}
body.site-dark-mode .site-filter-sheet-footer{background:#18181b!important;border-top-color:#2a2d35!important}

/* 移除旧 Vue 搜索框的可见输出，仅保留隐藏桥接节点供搜索接口使用 */
body.site-search-mode .search-container .search-bar-wrapper[data-site-search-legacy-hidden="1"],body.site-search-closing .search-container .search-bar-wrapper[data-site-search-legacy-hidden="1"],body.site-search-mode .search-container .search-input[data-site-search-legacy-hidden="1"]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}
.site-search-native-search{display:none;align-items:center;width:100%;gap:10px;animation:site-search-native-fade .18s ease both}
body.site-search-mode .site-search-native-search{display:flex}
body.site-search-closing .site-search-native-search{display:none}
.site-search-native-input-group{position:relative;flex:1 1 auto;min-width:0}
.site-search-native-input-group>svg{position:absolute;top:50%;left:18px;width:24px;height:24px;fill:none;stroke:#91a4c0;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;transform:translateY(-50%)}
.site-search-native-input{width:100%;height:56px;box-sizing:border-box;padding:0 16px 0 50px;color:#334155;font-size:16px;font-weight:650;background:#f0f3f8;border:1px solid transparent;border-radius:18px;outline:0;box-shadow:inset 0 2px 7px rgba(100,116,139,.08);transition:background .24s ease,border-color .24s ease,box-shadow .24s ease}
.site-search-native-input:focus{background:#fff;border-color:rgba(124,106,239,.24);box-shadow:0 0 0 4px rgba(124,106,239,.12),inset 0 2px 7px rgba(100,116,139,.06)}
.site-search-native-input::placeholder{color:#94a3b8;font-weight:600}
.site-search-native-cancel{flex:0 0 auto;padding:8px 2px;color:#6758d9;font-size:16px;font-weight:850;line-height:1;background:transparent;border:0;cursor:pointer;transition:color .2s ease,transform .2s ease}
.site-search-native-cancel:hover{color:#5143bf;transform:translateY(-1px)}
body.site-dark-mode .site-search-native-input{color:#e5e7eb;background:#242831;border-color:rgba(255,255,255,.06);box-shadow:inset 0 2px 7px rgba(0,0,0,.18)}
body.site-dark-mode .site-search-native-input:focus{background:#2b303a;border-color:rgba(167,139,250,.35);box-shadow:0 0 0 4px rgba(139,92,246,.16),inset 0 2px 7px rgba(0,0,0,.12)}
body.site-dark-mode .site-search-native-input::placeholder{color:#8f96a3}
body.site-dark-mode .site-search-native-input-group>svg{stroke:#a5b4cf}
body.site-dark-mode .site-search-native-cancel{color:#b4a7ff}
@keyframes site-search-native-fade{from{opacity:0}to{opacity:1}}

/* 防止 Vue 切换搜索状态时，旧搜索框在脚本接管前闪现一帧 */
html:has(.search-input) .search-container>.search-bar-wrapper,html:has(.search-input) .search-container .search-input,html:has(.search-input) .search-prompt,html:has(.search-input) .empty-search-box{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}
html:has(.search-input) .site-search-native-search{display:flex}

/* 点击搜索后，在 Vue 更新 DOM 之前立即锁住旧搜索区域 */
body.site-search-preparing .search-container>*{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
body.site-search-preparing .search-prompt,body.site-search-preparing .empty-search-box{display:none!important}

/* 打包入口已移除旧搜索组件，桥接节点只负责承接原有搜索状态，不参与视觉显示 */
.site-search-bridge{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.site-search-bridge-input,.site-search-bridge-cancel,.site-search-bridge-request{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
html:has(.site-search-bridge-input) .site-search-native-search{display:flex}

/* 请求入库：现代卡片式弹窗，浅色与深色主题统一 */
body:has(.request-modal) .modal-overlay{z-index:13000;background:rgba(15,23,42,.42);backdrop-filter:blur(12px) saturate(120%);-webkit-backdrop-filter:blur(12px) saturate(120%);padding:20px;box-sizing:border-box}
body:has(.request-modal) .request-modal{position:relative;width:min(100%,560px)!important;max-width:560px!important;margin:0!important;padding:38px 30px 30px!important;box-sizing:border-box;color:#172033;background:#fff!important;border:1px solid rgba(226,232,240,.92);border-radius:24px!important;box-shadow:0 28px 80px rgba(15,23,42,.24),inset 0 1px 0 rgba(255,255,255,.82);overflow:hidden;animation:site-request-modal-in .38s cubic-bezier(.16,1,.3,1) both}
body:has(.request-modal) .request-modal::before{position:absolute;top:0;right:0;left:0;height:132px;content:'';background:linear-gradient(135deg,rgba(99,102,241,.11),rgba(167,139,250,.06) 52%,transparent);pointer-events:none}
body:has(.request-modal) .request-modal h2{position:relative;display:flex;align-items:center;gap:14px;margin:0;color:#172033;font-size:26px;font-weight:900;line-height:1.15;letter-spacing:-.02em}
body:has(.request-modal) .request-modal h2::before{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;flex:0 0 58px;color:#fff;font-size:27px;background:linear-gradient(135deg,#6366f1,#7c3aed);border-radius:18px;box-shadow:0 12px 22px rgba(99,102,241,.28);content:'🚀'}
body:has(.request-modal) .request-modal h2::after{position:absolute;top:60px;left:72px;color:#72809a;font-size:13px;font-weight:650;letter-spacing:.02em;content:'告诉我们您想看什么，我们会尽快收录'}
body:has(.request-modal) .request-modal .close-btn{position:absolute;top:22px;right:22px;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;color:#91a0b8;font-size:29px;font-weight:400;line-height:1;background:rgba(248,250,252,.9);border-radius:50%;cursor:pointer;transition:color .2s ease,background .2s ease,transform .2s ease}
body:has(.request-modal) .request-modal .close-btn:hover{color:#4f46e5;background:#eef2ff;transform:rotate(8deg)}
body:has(.request-modal) .request-modal .request-keywords{position:relative;margin:50px 0 26px!important;padding:22px 20px!important;color:#52617a;font-size:16px;font-weight:650;line-height:1.55;text-align:center;background:#f8fafc!important;border:1px solid #e8edf5;border-radius:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
body:has(.request-modal) .request-modal .request-keywords strong{display:inline-block;margin:0 3px;color:#5b5cf6;font-weight:900;background:linear-gradient(180deg,transparent 58%,rgba(129,140,248,.18) 58%)}
body:has(.request-modal) .request-modal .type-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 28px!important}
body:has(.request-modal) .request-modal .type-selector button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:98px;padding:14px 8px!important;color:#687b99;font-size:15px;font-weight:800;line-height:1.2;background:#fff;border:1px solid #e5ebf4;border-radius:16px;box-shadow:0 4px 12px rgba(15,23,42,.025);cursor:pointer;transition:color .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease,transform .22s ease}
body:has(.request-modal) .request-modal .type-selector button::before{display:block;margin-bottom:9px;font-size:29px;font-weight:500;line-height:1;color:#7185a4;transition:color .22s ease,transform .22s ease}
body:has(.request-modal) .request-modal .type-selector button::after{position:absolute;top:7px;right:7px;display:flex;align-items:center;justify-content:center;width:18px;height:18px;color:#fff;font-size:12px;font-weight:900;background:#6366f1;border-radius:50%;content:'✓';opacity:0;transform:scale(.5);transition:opacity .2s ease,transform .2s ease}
body:has(.request-modal) .request-modal .type-selector button:nth-child(1)::before{content:'▦'}
body:has(.request-modal) .request-modal .type-selector button:nth-child(2)::before{content:'▣'}
body:has(.request-modal) .request-modal .type-selector button:nth-child(3)::before{content:'✦'}
body:has(.request-modal) .request-modal .type-selector button:nth-child(4)::before{content:'♬'}
body:has(.request-modal) .request-modal .type-selector button:nth-child(5)::before{content:'♫'}
body:has(.request-modal) .request-modal .type-selector button:hover{color:#5146e5;background:#f8f8ff;border-color:#c7c9ff;box-shadow:0 10px 20px rgba(99,102,241,.1);transform:translateY(-2px)}
body:has(.request-modal) .request-modal .type-selector button:hover::before,body:has(.request-modal) .request-modal .type-selector button.active::before{color:#635bff;transform:scale(1.08)}
body:has(.request-modal) .request-modal .type-selector button.active{color:#5146e5;background:linear-gradient(180deg,#f8f8ff,#f1f2ff);border:2px solid #635bff;box-shadow:0 10px 24px rgba(99,102,241,.15),0 0 0 3px rgba(99,102,241,.08)}
body:has(.request-modal) .request-modal .type-selector button.active::after{opacity:1;transform:scale(1)}
body:has(.request-modal) .request-modal>.action-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:58px;margin:0!important;padding:14px 20px!important;color:#fff;font-size:17px;font-weight:850;line-height:1;background:#0f172a!important;border:0;border-radius:15px;box-shadow:0 12px 20px rgba(15,23,42,.2);cursor:pointer;transition:background .2s ease,box-shadow .2s ease,transform .2s ease}
body:has(.request-modal) .request-modal>.action-btn::before{margin-right:10px;font-size:22px;font-weight:400;content:'✈'}
body:has(.request-modal) .request-modal>.action-btn:hover:not(:disabled){background:#1e293b!important;box-shadow:0 16px 26px rgba(15,23,42,.25);transform:translateY(-2px)}
body:has(.request-modal) .request-modal>.action-btn:active:not(:disabled){transform:scale(.99)}
body:has(.request-modal) .request-modal>.action-btn:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}
@keyframes site-request-modal-in{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}

/* 请求入库与搜索求片卡片的深色主题 */
body.site-dark-mode:has(.request-modal) .modal-overlay{background:rgba(3,7,18,.78)}
body.site-dark-mode:has(.request-modal) .request-modal{color:#f4f4f5;background:#18181b!important;border-color:rgba(255,255,255,.1);box-shadow:0 28px 90px rgba(0,0,0,.62),inset 0 1px 0 rgba(255,255,255,.04)}
body.site-dark-mode:has(.request-modal) .request-modal::before{background:linear-gradient(135deg,rgba(99,102,241,.24),rgba(129,140,248,.08) 52%,transparent)}
body.site-dark-mode:has(.request-modal) .request-modal h2{color:#f4f4f5}
body.site-dark-mode:has(.request-modal) .request-modal h2::after{color:#a1a1aa}
body.site-dark-mode:has(.request-modal) .request-modal .close-btn{color:#a1a1aa;background:#27272a}
body.site-dark-mode:has(.request-modal) .request-modal .close-btn:hover{color:#e0e7ff;background:#312e81}
body.site-dark-mode:has(.request-modal) .request-modal .request-keywords{color:#c4c7d0;background:#232329!important;border-color:rgba(255,255,255,.09);box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
body.site-dark-mode:has(.request-modal) .request-modal .request-keywords strong{color:#a5b4fc;background:linear-gradient(180deg,transparent 58%,rgba(129,140,248,.25) 58%)}
body.site-dark-mode:has(.request-modal) .request-modal .type-selector button{color:#a1a1aa;background:#202023;border-color:rgba(255,255,255,.1);box-shadow:none}
body.site-dark-mode:has(.request-modal) .request-modal .type-selector button::before{color:#9ca3af}
body.site-dark-mode:has(.request-modal) .request-modal .type-selector button:hover{color:#c4b5fd;background:#29234a;border-color:rgba(129,140,248,.52);box-shadow:0 10px 22px rgba(0,0,0,.25)}
body.site-dark-mode:has(.request-modal) .request-modal .type-selector button:hover::before,body.site-dark-mode:has(.request-modal) .request-modal .type-selector button.active::before{color:#a5b4fc}
body.site-dark-mode:has(.request-modal) .request-modal .type-selector button.active{color:#e0e7ff;background:linear-gradient(180deg,#30265a,#282044);border-color:#818cf8;box-shadow:0 10px 25px rgba(79,70,229,.22),0 0 0 3px rgba(129,140,248,.12)}
body.site-dark-mode:has(.request-modal) .request-modal>.action-btn{color:#111827;background:#f4f4f5!important;box-shadow:0 12px 22px rgba(0,0,0,.3)}
body.site-dark-mode:has(.request-modal) .request-modal>.action-btn:hover:not(:disabled){background:#fff!important;box-shadow:0 16px 28px rgba(0,0,0,.38)}
body.site-dark-mode .site-search-request-after{background:linear-gradient(135deg,#3730a3,#4338ca);border:1px solid rgba(165,180,252,.25);box-shadow:0 15px 32px rgba(0,0,0,.34)}
body.site-dark-mode .site-search-request-after .site-search-request-icon{background:rgba(255,255,255,.16)}

/* 视频播放页深色主题：统一为深石墨层次，避免深色页面出现白色内容卡片 */
body.site-dark-mode .site-player-overlay{background:#090a0d!important;color:#f4f4f5}
body.site-dark-mode .site-player-shell{background:#111318!important;color:#e5e7eb}
body.site-dark-mode .site-player-shell .site-player-action-bar,body.site-dark-mode .site-player-shell .site-player-section{color:#e5e7eb;background:#171a20!important;border-color:#2a2f38!important}
body.site-dark-mode .site-player-shell .site-player-divider{background:#0d0f13!important}
body.site-dark-mode .site-player-shell .site-player-now-playing{color:#e5e7eb}
body.site-dark-mode .site-player-shell .site-player-now-icon{color:#a5b4fc;background:#292448}
body.site-dark-mode .site-player-shell .site-player-episode-button,body.site-dark-mode .site-player-shell .site-player-sort-button,body.site-dark-mode .site-player-shell .site-player-tags span,body.site-dark-mode .site-player-shell .site-player-episodes button{color:#d4d4d8;background:#23262d;border-color:#343944}
body.site-dark-mode .site-player-shell .site-player-episode-button:hover,body.site-dark-mode .site-player-shell .site-player-sort-button:hover,body.site-dark-mode .site-player-shell .site-player-episodes button:hover{color:#c4b5fd;background:#302b4b;border-color:#6366f1}
body.site-dark-mode .site-player-shell .site-player-info-main h2,body.site-dark-mode .site-player-shell .site-player-section-title h3{color:#f4f4f5}
body.site-dark-mode .site-player-shell .site-player-details,body.site-dark-mode .site-player-shell .site-player-section-title span{color:#a1a1aa}
body.site-dark-mode .site-player-shell .site-player-details strong{color:#e5e7eb}
body.site-dark-mode .site-player-shell .site-player-tags{color:#a1a1aa}
body.site-dark-mode .site-player-shell .site-player-recommendation-cover{background:#23262d}
body.site-dark-mode .site-player-shell .site-player-recommendation-title{color:#e5e7eb}
body.site-dark-mode .site-player-shell .site-player-video-backdrop{filter:blur(14px) brightness(.64) saturate(.9);opacity:.72}
body.site-dark-mode .site-player-shell .site-player-video.is-cover::after{background:linear-gradient(to top,rgba(0,0,0,.54),rgba(0,0,0,.08) 62%,transparent)}
body.site-dark-mode .site-player-shell .site-player-header .site-player-title{color:#f4f4f5}
body.site-dark-mode .site-player-shell .site-player-header>button[data-player-action="close"],body.site-dark-mode .site-player-shell .site-player-header .site-player-header-actions button{color:#f4f4f5;background:rgba(24,24,27,.66);border-color:rgba(255,255,255,.14)}
body.site-dark-mode .site-player-shell .site-player-header>button[data-player-action="close"]:hover,body.site-dark-mode .site-player-shell .site-player-header .site-player-header-actions button:hover{background:#27272a}

@media (max-width:480px){
  body:has(.request-modal) .modal-overlay{padding:14px}
  body:has(.request-modal) .request-modal{padding:30px 18px 20px!important;border-radius:22px!important}
  body:has(.request-modal) .request-modal h2{gap:11px;font-size:23px}
  body:has(.request-modal) .request-modal h2::before{width:50px;height:50px;flex-basis:50px;font-size:23px;border-radius:15px}
  body:has(.request-modal) .request-modal h2::after{top:34px;left:61px;font-size:11px}
  body:has(.request-modal) .request-modal .close-btn{top:17px;right:17px;width:32px;height:32px;font-size:25px}
  body:has(.request-modal) .request-modal .request-keywords{margin-top:42px!important;margin-bottom:20px!important;padding:17px 12px!important;font-size:14px}
  body:has(.request-modal) .request-modal .type-selector{gap:10px;margin-bottom:22px!important}
  body:has(.request-modal) .request-modal .type-selector button{min-height:84px;padding:10px 5px!important;font-size:13px}
  body:has(.request-modal) .request-modal .type-selector button::before{margin-bottom:6px;font-size:24px}
  body:has(.request-modal) .request-modal>.action-btn{min-height:52px;font-size:16px}
}

/* 三类面板统一：底部约 70% 高度，首页通过同一层半透明遮罩保留可见 */
.site-search-backdrop,.playlist-viewer-overlay,.site-player-overlay{background:rgba(0,0,0,.64)!important;backdrop-filter:blur(6px) saturate(110%);-webkit-backdrop-filter:blur(6px) saturate(110%)}
body:has(.advanced-filter-panel.open) #app::after{background:rgba(0,0,0,.64)!important;backdrop-filter:blur(6px) saturate(110%)!important;-webkit-backdrop-filter:blur(6px) saturate(110%)!important}

body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{height:70vh!important;max-height:70vh!important}
.advanced-filter-panel.site-bottom-sheet-filter,.site-filter-sheet-chrome{height:70vh!important;max-height:70vh!important}
.advanced-filter-panel.site-bottom-sheet-filter.open,.advanced-filter-panel.open{height:70vh!important;max-height:70vh!important}
.playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist{height:70vh!important;max-height:70vh!important}
.site-player-overlay .site-player-shell{height:70vh!important;max-height:70vh!important;min-height:0;border-radius:28px 28px 0 0;overflow-y:auto}

body.site-dark-mode .site-search-backdrop,body.site-dark-mode .playlist-viewer-overlay,body.site-dark-mode .site-player-overlay{background:rgba(0,0,0,.64)!important}
body.site-dark-mode .site-player-overlay .site-player-shell{background:#111318!important}

@media (max-width:600px){
  body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{height:70vh!important;max-height:70vh!important}
  .advanced-filter-panel.site-bottom-sheet-filter,.site-filter-sheet-chrome,.advanced-filter-panel.open{height:70vh!important;max-height:70vh!important}
  .playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist{height:70vh!important;max-height:70vh!important}
  .site-player-overlay .site-player-shell{height:70vh!important;max-height:70vh!important}
}

/* 最新统一高度：所有底部面板保持约 80vh，首页区域保留在半透明遮罩之后 */
body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{height:80vh!important;max-height:80vh!important}
.advanced-filter-panel.site-bottom-sheet-filter,.site-filter-sheet-chrome,.advanced-filter-panel.site-bottom-sheet-filter.open,.advanced-filter-panel.open{height:80vh!important;max-height:80vh!important}
.playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist{height:80vh!important;max-height:80vh!important}
.site-player-overlay .site-player-shell{height:80vh!important;max-height:80vh!important}

/* 搜索结果提示按指定样式统一为深色卡片 */
body.site-search-mode.site-search-has-query .search-result-indicator{margin:0 16px;border:0;border-radius:14px;background:#242831;color:#ffffff}

/* 最终统一：搜索、筛选、播放列表、视频播放页底部面板约 90vh */
.advanced-filter-panel.site-bottom-sheet-filter,.site-filter-sheet-chrome,.advanced-filter-panel.site-bottom-sheet-filter.open,.advanced-filter-panel.open{height:90vh!important;max-height:90vh!important}
.playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist{height:90vh!important;max-height:90vh!important}
.site-player-overlay .site-player-shell{height:90vh!important;max-height:90vh!important}

/* 搜索抽屉降低遮罩浓度和模糊，让后面的首页保持可见 */
body.site-dark-mode .site-search-backdrop{background:rgba(0,0,0,.18)!important;backdrop-filter:blur(4px) saturate(115%)!important;-webkit-backdrop-filter:blur(4px) saturate(115%)!important}

/* 搜索遮罩使用搜索前保存的首页 DOM，效果与影视播放页一致 */
.site-search-backdrop{position:absolute!important;overflow:hidden}
.site-search-backdrop::before{display:none!important;content:none!important}
.site-search-home-preview{position:absolute;inset:-28px;z-index:0;overflow:hidden;filter:blur(16px);opacity:.76;transform:scale(1.06);transform-origin:center;pointer-events:none;will-change:filter,transform}
.site-search-home-preview-source{padding:0!important}
.site-search-backdrop::after{position:absolute;inset:0;z-index:1;content:'';background:rgba(0,0,0,.12);pointer-events:none}

/* 抽屉本身保持半透明，让首页封面以柔和的玻璃质感透出 */
body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{background:rgba(251,252,254,.82)!important;border-color:rgba(255,255,255,.62)!important;backdrop-filter:blur(14px) saturate(118%);-webkit-backdrop-filter:blur(14px) saturate(118%)}
body.site-search-mode .top-bar,body.site-search-closing .top-bar{background:rgba(251,252,254,.74)!important;border-bottom-color:rgba(226,232,240,.46)!important;backdrop-filter:blur(14px) saturate(118%);-webkit-backdrop-filter:blur(14px) saturate(118%)}
body.site-dark-mode.site-search-mode #app .scroll-container.site-search-sheet,body.site-dark-mode.site-search-closing #app .scroll-container.site-search-sheet{background:rgba(21,23,28,.78)!important;border-color:rgba(255,255,255,.1)!important}
body.site-dark-mode.site-search-mode .top-bar,body.site-dark-mode.site-search-closing .top-bar{background:rgba(21,23,28,.72)!important;border-bottom-color:rgba(255,255,255,.08)!important}

/* 小屏搜索面板横向铺满，避免左右露出遮罩背景 */
@media (max-width:600px){
  body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{left:0!important;right:0!important;width:100vw!important;max-width:100vw!important;margin-right:0!important;margin-left:0!important;border-right:0!important;border-left:0!important;border-radius:28px 28px 0 0!important}
}

/* 搜索抽屉采用与视频播放页一致的透明度和上移动画参数 */
body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{opacity:.55!important;transition:opacity .46s ease,transform .46s cubic-bezier(.16,1,.3,1),visibility 0s linear .46s!important}

/* 筛选遮罩只阻挡首页，不模糊/覆盖筛选抽屉本身，保证选项可点击 */
body.site-filter-sheet-open #app::after,body:has(.advanced-filter-panel.open) #app::after{display:none!important;content:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;pointer-events:none!important}
body.site-filter-sheet-open #app:not(:has(#app))::after,body:has(.advanced-filter-panel.open) #app:not(:has(#app))::after{position:absolute!important;inset:0!important;z-index:12000;display:block!important;content:''!important;background:rgba(0,0,0,.22)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;pointer-events:auto!important}
body.site-dark-mode.site-filter-sheet-open #app:not(:has(#app))::after{background:rgba(0,0,0,.28)!important}
body.site-filter-sheet-open::before{display:none!important;content:none!important;pointer-events:none!important}
.advanced-filter-panel.site-bottom-sheet-filter.open{z-index:12003!important;pointer-events:auto!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important}
.advanced-filter-panel.site-bottom-sheet-filter.open *{pointer-events:auto}
.site-filter-sheet-chrome{z-index:12004!important;pointer-events:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.site-filter-sheet-chrome .site-filter-sheet-header,.site-filter-sheet-chrome .site-filter-sheet-footer{pointer-events:auto!important}

/* 请求入库成功提示置于所有抽屉和弹窗之上 */
.notification-toast{z-index:14000!important}
body.site-dark-mode .notification-toast{color:#111827!important;background:#f4f4f5!important;box-shadow:0 16px 35px rgba(0,0,0,.4)!important}
/* Video cover play button: layered water ripples and a soft play hint. */
.site-player-overlay:fullscreen,.site-player-overlay.is-page-fullscreen{position:fixed!important;inset:0!important;display:block!important;width:100vw!important;height:100vh!important;height:100dvh!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;overflow:hidden!important;background:#000!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.site-player-overlay:fullscreen .site-player-shell,.site-player-overlay.is-page-fullscreen .site-player-shell{width:100vw!important;max-width:none!important;height:100vh!important;height:100dvh!important;max-height:none!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow-y:auto!important}
.site-player-overlay:fullscreen .site-player-video,.site-player-overlay.is-page-fullscreen .site-player-video{border-radius:0!important}
.site-player-shell{border:0!important;border-radius:0!important;box-shadow:none!important}
.site-player-media{border:0!important;scrollbar-width:none!important}
.site-player-media::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
body.site-dark-mode .site-player-overlay:fullscreen,body.site-dark-mode .site-player-overlay.is-page-fullscreen{background:#000!important}
.site-player-play-main{isolation:isolate;overflow:visible;border:1px solid rgba(255,255,255,.48);background:transparent!important;box-shadow:0 8px 24px rgba(0,0,0,.18);backdrop-filter:none;-webkit-backdrop-filter:none;transition:opacity .28s ease,border-color .28s ease,box-shadow .28s ease,transform .28s cubic-bezier(.16,1,.3,1);animation:site-player-play-breathe 2.4s ease-in-out infinite}
.site-player-play-main::before,.site-player-play-main::after{display:none;content:none;animation:none}
.site-player-play-main svg{position:relative;top:0;left:0;z-index:3;margin-left:0;color:#fff;filter:drop-shadow(0 2px 5px rgba(0,0,0,.45));transform:translateX(1px)}
.site-player-play-ripple{position:absolute;inset:-2px;z-index:1;display:block;box-sizing:border-box;border:0;border-radius:50%;background:radial-gradient(circle,transparent 0 56%,rgba(255,255,255,.18) 60%,rgba(255,255,255,.07) 66%,transparent 72%);opacity:0;filter:blur(.5px);pointer-events:none;will-change:transform,opacity;animation:site-player-play-ripple 3s cubic-bezier(.16,1,.3,1) infinite}
.site-player-play-ripple:nth-of-type(2){animation-delay:1s}
.site-player-play-ripple:nth-of-type(3){animation-delay:2s}
.site-player-play-tooltip{position:absolute;bottom:calc(100% + 14px);left:50%;z-index:4;display:inline-flex;align-items:center;gap:6px;padding:7px 10px 7px 8px;color:rgba(255,255,255,.94);font-size:11px;font-weight:600;line-height:1;text-align:center;white-space:nowrap;background:rgba(9,9,11,.68);border:0;border-radius:999px;box-shadow:0 8px 20px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.12);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);opacity:1;transform:translate(-50%,0);transition:opacity .28s ease,transform .28s cubic-bezier(.16,1,.3,1);pointer-events:none;will-change:transform,opacity;animation:site-player-play-tooltip-float 2.8s ease-in-out infinite}
.site-player-play-tooltip-dot{position:relative;display:inline-block;width:6px;height:6px;flex:0 0 6px;background:#fff;border-radius:50%;box-shadow:0 0 0 0 rgba(255,255,255,.5);animation:site-player-play-tooltip-ping 1.8s ease-out infinite}
.site-player-play-main:hover{background:transparent!important;border-color:rgba(255,255,255,.72);transform:translate(-50%,-50%) translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.26),0 0 18px 3px rgba(255,255,255,.13);animation:none}
.site-player-play-main:hover .site-player-play-tooltip{opacity:0;transform:translate(-50%,8px) scale(.96);animation-play-state:paused}
.site-player-video.is-playing .site-player-play-main,.site-player-video.is-playing .site-player-play-main .site-player-play-ripple,.site-player-video.is-playing .site-player-play-main .site-player-play-tooltip,.site-player-video.is-playing .site-player-play-main .site-player-play-tooltip-dot{animation:none}
.site-player-video.is-playing .site-player-play-tooltip{opacity:0;transform:translate(-50%,8px) scale(.96)}
@keyframes site-player-play-ripple{0%{opacity:0;transform:scale(.9)}12%{opacity:.7}72%{opacity:.14}100%{opacity:0;transform:scale(1.82)}}
@keyframes site-player-play-breathe{0%,100%{box-shadow:0 8px 24px rgba(0,0,0,.24),0 0 0 0 rgba(255,255,255,.12)}50%{box-shadow:0 10px 30px rgba(0,0,0,.3),0 0 20px 4px rgba(255,255,255,.16)}}
@keyframes site-player-play-tooltip-float{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,-3px)}}
@keyframes site-player-play-tooltip-ping{0%,65%,100%{box-shadow:0 0 0 0 rgba(255,255,255,.48)}30%{box-shadow:0 0 0 5px rgba(255,255,255,0)}}
@media (prefers-reduced-motion:reduce){.site-player-play-main,.site-player-play-ripple,.site-player-play-tooltip,.site-player-play-tooltip-dot{animation:none!important}}

/* 播放列表顶部与影视播放页统一：下收按钮、居中标题、右侧关闭按钮 */
.playlist-viewer-content.site-modern-playlist .playlist-header{position:sticky;top:0;z-index:6;display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;height:62px;min-height:62px;box-sizing:border-box;padding:12px 16px 0;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.42) 70%,transparent);border-bottom:0!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.playlist-viewer-content.site-modern-playlist::before{top:9px;width:42px;height:5px;background:rgba(148,163,184,.34);z-index:7}
.playlist-viewer-content.site-modern-playlist .playlist-header h3{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden;margin:0;color:#111827;font-size:16px;font-weight:800;line-height:1.2;text-align:center;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 5px rgba(255,255,255,.42)}
.playlist-viewer-content.site-modern-playlist .site-playlist-count{flex:0 0 auto;margin-left:6px;color:#64748b;background:rgba(241,245,249,.82)}
.playlist-viewer-content.site-modern-playlist .close-btn-text{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}
.playlist-viewer-content.site-modern-playlist .site-playlist-collapse{grid-column:1;grid-row:1;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin:0;padding:0;color:#334155;background:rgba(255,255,255,.62);border:1px solid rgba(15,23,42,.1);border-radius:50%;box-shadow:0 5px 14px rgba(15,23,42,.12);cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}
.playlist-viewer-content.site-modern-playlist .site-playlist-collapse:hover{color:#0f172a;background:rgba(255,255,255,.9);transform:translateY(-1px)}
.playlist-viewer-content.site-modern-playlist .site-playlist-collapse svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.playlist-viewer-content.site-modern-playlist .site-playlist-close-icon{grid-column:3;grid-row:1;width:38px;height:38px;flex:0 0 38px;margin:0 0 0 auto;padding:8px;color:#64748b;background:rgba(255,255,255,.62);border:1px solid rgba(15,23,42,.1);box-shadow:0 5px 14px rgba(15,23,42,.1)}
.playlist-viewer-content.site-modern-playlist .site-playlist-close-icon:hover{color:#334155;background:rgba(255,255,255,.9);transform:translateY(-1px) rotate(6deg)}
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-header{background:linear-gradient(180deg,rgba(0,0,0,.76),rgba(0,0,0,.32) 70%,transparent);border-bottom:0!important}
body.site-dark-mode .playlist-viewer-content.site-modern-playlist::before{background:rgba(255,255,255,.5)}
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-header h3{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.48)}
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .site-playlist-count{color:#d4d4d8;background:rgba(39,39,42,.72)}
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .site-playlist-collapse,body.site-dark-mode .playlist-viewer-content.site-modern-playlist .site-playlist-close-icon{color:#fff;background:rgba(15,23,42,.52);border-color:rgba(255,255,255,.16);box-shadow:0 5px 14px rgba(0,0,0,.18);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .site-playlist-collapse:hover,body.site-dark-mode .playlist-viewer-content.site-modern-playlist .site-playlist-close-icon:hover{color:#fff;background:rgba(15,23,42,.76)}
@media (max-width:600px){.playlist-viewer-content.site-modern-playlist .playlist-header{grid-template-columns:38px minmax(0,1fr) 38px;height:62px;min-height:62px;padding:12px 12px 0}.playlist-viewer-content.site-modern-playlist .playlist-header h3{font-size:16px}.playlist-viewer-content.site-modern-playlist .site-playlist-collapse,.playlist-viewer-content.site-modern-playlist .site-playlist-close-icon{width:38px;height:38px;flex-basis:38px}}

/* 搜索与筛选顶部统一影视播放页的抽屉顶栏 */
body.site-search-mode .top-bar,body.site-search-closing .top-bar{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;min-height:78px;height:78px;box-sizing:border-box;gap:10px;padding:18px 16px 4px;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.42) 70%,transparent);border-bottom:0!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
body.site-search-mode .top-bar::before,body.site-search-closing .top-bar::before{position:absolute;top:9px;left:50%;width:42px;height:5px;border-radius:999px;background:rgba(148,163,184,.34);content:'';transform:translateX(-50%)}
body.site-search-mode .top-bar .site-search-collapse,body.site-search-closing .top-bar .site-search-collapse{grid-column:1;grid-row:1;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin:0;padding:0;color:#334155;background:rgba(255,255,255,.62);border:1px solid rgba(15,23,42,.1);border-radius:50%;box-shadow:0 5px 14px rgba(15,23,42,.12);cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}
body.site-search-mode .top-bar .site-search-collapse:hover,body.site-search-closing .top-bar .site-search-collapse:hover{color:#0f172a;background:rgba(255,255,255,.9);transform:translateY(-1px)}
body.site-search-mode .top-bar .site-search-collapse svg,body.site-search-closing .top-bar .site-search-collapse svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
body.site-search-mode .top-bar .search-container,body.site-search-closing .top-bar .search-container{grid-column:2;grid-row:1;min-width:0;margin:0}
body.site-search-mode .top-bar .top-bar-actions,body.site-search-closing .top-bar .top-bar-actions{grid-column:3;grid-row:1;display:flex;align-items:center;gap:4px;margin:0}
body.site-search-mode .top-bar .site-search-native-search,body.site-search-closing .top-bar .site-search-native-search{min-width:0}
body.site-search-mode .top-bar .site-search-native-input,body.site-search-closing .top-bar .site-search-native-input{height:56px}
body.site-search-mode .top-bar .site-search-native-cancel,body.site-search-closing .top-bar .site-search-native-cancel{padding-right:2px;padding-left:2px}
body.site-search-mode .top-bar .site-global-theme-toggle,body.site-search-closing .top-bar .site-global-theme-toggle{width:38px;height:38px;margin:0;padding:0}
body.site-dark-mode.site-search-mode .top-bar,body.site-dark-mode.site-search-closing .top-bar{background:linear-gradient(180deg,rgba(0,0,0,.76),rgba(0,0,0,.32) 70%,transparent)}
body.site-dark-mode.site-search-mode .top-bar::before,body.site-dark-mode.site-search-closing .top-bar::before{background:rgba(255,255,255,.5)}
body.site-dark-mode.site-search-mode .top-bar .site-search-collapse,body.site-dark-mode.site-search-closing .top-bar .site-search-collapse{color:#fff;background:rgba(15,23,42,.52);border-color:rgba(255,255,255,.16);box-shadow:0 5px 14px rgba(0,0,0,.18);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
body.site-dark-mode.site-search-mode .top-bar .site-search-collapse:hover,body.site-dark-mode.site-search-closing .top-bar .site-search-collapse:hover{color:#fff;background:rgba(15,23,42,.76)}

.site-filter-sheet-chrome .site-filter-sheet-header{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;height:62px;min-height:62px;padding:12px 16px 0;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.42) 70%,transparent);border-bottom:0!important;border-radius:28px 28px 0 0;box-shadow:none;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.site-filter-sheet-chrome .site-filter-sheet-header::before{top:9px;width:42px;height:5px;background:rgba(148,163,184,.34)}
.site-filter-sheet-chrome .site-filter-sheet-title{grid-column:2;grid-row:1;min-width:0;overflow:hidden;color:#111827;font-size:16px;font-weight:800;line-height:1.2;text-align:center;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 5px rgba(255,255,255,.42)}
.site-filter-sheet-chrome .site-filter-sheet-actions{grid-column:3;grid-row:1;display:flex;align-items:center;gap:8px;margin:0 0 0 auto}
.site-filter-sheet-chrome .site-filter-sheet-reset{padding:7px 4px;color:#64748b;font-size:13px;font-weight:800}
.site-filter-sheet-chrome .site-filter-sheet-collapse{grid-column:1;grid-row:1;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin:0;padding:0;color:#334155;background:rgba(255,255,255,.62);border:1px solid rgba(15,23,42,.1);border-radius:50%;box-shadow:0 5px 14px rgba(15,23,42,.12);cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}
.site-filter-sheet-chrome .site-filter-sheet-collapse:hover{color:#0f172a;background:rgba(255,255,255,.9);transform:translateY(-1px)}
.site-filter-sheet-chrome .site-filter-sheet-collapse svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
body.site-dark-mode .site-filter-sheet-chrome .site-filter-sheet-header{background:linear-gradient(180deg,rgba(0,0,0,.76),rgba(0,0,0,.32) 70%,transparent);border-bottom:0!important}
body.site-dark-mode .site-filter-sheet-chrome .site-filter-sheet-header::before{background:rgba(255,255,255,.5)}
body.site-dark-mode .site-filter-sheet-chrome .site-filter-sheet-title{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.48)}
body.site-dark-mode .site-filter-sheet-chrome .site-filter-sheet-reset{color:#a1a1aa}
body.site-dark-mode .site-filter-sheet-chrome .site-filter-sheet-collapse{color:#fff;background:rgba(15,23,42,.52);border-color:rgba(255,255,255,.16);box-shadow:0 5px 14px rgba(0,0,0,.18);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
body.site-dark-mode .site-filter-sheet-chrome .site-filter-sheet-collapse:hover{color:#fff;background:rgba(15,23,42,.76)}
@media (max-width:600px){body.site-search-mode .top-bar,body.site-search-closing .top-bar{grid-template-columns:38px minmax(0,1fr) auto;height:78px;min-height:78px;padding-right:12px;padding-left:12px}.site-filter-sheet-chrome .site-filter-sheet-header{grid-template-columns:38px minmax(0,1fr) auto;height:62px;min-height:62px;padding-right:12px;padding-left:12px}}

/* 消息通知：与搜索、播放列表统一的底部抽屉 */
.site-notification-sheet-overlay{position:fixed!important;inset:0!important;z-index:12000!important;display:flex!important;align-items:flex-end!important;justify-content:center!important;padding:0!important;background:rgba(0,0,0,.52)!important;backdrop-filter:blur(7px) saturate(112%)!important;-webkit-backdrop-filter:blur(7px) saturate(112%)!important;overflow:hidden!important;animation:site-notification-backdrop-in .42s ease both}
.site-notification-sheet-content{position:relative!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;width:100%!important;max-width:600px!important;height:92vh!important;max-height:92vh!important;margin:0!important;box-sizing:border-box!important;overflow:hidden!important;color:#172033;background:rgba(255,255,255,.9)!important;border:1px solid rgba(255,255,255,.72)!important;border-bottom:0!important;border-radius:32px 32px 0 0!important;box-shadow:0 -22px 65px rgba(15,23,42,.24)!important;backdrop-filter:blur(18px) saturate(125%)!important;-webkit-backdrop-filter:blur(18px) saturate(125%)!important;animation:site-notification-sheet-in .52s cubic-bezier(.16,1,.3,1) both;will-change:transform,opacity}
.site-notification-sheet-content::before{position:absolute;top:12px;left:50%;z-index:4;width:42px;height:5px;border-radius:999px;background:rgba(148,163,184,.36);content:'';transform:translateX(-50%);pointer-events:none}
.site-notification-sheet-content .modal-header{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;min-height:112px;box-sizing:border-box;padding:30px 22px 16px;border-bottom:1px solid rgba(226,232,240,.72);background:rgba(255,255,255,.42)!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.site-notification-sheet-content .site-notification-legacy-back{display:none!important}
.site-notification-sheet-content .site-notification-title{display:flex;grid-column:1;grid-row:1;color:#172033;font-size:0;font-weight:900;line-height:1.1}
.site-notification-title-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;flex:0 0 48px;margin-right:14px;color:#5b5cf6;background:linear-gradient(145deg,#eef2ff,#e0e7ff);border-radius:50%;box-shadow:0 8px 18px rgba(99,102,241,.14)}
.site-notification-title-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.site-notification-title-copy{display:flex;min-width:0;flex-direction:column;gap:6px}
.site-notification-title-copy strong{overflow:hidden;color:#172033;font-size:22px;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}
.site-notification-title-copy small{color:#8190a8;font-size:13px;font-weight:650;line-height:1.2;white-space:nowrap}
.site-notification-sheet-content .site-notification-read-all{display:inline-flex!important;align-items:center;justify-content:center;gap:5px;grid-column:2;grid-row:1;margin:0 10px 0 12px;padding:8px 4px;color:#5b5cf6;font-size:14px;font-weight:850;line-height:1;background:transparent;border:0;cursor:pointer;white-space:nowrap}
.site-notification-read-all svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.site-notification-read-all:hover{color:#4338ca}
.site-notification-sheet-content .site-notification-close{display:inline-flex;align-items:center;justify-content:center;gap:5px;grid-column:3;grid-row:1;min-height:38px;margin:0;padding:8px 2px 8px 10px;color:#64748b;font-size:16px;font-weight:850;line-height:1;background:transparent;border:0;cursor:pointer;white-space:nowrap}
.site-notification-close svg{display:none;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.site-notification-close:hover{color:#4338ca}
.site-notification-sheet-content .modal-body{position:relative;z-index:1;flex:1 1 auto;min-height:0;overflow-y:auto;padding:0 4px 28px;background:transparent!important;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.48) transparent}
.site-notification-sheet-content .modal-body::-webkit-scrollbar{width:5px}
.site-notification-sheet-content .modal-body::-webkit-scrollbar-thumb{background:rgba(148,163,184,.48);border-radius:999px}
.site-notification-sheet-content .pull-to-refresh-indicator{color:#8190a8;background:transparent}
.site-notification-sheet-content .notification-item-wrapper{position:relative;box-sizing:border-box;background:transparent!important;border-bottom:1px solid rgba(226,232,240,.68)!important;transition:background-color .22s ease}
.site-notification-sheet-content .notification-item-wrapper:hover{background:rgba(248,250,252,.72)!important}
.site-notification-sheet-content .notification-item{display:grid;grid-template-columns:48px minmax(0,1fr);gap:0 12px;align-items:start;min-width:0;box-sizing:border-box;padding:18px 20px 17px 24px;background:transparent!important}
.site-notification-sheet-content .actor-avatar{grid-column:1;width:48px!important;height:48px!important;margin:0!important;border-radius:50%!important;object-fit:cover;box-shadow:0 4px 12px rgba(15,23,42,.1)}
.site-notification-sheet-content .item-content{grid-column:2;min-width:0;padding:3px 0 0;line-height:1.4}
.site-notification-sheet-content .actor-name{display:inline;color:#172033;font-size:15px;font-weight:850;line-height:1.45}
.site-notification-sheet-content .action-text{display:inline;margin:0 0 0 5px;color:#52617a;font-size:15px;line-height:1.45;word-break:break-word}
.site-notification-sheet-content .timestamp{display:block;margin-top:7px;color:#90a0ba;font-size:12px;font-weight:650;line-height:1.2}
.site-notification-sheet-content .post-preview{grid-column:2;min-width:0;padding:11px 38px 0 0}
.site-notification-sheet-content .details-btn{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:56px;box-sizing:border-box;padding:12px 14px 12px 16px;color:#687b99;font-size:14px;font-weight:700;text-align:left;background:rgba(248,250,252,.64)!important;border:1px solid rgba(226,232,240,.78)!important;border-left:5px solid #fb7185!important;border-radius:15px;box-shadow:0 6px 16px rgba(15,23,42,.05);cursor:pointer;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}
.site-notification-sheet-content .details-btn::after{color:#b2bfd1;font-size:25px;font-weight:400;line-height:1;content:'›'}
.site-notification-sheet-content .details-btn:hover{background:rgba(255,255,255,.9)!important;box-shadow:0 9px 20px rgba(15,23,42,.08);transform:translateY(-1px)}
.site-notification-sheet-content .site-notification-item.is-request .details-btn{border-left-color:#38bdf8!important}
.site-notification-sheet-content .site-notification-item.is-like .details-btn{border-left-color:#fb7185!important}
.site-notification-sheet-content .site-notification-item.is-reply .details-btn{border-left-color:#a78bfa!important}
.site-notification-sheet-content .delete-action-wrapper{position:absolute;top:17px;right:14px;z-index:2;margin:0;padding:0;background:transparent!important;opacity:0;transform:translateY(-3px);pointer-events:none;transition:opacity .2s ease,transform .2s ease}
.site-notification-sheet-content .notification-item-wrapper:hover .delete-action-wrapper{opacity:1;transform:translateY(0);pointer-events:auto}
.site-notification-sheet-content .delete-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;box-sizing:border-box;padding:0;color:#94a3b8;font-size:0;background:rgba(255,255,255,.84)!important;border:1px solid rgba(226,232,240,.9)!important;border-radius:50%;box-shadow:0 5px 12px rgba(15,23,42,.08);cursor:pointer;transition:color .2s ease,background .2s ease,transform .2s ease}
.site-notification-sheet-content .delete-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.site-notification-sheet-content .delete-btn:hover{color:#ef4444;background:#fff1f2!important;transform:scale(1.05)}
.site-notification-sheet-content .site-notification-item.is-unread::before{position:absolute;top:31px;left:10px;width:7px;height:7px;background:#6366f1;border-radius:50%;box-shadow:0 0 0 4px rgba(99,102,241,.1);content:''}
.site-notification-sheet-content .loading,.site-notification-sheet-content .empty,.site-notification-sheet-content .loading-indicator{padding:24px 18px;color:#90a0ba;font-size:13px;text-align:center}
@keyframes site-notification-backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes site-notification-sheet-in{from{opacity:.55;transform:translate3d(0,100%,0)}to{opacity:1;transform:translate3d(0,0,0)}}
body.site-dark-mode .site-notification-sheet-overlay{background:rgba(0,0,0,.66)!important}
body.site-dark-mode .site-notification-sheet-content{color:#f4f4f5;background:rgba(24,24,27,.9)!important;border-color:rgba(255,255,255,.1)!important;box-shadow:0 -22px 65px rgba(0,0,0,.58)!important}
body.site-dark-mode .site-notification-sheet-content .modal-header{background:rgba(24,24,27,.54)!important;border-bottom-color:rgba(255,255,255,.09)}
body.site-dark-mode .site-notification-title-icon{color:#a5b4fc;background:linear-gradient(145deg,#312e81,#27204d);box-shadow:0 8px 18px rgba(0,0,0,.24)}
body.site-dark-mode .site-notification-title-copy strong{color:#f4f4f5}
body.site-dark-mode .site-notification-title-copy small{color:#a1a1aa}
body.site-dark-mode .site-notification-read-all{color:#a5b4fc}
body.site-dark-mode .site-notification-read-all:hover,body.site-dark-mode .site-notification-close:hover{color:#c4b5fd}
body.site-dark-mode .site-notification-close{color:#a1a1aa}
body.site-dark-mode .site-notification-sheet-content .notification-item-wrapper{border-bottom-color:rgba(255,255,255,.07)!important}
body.site-dark-mode .site-notification-sheet-content .notification-item-wrapper:hover{background:rgba(255,255,255,.045)!important}
body.site-dark-mode .site-notification-sheet-content .actor-name{color:#f4f4f5}
body.site-dark-mode .site-notification-sheet-content .action-text{color:#c4c7d0}
body.site-dark-mode .site-notification-sheet-content .timestamp{color:#8f96a3}
body.site-dark-mode .site-notification-sheet-content .details-btn{color:#c4c7d0;background:rgba(39,39,42,.64)!important;border-color:rgba(255,255,255,.1)!important;box-shadow:none}
body.site-dark-mode .site-notification-sheet-content .details-btn:hover{background:rgba(63,63,70,.78)!important}
body.site-dark-mode .site-notification-sheet-content .details-btn::after{color:#71717a}
body.site-dark-mode .site-notification-sheet-content .delete-btn{color:#a1a1aa;background:rgba(39,39,42,.84)!important;border-color:rgba(255,255,255,.1)!important;box-shadow:none}
body.site-dark-mode .site-notification-sheet-content .delete-btn:hover{color:#fda4af;background:rgba(127,29,29,.35)!important}
@media (max-width:600px){.site-notification-sheet-content{width:100vw!important;max-width:100vw!important;height:92vh!important;max-height:92vh!important;border-right:0!important;border-left:0!important;border-radius:28px 28px 0 0!important}.site-notification-sheet-content .modal-header{min-height:106px;padding-right:16px;padding-left:18px}.site-notification-title-copy strong{font-size:20px}.site-notification-title-icon{width:44px;height:44px;flex-basis:44px;margin-right:11px}.site-notification-sheet-content .site-notification-read-all{margin-right:6px;margin-left:4px;padding-right:2px;padding-left:2px;font-size:0}.site-notification-read-all svg{width:24px;height:24px}.site-notification-sheet-content .site-notification-close{padding-left:5px;font-size:15px}.site-notification-sheet-content .notification-item{padding-right:14px;padding-left:20px}.site-notification-sheet-content .post-preview{padding-right:30px}}
@media (hover:none){.site-notification-sheet-content .delete-action-wrapper{opacity:.72;transform:none;pointer-events:auto}}
@media (prefers-reduced-motion:reduce){.site-notification-sheet-overlay,.site-notification-sheet-content{animation-duration:.01ms!important}}

/* 通知页顶部与筛选、音乐列表、视频播放页统一 */
.site-notification-sheet-content .modal-header{grid-template-columns:38px minmax(0,1fr) auto!important;align-items:center!important;height:62px!important;min-height:62px!important;padding:12px 16px 0!important;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.42) 70%,transparent)!important;border-bottom:0!important;border-radius:32px 32px 0 0!important}
.site-notification-sheet-content .site-notification-legacy-back{display:inline-flex!important;align-items:center;justify-content:center;grid-column:1;grid-row:1;width:38px;height:38px;margin:0;padding:0;color:#334155;background:rgba(255,255,255,.62);border:1px solid rgba(15,23,42,.1);border-radius:50%;box-shadow:0 5px 14px rgba(15,23,42,.12);cursor:pointer}
.site-notification-sheet-content .site-notification-legacy-back svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.site-notification-sheet-content .site-notification-legacy-back:hover{color:#0f172a;background:rgba(255,255,255,.9);transform:translateY(-1px)}
.site-notification-sheet-content .site-notification-title{display:flex!important;align-items:center;justify-content:center;grid-column:2!important;grid-row:1!important;min-width:0;margin:0!important;color:#111827!important;font-size:16px!important;font-weight:800!important;line-height:1.2;text-align:center}
.site-notification-sheet-content .site-notification-title-icon{display:none!important}
.site-notification-sheet-content .site-notification-title-copy{display:block;min-width:0}
.site-notification-sheet-content .site-notification-title-copy strong{display:block;overflow:hidden;color:inherit;font-size:16px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.site-notification-sheet-content .site-notification-title-copy small{display:none!important}
.site-notification-sheet-content .site-notification-delete-all{display:inline-flex!important;align-items:center;justify-content:center;grid-column:3;grid-row:1;gap:5px;margin:0 6px 0 8px;padding:7px 8px;color:#64748b;font-size:13px;font-weight:800;line-height:1;background:transparent;border:0;border-radius:10px;cursor:pointer;white-space:nowrap;transition:color .2s ease,background-color .2s ease,transform .2s ease}
.site-notification-sheet-content .site-notification-delete-all svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.site-notification-sheet-content .site-notification-delete-all:hover{color:#e11d48;background:rgba(244,63,94,.1);transform:none}
.site-notification-sheet-content .site-notification-close{display:none!important}
body.site-dark-mode .site-notification-sheet-content .modal-header{background:linear-gradient(180deg,rgba(0,0,0,.76),rgba(0,0,0,.32) 70%,transparent)!important}
body.site-dark-mode .site-notification-sheet-content .site-notification-legacy-back{color:#fff;background:rgba(15,23,42,.52);border-color:rgba(255,255,255,.16);box-shadow:0 5px 14px rgba(0,0,0,.18)}
body.site-dark-mode .site-notification-sheet-content .site-notification-legacy-back:hover{color:#fff;background:rgba(15,23,42,.76)}
body.site-dark-mode .site-notification-sheet-content .site-notification-title{color:#fff!important}
body.site-dark-mode .site-notification-sheet-content .site-notification-delete-all{color:#a1a1aa}
body.site-dark-mode .site-notification-sheet-content .site-notification-delete-all:hover{color:#fda4af;background:rgba(244,63,94,.16)}
body.site-dark-mode .site-notification-sheet-content .site-notification-close{color:#a1a1aa!important}
body.site-dark-mode .site-notification-sheet-content .site-notification-close:hover{color:#f4f4f5!important;background:rgba(255,255,255,.08)!important}
@media (max-width:600px){.site-notification-sheet-content .modal-header{padding-right:12px!important;padding-left:12px!important}.site-notification-sheet-content .site-notification-delete-all{margin-right:2px;margin-left:2px;padding-right:6px;padding-left:6px}}

/* 搜索页最终统一：与筛选、音乐列表、视频播放页使用同一套顶栏 */
body.site-search-mode .top-bar,body.site-search-closing .top-bar{display:grid!important;grid-template-columns:38px minmax(0,1fr) auto!important;align-items:center!important;height:62px!important;min-height:62px!important;margin:0!important;padding:12px 16px 0!important;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.42) 70%,transparent)!important;border:0!important;border-radius:28px 28px 0 0!important;box-shadow:none!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important}
body.site-search-mode .top-bar>span,body.site-search-closing .top-bar>span{display:none!important}
body.site-search-mode .top-bar .search-container,body.site-search-closing .top-bar .search-container{display:none!important;visibility:hidden!important}
body.site-search-mode .top-bar .top-bar-actions,body.site-search-closing .top-bar .top-bar-actions{grid-column:3!important;grid-row:1!important;display:flex!important;align-items:center!important;gap:4px!important;margin:0!important}
body.site-search-mode .top-bar .top-bar-actions>.notification-icon-wrapper,body.site-search-closing .top-bar .top-bar-actions>.notification-icon-wrapper{display:none!important}
body.site-search-mode .top-bar .site-global-theme-toggle,body.site-search-closing .top-bar .site-global-theme-toggle{display:inline-flex!important;width:38px!important;height:38px!important;margin:0!important;padding:0!important;color:#64748b;background:rgba(255,255,255,.62);border:1px solid rgba(15,23,42,.1);border-radius:50%;box-shadow:0 5px 14px rgba(15,23,42,.1)}
body.site-search-mode .top-bar .site-global-theme-toggle:hover,body.site-search-closing .top-bar .site-global-theme-toggle:hover{color:#4338ca;background:rgba(255,255,255,.9);transform:rotate(8deg) scale(1.03)}
.site-search-sheet-title{display:flex;align-items:center;justify-content:center;grid-column:2;grid-row:1;min-width:0;color:#111827;font-size:16px;font-weight:800;line-height:1.2;text-align:center}
body.site-search-mode .moments-container>.site-search-native-search,body.site-search-closing .moments-container>.site-search-native-search{align-items:center;margin:14px 16px 0!important;gap:0!important;animation:site-search-native-fade .28s ease both}
body.site-search-mode .moments-container>.site-search-native-search .site-search-native-input-group,body.site-search-closing .moments-container>.site-search-native-search .site-search-native-input-group{width:100%;min-width:0}
body.site-search-mode .moments-container>.site-search-native-search .site-search-native-input,body.site-search-closing .moments-container>.site-search-native-search .site-search-native-input{height:52px!important;padding-right:18px!important;padding-left:50px!important;color:#334155;font-size:16px;font-weight:700;background:rgba(241,245,249,.82);border:1px solid rgba(226,232,240,.82);border-radius:16px;box-shadow:inset 0 2px 7px rgba(100,116,139,.06);transition:background .24s ease,border-color .24s ease,box-shadow .24s ease}
body.site-search-mode .moments-container>.site-search-native-search .site-search-native-input:focus,body.site-search-closing .moments-container>.site-search-native-search .site-search-native-input:focus{background:rgba(255,255,255,.96);border-color:rgba(99,102,241,.3);box-shadow:0 0 0 4px rgba(99,102,241,.1),inset 0 2px 7px rgba(100,116,139,.04)}
body.site-search-mode .moments-container>.site-search-native-search .site-search-native-cancel,body.site-search-closing .moments-container>.site-search-native-search .site-search-native-cancel{display:none!important}
body.site-search-mode .site-search-empty-state,body.site-search-closing .site-search-empty-state{padding-top:8px!important}
body.site-search-mode .site-search-section,body.site-search-closing .site-search-section{margin-top:24px}
body.site-search-mode .site-search-section-heading,body.site-search-closing .site-search-section-heading{margin-bottom:12px;padding:0 2px}
body.site-search-mode .site-search-pill,body.site-search-closing .site-search-pill{border-radius:999px;box-shadow:0 3px 10px rgba(15,23,42,.05)}
body.site-search-mode .site-search-hot-item,body.site-search-closing .site-search-hot-item{min-height:28px;border-radius:10px;transition:background .2s ease,transform .2s ease}
body.site-search-mode .site-search-hot-item:hover,body.site-search-closing .site-search-hot-item:hover{background:rgba(99,102,241,.06);transform:translateY(-1px)}
body.site-dark-mode.site-search-mode .top-bar,body.site-dark-mode.site-search-closing .top-bar{background:linear-gradient(180deg,rgba(0,0,0,.76),rgba(0,0,0,.32) 70%,transparent)!important}
body.site-dark-mode.site-search-mode .top-bar .site-global-theme-toggle,body.site-dark-mode.site-search-closing .top-bar .site-global-theme-toggle{color:#c4b5fd;background:rgba(15,23,42,.52);border-color:rgba(255,255,255,.16);box-shadow:0 5px 14px rgba(0,0,0,.18)}
body.site-dark-mode.site-search-mode .top-bar .site-global-theme-toggle:hover,body.site-dark-mode.site-search-closing .top-bar .site-global-theme-toggle:hover{color:#e0e7ff;background:rgba(15,23,42,.76)}
body.site-dark-mode .site-search-sheet-title{color:#f4f4f5}
body.site-dark-mode.site-search-mode .moments-container>.site-search-native-search .site-search-native-input,body.site-dark-mode.site-search-closing .moments-container>.site-search-native-search .site-search-native-input{color:#e5e7eb;background:rgba(39,39,42,.78);border-color:rgba(255,255,255,.1);box-shadow:inset 0 2px 7px rgba(0,0,0,.18)}
body.site-dark-mode.site-search-mode .moments-container>.site-search-native-search .site-search-native-input:focus,body.site-dark-mode.site-search-closing .moments-container>.site-search-native-search .site-search-native-input:focus{background:rgba(63,63,70,.86);border-color:rgba(167,139,250,.38);box-shadow:0 0 0 4px rgba(139,92,246,.14),inset 0 2px 7px rgba(0,0,0,.12)}
@media (max-width:600px){body.site-search-mode .top-bar,body.site-search-closing .top-bar{padding-right:12px!important;padding-left:12px!important}.site-search-sheet-title{font-size:16px}.site-search-mode .moments-container>.site-search-native-search,.site-search-closing .moments-container>.site-search-native-search{margin-right:16px!important;margin-left:16px!important}}

/* 首页预览副本必须保持首页顶栏样式，不能被搜索状态改成第二个搜索栏 */
.site-search-home-preview-source .top-bar{position:relative!important;top:auto!important;display:flex!important;grid-template-columns:none!important;justify-content:space-between!important;align-items:center!important;min-height:50px!important;height:50px!important;gap:0!important;padding:10px 15px!important;background:rgba(255,255,255,.96)!important;border-bottom:1px solid #dcdcdc!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.site-search-home-preview-source .top-bar>span{display:flex!important;visibility:visible!important}
.site-search-home-preview-source .top-bar .search-container{display:block!important;grid-column:auto!important;grid-row:auto!important;min-width:0!important;flex-grow:1!important;margin:0 15px!important}
.site-search-home-preview-source .top-bar .search-container>.title{display:block!important;visibility:visible!important}
.site-search-home-preview-source .top-bar .site-search-native-search,.site-search-home-preview-source .top-bar .site-search-bridge,.site-search-home-preview-source .top-bar .site-search-collapse{display:none!important}
.site-search-home-preview-source .top-bar .top-bar-actions{display:flex!important;grid-column:auto!important;grid-row:auto!important;gap:0!important;margin:0!important}
.site-search-home-preview-source .top-bar .top-bar-actions>*{display:inline-flex!important;margin-left:20px!important}
.site-search-home-preview-source .top-bar .top-bar-actions .site-global-theme-toggle{display:inline-flex!important}
body.site-dark-mode .site-search-home-preview-source .top-bar{background:rgba(9,9,11,.84)!important;border-bottom-color:rgba(255,255,255,.07)!important}

/* SearchModal.vue reference implementation: one bottom sheet, one visual language. */
body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{position:fixed!important;left:50%!important;right:auto!important;bottom:0!important;z-index:12001!important;display:block!important;width:min(100vw,672px)!important;height:92vh!important;max-height:92vh!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;visibility:visible!important;opacity:0!important;transform:translate3d(-50%,100%,0)!important;border:0!important;border-radius:32px 32px 0 0!important;box-shadow:0 -8px 40px rgba(0,0,0,.1)!important;isolation:isolate;backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:transform,opacity;transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .3s ease,visibility 0s linear .4s!important}
body.site-search-mode #app .scroll-container.site-search-sheet.site-search-sheet-open{visibility:visible!important;opacity:1!important;transform:translate3d(-50%,0,0)!important;pointer-events:auto!important;transition-delay:0s!important}
body.site-search-closing #app .scroll-container.site-search-sheet{pointer-events:none!important}
body.site-search-mode #app .scroll-container.site-search-sheet::-webkit-scrollbar,body.site-search-closing #app .scroll-container.site-search-sheet::-webkit-scrollbar{display:none!important}
body.site-search-mode #app .scroll-container.site-search-sheet>.top-bar,body.site-search-closing #app .scroll-container.site-search-sheet>.top-bar{display:none!important;visibility:hidden!important}

.site-search-backdrop{position:fixed!important;inset:0!important;z-index:12000!important;display:block!important;visibility:hidden!important;opacity:0!important;overflow:hidden!important;background:rgba(15,23,42,.4)!important;backdrop-filter:blur(4px)!important;-webkit-backdrop-filter:blur(4px)!important;pointer-events:none!important;transition:opacity .3s ease,visibility 0s linear .3s!important}
.site-search-backdrop.is-open{visibility:visible!important;opacity:1!important;pointer-events:auto!important;transition-delay:0s!important}
.site-search-home-preview{position:absolute!important;inset:-24px!important;z-index:0!important;opacity:.72!important;transform:scale(1.05)!important;pointer-events:none!important}
.site-search-home-preview-source{background:transparent!important}
.site-search-home-preview-source .scroll-container{position:absolute!important;inset:0!important;width:100%!important;max-width:none!important;height:100%!important;overflow:hidden!important;background:transparent!important}
.site-search-backdrop::after{background:rgba(15,23,42,.08)!important}

body.site-search-mode #app .scroll-container.site-search-sheet>.moments-container,body.site-search-closing #app .scroll-container.site-search-sheet>.moments-container{position:relative!important;z-index:1!important;display:flex!important;flex-direction:column!important;width:100%!important;height:100%!important;min-height:0!important;max-width:none!important;margin:0!important;padding:0!important;overflow:hidden!important}
body.site-search-mode #app .scroll-container.site-search-sheet>.moments-container>header,body.site-search-closing #app .scroll-container.site-search-sheet>.moments-container>header,body.site-search-mode #app .scroll-container.site-search-sheet>.moments-container>div:not(.site-search-drag-handle):not(.site-search-native-search):not(.site-search-empty-state),body.site-search-closing #app .scroll-container.site-search-sheet>.moments-container>div:not(.site-search-drag-handle):not(.site-search-native-search):not(.site-search-empty-state){display:none!important}
body.site-search-mode #app .scroll-container.site-search-sheet>.moments-container>main.feed,body.site-search-closing #app .scroll-container.site-search-sheet>.moments-container>main.feed{display:none!important;flex:1 1 auto;min-height:0;overflow-y:auto;padding:24px!important;margin:0!important;background:transparent!important}
body.site-search-mode.site-search-submitted #app .scroll-container.site-search-sheet>.moments-container>main.feed{display:block!important}

.site-search-drag-handle{position:relative;z-index:50;display:flex!important;align-items:center;justify-content:center;width:100%;flex:0 0 38px;box-sizing:border-box;padding:16px 0 8px;cursor:pointer;-webkit-tap-highlight-color:transparent}
.site-search-drag-bar{width:48px;height:6px;background:#e2e8f0;border-radius:999px;transition:background .2s ease,transform .2s ease}
.site-search-drag-handle:hover .site-search-drag-bar{background:#cbd5e1;transform:scaleX(1.04)}

body.site-search-mode .moments-container>.site-search-native-search,body.site-search-closing .moments-container>.site-search-native-search{position:relative!important;z-index:2!important;display:flex!important;align-items:center!important;width:auto!important;flex:0 0 auto!important;box-sizing:border-box!important;margin:12px 24px 0!important;padding:0!important;gap:16px!important;animation:none!important}
body.site-search-mode .moments-container>.site-search-native-search .site-search-native-input-group,body.site-search-closing .moments-container>.site-search-native-search .site-search-native-input-group{position:relative!important;display:block!important;flex:1 1 auto!important;width:auto!important;min-width:0!important}
body.site-search-mode .moments-container>.site-search-native-search .site-search-native-input,body.site-search-closing .moments-container>.site-search-native-search .site-search-native-input{display:block!important;width:100%!important;height:54px!important;box-sizing:border-box!important;padding:0 46px 0 50px!important;color:#0f172a!important;font-size:16px!important;font-weight:700!important;line-height:1!important;background:rgba(241,245,249,.8)!important;border:1px solid transparent!important;border-radius:20px!important;outline:0!important;box-shadow:none!important;transition:background .25s ease,border-color .25s ease,box-shadow .25s ease!important}
body.site-search-mode .moments-container>.site-search-native-search .site-search-native-input:focus,body.site-search-closing .moments-container>.site-search-native-search .site-search-native-input:focus{background:#fff!important;border-color:#cbd5e1!important;box-shadow:0 4px 20px rgba(0,0,0,.05)!important}
body.site-search-mode .moments-container>.site-search-native-search .site-search-native-input::placeholder,body.site-search-closing .moments-container>.site-search-native-search .site-search-native-input::placeholder{color:#94a3b8!important;font-weight:500!important}
body.site-search-mode .moments-container>.site-search-native-search .site-search-native-input-group>svg,body.site-search-closing .moments-container>.site-search-native-search .site-search-native-input-group>svg{left:16px!important;width:21px!important;height:21px!important;color:#94a3b8!important;stroke:currentColor!important;stroke-width:2.5!important}
.site-search-native-clear{position:absolute;top:50%;right:12px;display:none;align-items:center;justify-content:center;width:28px;height:28px;margin:0;padding:0;color:#94a3b8;font-size:24px;font-weight:400;line-height:1;background:transparent;border:0;border-radius:50%;cursor:pointer;transform:translateY(-50%);transition:color .2s ease,background .2s ease}
.site-search-native-search.has-value .site-search-native-clear{display:inline-flex}
.site-search-native-clear:hover{color:#475569;background:rgba(148,163,184,.14)}
body.site-search-mode .moments-container>.site-search-native-search .site-search-native-cancel,body.site-search-closing .moments-container>.site-search-native-search .site-search-native-cancel{display:inline-flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:8px 2px!important;color:#475569!important;font-size:15px!important;font-weight:700!important;line-height:1!important;background:transparent!important;border:0!important;cursor:pointer!important;transition:color .2s ease!important}
body.site-search-mode .moments-container>.site-search-native-search .site-search-native-cancel:hover,body.site-search-closing .moments-container>.site-search-native-search .site-search-native-cancel:hover{color:#0f172a!important;transform:none!important}

body.site-search-mode .site-search-empty-state,body.site-search-closing .site-search-empty-state{display:block!important;position:relative!important;z-index:1!important;flex:1 1 auto!important;min-height:0!important;box-sizing:border-box!important;overflow-y:auto!important;margin:0!important;padding:24px 24px 32px!important;color:#1e293b!important;background:transparent!important}
body.site-search-mode.site-search-has-query:not(.site-search-submitted) .site-search-empty-state{display:block!important}
body.site-search-mode.site-search-has-query.site-search-submitted .site-search-empty-state{display:none!important}
.site-search-blank{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:132px;margin:0 0 12px;color:#94a3b8;text-align:center}
.site-search-blank-icon{display:flex;align-items:center;justify-content:center;width:66px;height:66px;margin-bottom:14px;color:#cbd5e1;background:#f8fafc;border-radius:50%}
.site-search-blank-icon svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.site-search-blank p{margin:0;color:#94a3b8;font-size:14px;font-weight:500}
.site-search-section{margin:24px 0 0!important}
.site-search-section-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px!important;padding:0 2px!important}
.site-search-section-heading h2{display:flex;align-items:center;gap:6px;margin:0;color:#0f172a;font-size:14px;font-weight:900;letter-spacing:-.01em}
.site-search-section-heading h2 svg{width:16px;height:16px;fill:none;stroke:#94a3b8;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.site-search-hot .site-search-section-heading h2 svg{stroke:#f43f5e}
.site-search-section-heading button{padding:4px 0;color:#94a3b8;font-size:12px;font-weight:700;background:transparent;border:0;cursor:pointer}
.site-search-history-list{display:flex;flex-wrap:wrap;gap:8px}
.site-search-pill{padding:8px 16px!important;color:#475569!important;font-size:13px!important;font-weight:700!important;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:999px!important;box-shadow:none!important;cursor:pointer;transition:color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease!important}
.site-search-pill:hover{color:#0f172a!important;border-color:#cbd5e1!important;box-shadow:0 3px 10px rgba(15,23,42,.06)!important;transform:none!important}
.site-search-hot-list{display:flex;flex-direction:column;gap:2px}
.site-search-hot-item{display:flex!important;align-items:center!important;gap:16px!important;min-height:48px!important;padding:10px 12px!important;color:#334155!important;text-align:left!important;background:transparent!important;border:0!important;border-radius:16px!important;cursor:pointer;transition:background .2s ease!important}
.site-search-hot-item:hover{background:#f8fafc!important;transform:none!important}
.site-search-hot-rank{display:flex;align-items:center;justify-content:center;width:20px;color:#cbd5e1;font-size:16px;font-weight:900;font-style:italic}
.site-search-hot-rank.rank-1,.site-search-hot-rank.rank-2,.site-search-hot-rank.rank-3{color:#f43f5e}
.site-search-hot-name{min-width:0;overflow:hidden;color:#334155;font-size:15px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.site-search-hot-category{margin-left:auto;padding:4px 8px!important;color:#94a3b8!important;font-size:11px!important;font-weight:700!important;background:#f1f5f9!important;border:1px solid rgba(226,232,240,.5)!important;border-radius:6px!important;white-space:nowrap}
.site-search-request{display:flex!important;align-items:center!important;gap:16px!important;width:100%!important;box-sizing:border-box!important;margin:34px 0 4px!important;padding:20px!important;color:#fff!important;text-align:left!important;background:#0f172a!important;border:0!important;border-radius:24px!important;box-shadow:0 12px 24px rgba(15,23,42,.1)!important;cursor:pointer;transition:box-shadow .25s ease,transform .25s ease!important}
.site-search-request:hover{filter:none!important;box-shadow:0 16px 30px rgba(15,23,42,.2)!important;transform:translateY(-2px)!important}
.site-search-request-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:48px!important;height:48px!important;flex:0 0 48px!important;background:rgba(255,255,255,.1)!important;border-radius:50%!important}
.site-search-request-icon svg{width:22px!important;height:22px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.site-search-request>span:nth-child(2){display:flex!important;flex:1!important;flex-direction:column!important;gap:4px!important;color:#fff!important;font-size:15px!important;font-weight:700!important;line-height:1.2!important}
.site-search-request strong{color:#94a3b8!important;font-size:12px!important;font-weight:500!important}
.site-search-request>svg{width:21px!important;height:21px!important;flex:0 0 21px!important;fill:none!important;stroke:#fff!important;stroke-width:2.5!important;stroke-linecap:round!important;stroke-linejoin:round!important}

.site-search-query-options{display:flex;flex-direction:column;gap:8px;margin:8px 0 0}
.site-search-query-option{display:flex;align-items:center;gap:16px;width:100%;box-sizing:border-box;padding:16px;color:#334155;text-align:left;background:transparent;border:1px solid transparent;border-radius:20px;cursor:pointer;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}
.site-search-query-option:hover{background:#f8fafc;border-color:#f1f5f9;box-shadow:0 4px 12px rgba(15,23,42,.04)}
.site-search-query-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:0 0 40px;color:#94a3b8;background:#f1f5f9;border-radius:50%;transition:color .2s ease,background .2s ease}
.site-search-query-option:hover .site-search-query-icon{color:#6366f1;background:#eef2ff}
.site-search-query-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.site-search-query-copy{display:flex;flex:1;align-items:center;gap:5px;min-width:0;color:#475569;font-size:15px;line-height:1.2}
.site-search-query-copy strong{font-weight:700}
.site-search-query-copy em{overflow:hidden;color:#4f46e5;font-style:normal;text-overflow:ellipsis;white-space:nowrap}
.site-search-query-option>svg{width:20px;height:20px;flex:0 0 20px;color:#cbd5e1;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:color .2s ease}
.site-search-query-option:hover>svg{color:#6366f1}

body.site-dark-mode.site-search-mode #app .scroll-container.site-search-sheet,body.site-dark-mode.site-search-closing #app .scroll-container.site-search-sheet{box-shadow:0 -8px 40px rgba(0,0,0,.42)!important}
body.site-dark-mode .site-search-drag-bar{background:rgba(255,255,255,.32)}
body.site-dark-mode .site-search-drag-handle:hover .site-search-drag-bar{background:rgba(255,255,255,.5)}
body.site-dark-mode .site-search-blank-icon{color:#71717a;background:#27272a}
body.site-dark-mode .site-search-blank p,body.site-dark-mode .site-search-section-heading button{color:#a1a1aa}
body.site-dark-mode .site-search-section-heading h2{color:#f4f4f5}
body.site-dark-mode .site-search-section-heading h2 svg{stroke:#a1a1aa}
body.site-dark-mode .site-search-pill{color:#d4d4d8!important;background:#27272a!important;border-color:rgba(255,255,255,.1)!important}
body.site-dark-mode .site-search-pill:hover{color:#fff!important;border-color:rgba(255,255,255,.2)!important;box-shadow:none!important}
body.site-dark-mode .site-search-hot-item{color:#d4d4d8!important}
body.site-dark-mode .site-search-hot-item:hover{background:rgba(255,255,255,.06)!important}
body.site-dark-mode .site-search-hot-name{color:#e4e4e7}
body.site-dark-mode .site-search-hot-category{color:#a1a1aa!important;background:#27272a!important;border-color:rgba(255,255,255,.08)!important}
body.site-dark-mode .site-search-query-option{color:#e4e4e7}
body.site-dark-mode .site-search-query-option:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.08);box-shadow:none}
body.site-dark-mode .site-search-query-icon{color:#a1a1aa;background:#27272a}
body.site-dark-mode .site-search-query-option:hover .site-search-query-icon{color:#c4b5fd;background:#312e81}
body.site-dark-mode .site-search-query-copy{color:#d4d4d8}
body.site-dark-mode .site-search-query-copy em{color:#a5b4fc}
body.site-dark-mode .site-search-native-clear{color:#a1a1aa}
body.site-dark-mode.site-search-mode .moments-container>.site-search-native-search .site-search-native-input,body.site-dark-mode.site-search-closing .moments-container>.site-search-native-search .site-search-native-input{color:#f4f4f5!important;background:rgba(39,39,42,.82)!important;border-color:rgba(255,255,255,.06)!important}
body.site-dark-mode.site-search-mode .moments-container>.site-search-native-search .site-search-native-input:focus,body.site-dark-mode.site-search-closing .moments-container>.site-search-native-search .site-search-native-input:focus{background:#27272a!important;border-color:rgba(255,255,255,.18)!important;box-shadow:0 4px 20px rgba(0,0,0,.18)!important}
body.site-dark-mode.site-search-mode .moments-container>.site-search-native-search .site-search-native-input::placeholder,body.site-dark-mode.site-search-closing .moments-container>.site-search-native-search .site-search-native-input::placeholder{color:#a1a1aa!important}
body.site-dark-mode.site-search-mode .moments-container>.site-search-native-search .site-search-native-cancel,body.site-dark-mode.site-search-closing .moments-container>.site-search-native-search .site-search-native-cancel{color:#c4b5fd!important}

@media (max-width:600px){body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{left:0!important;width:100vw!important;max-width:100vw!important;border-radius:28px 28px 0 0!important;transform:translate3d(0,100%,0)!important}body.site-search-mode #app .scroll-container.site-search-sheet.site-search-sheet-open{transform:translate3d(0,0,0)!important}.site-search-backdrop{backdrop-filter:blur(4px)!important;-webkit-backdrop-filter:blur(4px)!important}.site-search-home-preview{inset:-18px!important}.site-search-drag-handle{flex-basis:38px}.site-search-mode .moments-container>.site-search-native-search,.site-search-closing .moments-container>.site-search-native-search{margin-right:24px!important;margin-left:24px!important}.site-search-mode .site-search-empty-state,.site-search-closing .site-search-empty-state{padding-right:20px!important;padding-left:20px!important}.site-search-request{padding:18px!important;border-radius:22px!important}}

@media (prefers-reduced-motion:reduce){.site-search-backdrop,body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet,.site-search-native-search,.site-search-request,.site-search-query-option{transition-duration:.01ms!important}}

/* Final search sizing and motion correction: keep a visible top gap and make the sheet visibly rise from the bottom. */
body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{width:min(calc(100vw - 32px),600px)!important;height:84vh!important;max-height:84vh!important;animation:none!important;transition:transform .46s cubic-bezier(.16,1,.3,1),opacity .3s ease,visibility 0s linear .46s!important}
body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{bottom:-100%!important;transform:translate3d(-50%,0,0)!important;transition:bottom .46s cubic-bezier(.16,1,.3,1),opacity .3s ease,visibility 0s linear .46s!important}
body.site-search-mode #app .scroll-container.site-search-sheet.site-search-sheet-open{bottom:0!important;animation:none!important}
body.site-search-closing #app .scroll-container.site-search-sheet{bottom:-100%!important;animation:none!important}
/* Keep the real home preview at viewport scale; only soften it instead of enlarging it behind the sheet. */
.site-search-home-preview{inset:-12px!important;transform:scale(1.02)!important}
/* The backdrop is a fixed viewport snapshot. Do not scale or scroll the cloned home page with the sheet. */
.site-search-home-preview{position:fixed!important;overflow:hidden!important;opacity:.62!important;transform-origin:center!important}
.site-search-home-preview-source{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-width:100%!important;min-height:100%!important;max-width:none!important;transform:none!important;scroll-behavior:auto!important}
.site-search-home-preview-source>.top-bar{position:relative!important;top:auto!important;left:auto!important;width:100%!important;max-width:none!important;height:50px!important;min-height:50px!important;transform:none!important}
.site-search-home-preview-source>.moments-container{position:relative!important;top:auto!important;left:auto!important;width:100%!important;max-width:none!important;min-height:calc(100% - 50px)!important;transform:none!important}
/* Match music/video drawers: same height, fixed bottom edge and a restrained background layer. */
body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{height:90vh!important;max-height:90vh!important}
.site-search-home-preview{inset:0!important;opacity:.34!important}
.site-search-backdrop::after{background:rgba(15,23,42,.14)!important}
/* Match the actual home scroll container instead of stretching the preview to the viewport. */
.site-search-home-preview{display:flex!important;align-items:flex-start!important;justify-content:center!important}
.site-search-home-preview-source{position:relative!important;inset:auto!important;width:min(calc(100vw - 32px),600px)!important;height:100vh!important;min-height:100vh!important;margin:0!important;overflow:hidden!important}
@media (max-width:600px){.site-search-home-preview-source{width:100vw!important;max-width:100vw!important}}
/* Hard lock the preview to the same desktop width as the real homepage. */
.site-search-home-preview-source{width:600px!important;max-width:600px!important;min-width:0!important;margin-right:0!important;margin-left:0!important}
@media (max-width:600px){.site-search-home-preview-source{width:100vw!important;max-width:100vw!important}}
/* Match the other panels: deeper outer scrim and a much fainter home preview. */
.site-search-backdrop{backdrop-filter:blur(5px) saturate(110%)!important;-webkit-backdrop-filter:blur(5px) saturate(110%)!important}
.site-search-home-preview{opacity:.16!important}
.site-search-backdrop::after{background:rgba(0,0,0,.16)!important}
body.site-dark-mode .site-search-backdrop{background:rgba(0,0,0,.64)!important}
@media (max-width:600px){body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{width:100vw!important;max-width:100vw!important;height:90vh!important;max-height:90vh!important;bottom:-100%!important;transform:translate3d(0,0,0)!important}body.site-search-mode #app .scroll-container.site-search-sheet.site-search-sheet-open{bottom:0!important;transform:translate3d(0,0,0)!important;animation:none!important}body.site-search-closing #app .scroll-container.site-search-sheet{animation:none!important}}
/* Search header follows the video page: transparent glass at the top, readable surface below. */
.site-search-backdrop{background:rgba(15,23,42,.42)!important;backdrop-filter:blur(5px) saturate(115%)!important;-webkit-backdrop-filter:blur(5px) saturate(115%)!important}
.site-search-home-preview{opacity:.52!important}
.site-search-backdrop::after{background:rgba(0,0,0,.06)!important}
body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{background:transparent!important}
body.site-search-mode .site-search-empty-state,body.site-search-closing .site-search-empty-state{background:rgba(255,255,255,.96)!important;border-radius:24px 24px 0 0!important}
body.site-search-mode.site-search-submitted #app .scroll-container.site-search-sheet>.moments-container>main.feed{background:rgba(255,255,255,.96)!important;border-radius:24px 24px 0 0!important}
body.site-dark-mode .site-search-backdrop{background:rgba(0,0,0,.66)!important}
body.site-dark-mode .site-search-home-preview{opacity:.38!important}
body.site-dark-mode.site-search-mode .site-search-empty-state,body.site-dark-mode.site-search-closing .site-search-empty-state{background:rgba(24,24,27,.96)!important}
body.site-dark-mode.site-search-mode.site-search-submitted #app .scroll-container.site-search-sheet>.moments-container>main.feed{background:rgba(24,24,27,.96)!important}
/* Restore an opaque search surface; transparency belongs to the page behind the sheet. */
.site-search-backdrop{background:rgba(0,0,0,.18)!important;backdrop-filter:blur(4px) saturate(115%)!important;-webkit-backdrop-filter:blur(4px) saturate(115%)!important}
.site-search-home-preview{opacity:.76!important;filter:blur(12px)!important}
.site-search-backdrop::after{background:rgba(0,0,0,.08)!important}
body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{background:rgba(255,255,255,.97)!important;box-shadow:0 -18px 48px rgba(15,23,42,.22)!important}
body.site-search-mode #app .scroll-container.site-search-sheet>.moments-container,body.site-search-closing #app .scroll-container.site-search-sheet>.moments-container{background:transparent!important}
body.site-search-mode .moments-container>.site-search-native-search,body.site-search-closing .moments-container>.site-search-native-search{background:transparent!important}
body.site-dark-mode .site-search-backdrop{background:rgba(0,0,0,.34)!important}
body.site-dark-mode .site-search-home-preview{opacity:.58!important}
body.site-dark-mode.site-search-mode #app .scroll-container.site-search-sheet,body.site-dark-mode.site-search-closing #app .scroll-container.site-search-sheet{background:rgba(24,24,27,.97)!important}

/* 搜索页背景层与音乐播放列表统一：只让后面的首页预览通透，搜索头部保持实体背景。 */
.site-search-backdrop{background:rgba(0,0,0,.64)!important;backdrop-filter:blur(6px) saturate(110%)!important;-webkit-backdrop-filter:blur(6px) saturate(110%)!important}
.site-search-backdrop::after{display:none!important;content:none!important}
.site-search-home-preview{opacity:1!important;filter:blur(6px)!important;transform:none!important}
body.site-search-mode #app .scroll-container.site-search-sheet,body.site-search-closing #app .scroll-container.site-search-sheet{background:rgba(255,255,255,.94)!important}
body.site-dark-mode.site-search-mode #app .scroll-container.site-search-sheet,body.site-dark-mode.site-search-closing #app .scroll-container.site-search-sheet{background:rgba(24,24,27,.94)!important}

/* 背景副本保持首页原始顶部尺寸，避免搜索状态规则把它整体下移。 */
.site-search-home-preview-source>.top-bar{display:grid!important;grid-template-columns:28px minmax(0,1fr) auto!important;height:50.8px!important;min-height:50.8px!important;padding:10px 15px!important;background:rgba(255,255,255,.72)!important;border-bottom:0!important;backdrop-filter:blur(22px) saturate(135%)!important;-webkit-backdrop-filter:blur(22px) saturate(135%)!important}
body.site-dark-mode .site-search-home-preview-source>.top-bar{background:rgba(24,24,27,.72)!important;border-bottom:0!important}

/* 预览副本位于遮罩内部，必须由遮罩伪元素盖在副本上方，才能与音乐列表的暗色背景一致。 */
.site-search-backdrop{background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.site-search-backdrop::after{display:block!important;position:absolute!important;inset:0!important;z-index:1!important;content:''!important;background:rgba(0,0,0,.64)!important;pointer-events:none!important}
body.site-dark-mode .site-search-home-preview{opacity:1!important}

/* 预览背景先采用轻遮罩，保留首页轮廓，避免后方变成一整片不透明灰色。 */
.site-search-backdrop::after{background:rgba(0,0,0,.30)!important}

/* 搜索状态隐藏的是旧搜索控件；首页背景副本的原始导航图标必须保留并参与模糊。 */
.site-search-home-preview-source>.top-bar>span{display:flex!important;visibility:visible!important}
.site-search-home-preview-source>.top-bar .search-container{display:block!important;visibility:visible!important;min-width:0!important;flex:1 1 auto!important;margin:0 15px!important}
.site-search-home-preview-source>.top-bar .search-container>.title{display:block!important;visibility:visible!important}
.site-search-home-preview-source>.top-bar .top-bar-actions{display:flex!important;visibility:visible!important;align-items:center!important;gap:0!important;margin:0!important}
.site-search-home-preview-source>.top-bar .top-bar-actions>.notification-icon-wrapper{display:inline-flex!important;visibility:visible!important}
.site-search-home-preview-source>.top-bar .top-bar-actions>.site-global-theme-toggle{display:inline-flex!important;visibility:visible!important}

/* 提高优先级覆盖 site-search-mode 对旧搜索头部的隐藏规则，但只作用于背景副本。 */
body.site-search-mode .site-search-home-preview-source>.top-bar,body.site-search-closing .site-search-home-preview-source>.top-bar{display:grid!important;grid-template-columns:28px minmax(0,1fr) auto!important;height:50.8px!important;min-height:50.8px!important;padding:10px 15px!important;background:rgba(255,255,255,.72)!important;border-bottom:0!important;backdrop-filter:blur(22px) saturate(135%)!important;-webkit-backdrop-filter:blur(22px) saturate(135%)!important}
body.site-search-mode .site-search-home-preview-source>.top-bar>span,body.site-search-closing .site-search-home-preview-source>.top-bar>span{display:flex!important;visibility:visible!important}
body.site-search-mode .site-search-home-preview-source>.top-bar .search-container,body.site-search-closing .site-search-home-preview-source>.top-bar .search-container{display:block!important;visibility:visible!important;min-width:0!important;flex:1 1 auto!important;margin:0 15px!important}
body.site-search-mode .site-search-home-preview-source>.top-bar .search-container>.title,body.site-search-closing .site-search-home-preview-source>.top-bar .search-container>.title{display:block!important;visibility:visible!important}
body.site-search-mode .site-search-home-preview-source>.top-bar .top-bar-actions,body.site-search-closing .site-search-home-preview-source>.top-bar .top-bar-actions{display:flex!important;visibility:visible!important;align-items:center!important;gap:0!important;margin:0!important}
body.site-search-mode .site-search-home-preview-source>.top-bar .top-bar-actions>.notification-icon-wrapper,body.site-search-closing .site-search-home-preview-source>.top-bar .top-bar-actions>.notification-icon-wrapper{display:inline-flex!important;visibility:visible!important}
body.site-search-mode .site-search-home-preview-source>.top-bar .top-bar-actions>.site-global-theme-toggle,body.site-search-closing .site-search-home-preview-source>.top-bar .top-bar-actions>.site-global-theme-toggle{display:inline-flex!important;visibility:visible!important}
body.site-dark-mode.site-search-mode .site-search-home-preview-source>.top-bar,body.site-dark-mode.site-search-closing .site-search-home-preview-source>.top-bar{background:rgba(24,24,27,.72)!important}

/* 搜索面板：左上角使用音乐播放列表同款圆形收起按钮，中间拖拽条继续保留。 */
body.site-search-mode #app .scroll-container.site-search-sheet>.moments-container>.site-search-collapse,body.site-search-closing #app .scroll-container.site-search-sheet>.moments-container>.site-search-collapse{position:absolute!important;top:10px!important;left:16px!important;z-index:60!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:38px!important;height:38px!important;margin:0!important;padding:0!important;color:#334155!important;background:rgba(255,255,255,.68)!important;border:1px solid rgba(15,23,42,.1)!important;border-radius:50%!important;box-shadow:0 5px 14px rgba(15,23,42,.12)!important;cursor:pointer!important;pointer-events:auto!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;transition:color .2s ease,background-color .2s ease,box-shadow .2s ease,transform .2s ease!important}
body.site-search-mode #app .scroll-container.site-search-sheet>.moments-container>.site-search-collapse:hover,body.site-search-closing #app .scroll-container.site-search-sheet>.moments-container>.site-search-collapse:hover{color:#0f172a!important;background:rgba(255,255,255,.9)!important;box-shadow:0 7px 17px rgba(15,23,42,.16)!important;transform:translateY(-1px)!important}
body.site-search-mode #app .scroll-container.site-search-sheet>.moments-container>.site-search-collapse:active,body.site-search-closing #app .scroll-container.site-search-sheet>.moments-container>.site-search-collapse:active{transform:translateY(0) scale(.96)!important}
body.site-search-mode #app .scroll-container.site-search-sheet>.moments-container>.site-search-collapse svg,body.site-search-closing #app .scroll-container.site-search-sheet>.moments-container>.site-search-collapse svg{width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important}
body.site-dark-mode.site-search-mode #app .scroll-container.site-search-sheet>.moments-container>.site-search-collapse,body.site-dark-mode.site-search-closing #app .scroll-container.site-search-sheet>.moments-container>.site-search-collapse{color:#fff!important;background:rgba(15,23,42,.58)!important;border-color:rgba(255,255,255,.16)!important;box-shadow:0 5px 14px rgba(0,0,0,.2)!important}
body.site-dark-mode.site-search-mode #app .scroll-container.site-search-sheet>.moments-container>.site-search-collapse:hover,body.site-dark-mode.site-search-closing #app .scroll-container.site-search-sheet>.moments-container>.site-search-collapse:hover{color:#fff!important;background:rgba(15,23,42,.8)!important;box-shadow:0 7px 17px rgba(0,0,0,.28)!important}

/* 搜索输入框只保留一个可控的清除按钮，隐藏浏览器自带的第二个“×”。 */
.site-search-native-input[type="search"]::-webkit-search-cancel-button{display:none!important;width:0!important;height:0!important;-webkit-appearance:none!important;appearance:none!important}
.site-search-native-input[type="search"]::-ms-clear{display:none!important;width:0!important;height:0!important}

/* 无搜索结果：浅色模式回到干净的透明内容区，深色模式保留深色提示卡片。 */
body.site-search-mode.site-search-has-query .search-result-indicator,body.site-search-closing.site-search-has-query .search-result-indicator{margin:0 16px!important;border:0!important;border-radius:14px!important;background:transparent!important;color:#64748b!important;box-shadow:none!important}
body.site-dark-mode.site-search-mode.site-search-has-query .search-result-indicator,body.site-dark-mode.site-search-closing.site-search-has-query .search-result-indicator{background:#242831!important;color:#fff!important}

/* 清除按钮移到搜索框右侧，搜索面板不再显示“取消”按钮。 */
body.site-search-mode .moments-container>.site-search-native-search>.site-search-native-clear,body.site-search-closing .moments-container>.site-search-native-search>.site-search-native-clear{position:static!important;top:auto!important;right:auto!important;display:none!important;align-items:center!important;justify-content:center!important;width:38px!important;height:38px!important;flex:0 0 38px!important;margin:0!important;padding:0!important;color:#64748b!important;font-size:25px!important;font-weight:500!important;line-height:1!important;background:transparent!important;border:0!important;border-radius:50%!important;cursor:pointer!important;transform:none!important;transition:color .2s ease,background-color .2s ease,transform .2s ease!important}
body.site-search-mode .moments-container>.site-search-native-search.has-value>.site-search-native-clear,body.site-search-closing .moments-container>.site-search-native-search.has-value>.site-search-native-clear{display:inline-flex!important}
body.site-search-mode .moments-container>.site-search-native-search>.site-search-native-clear:hover,body.site-search-closing .moments-container>.site-search-native-search>.site-search-native-clear:hover{color:#334155!important;background:rgba(148,163,184,.14)!important;transform:scale(1.05)!important}
body.site-search-mode .moments-container>.site-search-native-search>.site-search-native-cancel,body.site-search-closing .moments-container>.site-search-native-search>.site-search-native-cancel{display:none!important}
body.site-dark-mode.site-search-mode .moments-container>.site-search-native-search>.site-search-native-clear,body.site-dark-mode.site-search-closing .moments-container>.site-search-native-search>.site-search-native-clear{color:#a1a1aa!important}
body.site-dark-mode.site-search-mode .moments-container>.site-search-native-search>.site-search-native-clear:hover,body.site-dark-mode.site-search-closing .moments-container>.site-search-native-search>.site-search-native-clear:hover{color:#f4f4f5!important;background:rgba(255,255,255,.08)!important}

/* 收起按钮与搜索框垂直对齐，避免悬在拖拽条上方并遮住搜索图标。 */
body.site-search-mode #app .scroll-container.site-search-sheet>.moments-container>.site-search-collapse,body.site-search-closing #app .scroll-container.site-search-sheet>.moments-container>.site-search-collapse{top:58px!important}
body.site-search-mode .moments-container>.site-search-native-search,body.site-search-closing .moments-container>.site-search-native-search{margin-left:68px!important}

/* 播放时隐藏封面模糊层，避免深色模式下封面覆盖真实视频画面。 */
.site-player-video:not(.is-cover)>.site-player-video-backdrop{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
.site-player-video>.site-player-media,.site-player-video>iframe,.site-player-video>video{position:relative;z-index:1}
.site-player-video>.site-player-video-ui{z-index:3}
.site-player-ios-open{position:absolute;top:10px;right:10px;z-index:8;display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 12px;color:#fff;font-size:13px;font-weight:700;line-height:1;text-decoration:none;background:rgba(15,23,42,.88);border:1px solid rgba(255,255,255,.32);border-radius:8px;box-shadow:0 4px 14px rgba(0,0,0,.24);touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.site-player-ios-open:active{background:rgba(15,23,42,.98);transform:scale(.97)}
/*
 * 首页玻璃视觉层
 *
 * 这里集中管理首页动态卡片和分类导航的视觉规格。兼容层仍然负责线上
 * 交互增强，但所有新样式放在它之后加载，避免旧的主题色覆盖玻璃卡片。
 */

:root {
  --home-glass-bg: rgba(255, 255, 255, 0.72);
  --home-glass-bg-strong: rgba(255, 255, 255, 0.84);
  --home-glass-border: rgba(148, 163, 184, 0.2);
  --home-glass-shadow: 0 10px 28px rgba(15, 23, 42, 0.065);
  --home-glass-radius: 20px;
  --home-accent: #059669;
  --home-accent-soft: rgba(16, 185, 129, 0.12);
}

/* 页面底色和顶部栏也保持半透明，让玻璃的层次能透出来。 */
#app {
  background:
    radial-gradient(circle at 92% 2%, rgba(186, 230, 253, 0.34), transparent 30%),
    linear-gradient(180deg, #f8fbfd 0%, #f2f6f8 100%);
}

.top-bar {
  height: 52px;
  box-sizing: border-box;
  padding: 9px 15px;
  background: rgba(255, 255, 255, 0.68) !important;
  border-bottom: 1px solid rgba(148, 163, 184, 0.14);
  box-shadow: 0 6px 20px rgba(15, 23, 42, 0.045);
  backdrop-filter: blur(22px) saturate(145%);
  -webkit-backdrop-filter: blur(22px) saturate(145%);
}

.top-bar .title {
  margin-top: 0;
  color: #0f172a;
  font-size: 17px;
  line-height: 1;
}

.top-bar-icon {
  color: #334155;
}

.top-bar-actions > * + * {
  margin-left: 16px;
}

.feed {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 0 12px 28px;
}

/* 统一的轻量玻璃动态卡片 */
.post-item,
.post-item.site-music-post,
.post-item:has(.movie-card-vertical) {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  margin: 0;
  padding: 16px;
  overflow: visible;
  background: var(--home-glass-bg) !important;
  border: 1px solid var(--home-glass-border) !important;
  border-radius: var(--home-glass-radius) !important;
  box-shadow: var(--home-glass-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.64);
  backdrop-filter: blur(22px) saturate(142%);
  -webkit-backdrop-filter: blur(22px) saturate(142%);
  transition:
    transform 0.28s cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 0.28s ease,
    border-color 0.28s ease,
    background 0.28s ease;
}

.post-item:hover,
.post-item.site-music-post:hover,
.post-item:has(.movie-card-vertical):hover {
  border-color: rgba(52, 211, 153, 0.38) !important;
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.76);
  transform: translateY(-2px);
}

.post-content-wrapper {
  width: 100%;
  min-width: 0;
}

.post-text {
  color: #1e293b;
  font-size: 14px;
  line-height: 1.55;
}

.post-topline {
  margin-bottom: 7px;
}

.post-item:not(.post-item-with-author) .post-topline {
  height: 0;
}

.author-name {
  color: #334155;
  font-size: 14px;
}

.post-header-actions {
  top: 15px;
  right: 15px;
}

.post-type-badge {
  min-height: 25px;
  padding: 4px 9px;
  color: #64748b;
  background: rgba(248, 250, 252, 0.68);
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: 999px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.68);
}

.post-type-badge .icon-svg {
  color: #10b981;
}

.post-author-avatar {
  width: 38px;
  height: 38px;
  margin-top: 1px;
}

.post-author-avatar img {
  border: 2px solid rgba(255, 255, 255, 0.78);
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.1);
}

/* 影视分享：3:4 海报 + 紧凑信息列 */
.movie-card-vertical {
  position: relative;
  display: flex;
  align-items: stretch;
  width: 100%;
  min-height: 132px;
  height: auto;
  box-sizing: border-box;
  gap: 13px;
  margin-top: 10px;
  padding: 10px;
  overflow: hidden;
  color: #1e293b !important;
  background: rgba(255, 255, 255, 0.34) !important;
  border: 1px solid rgba(148, 163, 184, 0.17) !important;
  border-radius: 16px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.64);
  cursor: pointer;
  transition:
    transform 0.28s cubic-bezier(0.16, 1, 0.3, 1),
    border-color 0.28s ease,
    background 0.28s ease,
    box-shadow 0.28s ease;
}

.movie-card-vertical::before {
  position: absolute;
  inset: 0;
  content: '';
  pointer-events: none;
  background: linear-gradient(112deg, rgba(255, 255, 255, 0.22), transparent 38%, rgba(255, 255, 255, 0.16));
}

.movie-card-vertical:hover {
  background: rgba(255, 255, 255, 0.56) !important;
  border-color: rgba(16, 185, 129, 0.38) !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.09), inset 0 1px 0 rgba(255, 255, 255, 0.72);
  transform: translateY(-2px);
}

.movie-card-vertical .cover-bg {
  position: relative;
  inset: auto;
  z-index: 1;
  width: 88px;
  height: auto;
  min-height: 110px;
  flex: 0 0 88px;
  overflow: hidden;
  aspect-ratio: 3 / 4;
  border-radius: 11px;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.16);
}

.movie-card-vertical .cover-bg img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
  border: 0;
  border-radius: inherit;
  transition: transform 0.48s cubic-bezier(0.16, 1, 0.3, 1), filter 0.48s ease;
}

.movie-card-vertical:hover .cover-bg img {
  filter: saturate(1.06) brightness(1.04);
  transform: scale(1.045);
}

.cover-shine {
  position: absolute;
  inset: 0;
  display: block;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.25), transparent 38%, rgba(15, 23, 42, 0.16));
  border-radius: inherit;
}

.movie-card-vertical .info-wrapper {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  width: auto;
  min-width: 0;
  flex: 1 1 auto;
  gap: 10px;
  padding: 2px 1px 2px 0;
}

.movie-card-vertical .info-main {
  display: flex;
  min-width: 0;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  overflow: hidden;
  padding: 0;
}

.movie-card-kicker,
.share-card-kicker {
  color: #94a3b8;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
}

.movie-card-vertical .share-title {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 7px;
  margin: 0;
  overflow: hidden;
  color: #0f172a !important;
  font-size: 16px;
  font-weight: 850;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.movie-card-vertical .share-title > span:first-child {
  overflow: hidden;
  text-overflow: ellipsis;
}

.movie-card-vertical .rating-row {
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 17px;
}

.movie-card-vertical .rating-stars-wrapper {
  font-size: 14px;
}

.movie-card-vertical .rating-score {
  color: #b45309;
  font-size: 12px;
  font-weight: 850;
}

.movie-card-vertical .details-row {
  display: flex;
  align-items: center;
  min-width: 0;
  overflow: hidden;
  color: #64748b !important;
  font-size: 11px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.movie-card-vertical .category-tag {
  flex: 0 0 auto;
  margin-right: 6px;
  padding: 3px 7px;
  color: #047857 !important;
  font-size: 10px;
  font-weight: 800;
  background: rgba(209, 250, 229, 0.72) !important;
  border: 1px solid rgba(52, 211, 153, 0.25);
  border-radius: 999px;
}

.movie-card-vertical .info-action {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 36px;
  gap: 3px;
  padding: 0;
  color: #059669 !important;
}

.movie-card-vertical .info-action .action-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  background: rgba(236, 253, 245, 0.82);
  border: 1px solid rgba(52, 211, 153, 0.22);
  border-radius: 50%;
  box-shadow: 0 5px 14px rgba(16, 185, 129, 0.1);
  transition: background 0.24s ease, transform 0.24s ease, box-shadow 0.24s ease;
}

.movie-card-vertical:hover .info-action .action-icon {
  background: #d1fae5;
  box-shadow: 0 8px 18px rgba(16, 185, 129, 0.2);
  transform: scale(1.08);
}

.movie-card-vertical .action-icon .icon-svg {
  width: 18px;
  height: 18px;
}

.movie-card-vertical .action-text {
  display: none;
}

.rating-stars-wrapper {
  line-height: 1;
}

.stars-background .icon-svg {
  color: rgba(245, 158, 11, 0.2) !important;
}

/* 音乐分享：同一套海报、标题、播放入口规格 */
.post-item[data-post-type='music'] .share-card,
.post-item.site-music-post .share-card.site-music-playlist-card,
.music-share-card {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 76px;
  box-sizing: border-box;
  gap: 13px;
  margin: 10px 0 0;
  padding: 9px;
  overflow: hidden;
  color: #1e293b !important;
  background: rgba(255, 255, 255, 0.4) !important;
  border: 1px solid rgba(148, 163, 184, 0.17) !important;
  border-radius: 16px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
  cursor: pointer;
  transition: background 0.28s ease, border-color 0.28s ease, box-shadow 0.28s ease, transform 0.28s ease;
}

.post-item[data-post-type='music'] .share-card:hover,
.post-item.site-music-post .share-card.site-music-playlist-card:hover,
.music-share-card:hover {
  background: rgba(255, 255, 255, 0.62) !important;
  border-color: rgba(52, 211, 153, 0.35) !important;
  box-shadow: 0 9px 22px rgba(15, 23, 42, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.82);
  transform: translateY(-2px);
}

.music-cover-wrap {
  position: relative;
  width: 58px;
  height: 58px;
  flex: 0 0 58px;
  overflow: hidden;
  border-radius: 13px;
  box-shadow: 0 6px 15px rgba(15, 23, 42, 0.14);
}

.music-share-card .share-cover,
.post-item.site-music-post .share-card .share-cover {
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  margin: 0;
  object-fit: cover;
  background: #e2e8f0;
  border: 0 !important;
  border-radius: inherit;
  transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1);
}

.music-share-card:hover .share-cover,
.post-item.site-music-post .share-card:hover .share-cover {
  transform: scale(1.06);
}

.music-cover-play {
  position: absolute;
  right: 5px;
  bottom: 5px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  color: #fff;
  background: rgba(5, 150, 105, 0.86);
  border-radius: 50%;
  opacity: 0;
  transform: scale(0.72);
  transition: opacity 0.24s ease, transform 0.28s cubic-bezier(0.16, 1, 0.3, 1);
}

.music-share-card:hover .music-cover-play {
  opacity: 1;
  transform: scale(1);
}

.music-cover-play .icon-svg {
  width: 12px;
  height: 12px;
}

.music-share-card .share-info,
.post-item.site-music-post .share-card .share-info {
  display: flex;
  min-width: 0;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  margin: 0;
  overflow: hidden;
}

.music-share-card .share-title-line,
.post-item.site-music-post .share-card .share-title-line {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 7px;
}

.music-share-card .share-title,
.post-item.site-music-post .share-card .share-title {
  min-width: 0;
  overflow: hidden;
  color: #0f172a !important;
  font-size: 15px;
  font-weight: 850;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.music-share-card .share-subtitle,
.post-item.site-music-post .share-card .share-subtitle {
  margin: 0;
  overflow: hidden;
  color: #64748b !important;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.share-card-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 27px;
  height: 27px;
  flex: 0 0 27px;
  color: #10b981;
  font-size: 17px;
  background: rgba(236, 253, 245, 0.72);
  border-radius: 50%;
  transition: transform 0.25s ease, background 0.25s ease;
}

.music-share-card:hover .share-card-arrow {
  background: #d1fae5;
  transform: translate(2px, -2px);
}

/* 视频和日常图片也使用相同的圆角、边缘和交互节奏。 */
.video-share-container.video-share-card {
  width: 100%;
  max-width: none;
  aspect-ratio: 16 / 9;
  box-sizing: border-box;
  margin-top: 10px;
  overflow: hidden;
  background: rgba(15, 23, 42, 0.12);
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: 17px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.1);
  transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.28s ease;
}

.video-share-container.video-share-card:hover {
  box-shadow: 0 13px 28px rgba(15, 23, 42, 0.15);
  transform: translateY(-2px);
}

.video-share-card .play-icon-overlay {
  background: linear-gradient(135deg, rgba(15, 23, 42, 0.08), rgba(15, 23, 42, 0.3));
}

.video-share-card .play-icon {
  width: 48px;
  height: 48px;
  padding: 13px;
  box-sizing: border-box;
  color: #fff;
  background: rgba(255, 255, 255, 0.18);
  border: 1px solid rgba(255, 255, 255, 0.46);
  border-radius: 50%;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: background 0.25s ease, transform 0.28s cubic-bezier(0.16, 1, 0.3, 1);
}

.video-share-card:hover .play-icon {
  background: rgba(16, 185, 129, 0.82);
  transform: scale(1.08);
}

.image-grid {
  gap: 6px;
  margin-top: 10px;
}

.image-grid .grid-item {
  overflow: hidden;
  border-radius: 13px;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.07);
}

.image-grid .grid-item img {
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), filter 0.35s ease;
}

.image-grid .grid-item:hover img {
  filter: saturate(1.04);
  transform: scale(1.035);
}

.login-prompt {
  margin-top: 10px;
  color: #64748b;
  background: rgba(248, 250, 252, 0.55);
  border: 1px dashed rgba(148, 163, 184, 0.3);
  border-radius: 14px;
}

/* 底部动作行：时间在左，互动和快捷播放在右 */
.post-engagement-actions {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 4px;
  margin-top: 11px;
  padding-top: 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.16);
}

.post-time {
  min-width: 0;
  margin-right: auto;
  overflow: hidden;
  color: #94a3b8;
  font-size: 11px;
  font-weight: 700;
  line-height: 30px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.post-actions-menu-bottom .actions-btn {
  width: 30px;
  height: 30px;
  color: #94a3b8;
  background: transparent;
  border-radius: 50%;
}

.post-actions-menu-bottom .actions-btn:hover,
.post-actions-menu-bottom .actions-btn[aria-expanded='true'] {
  color: #047857;
  background: rgba(236, 253, 245, 0.76);
}

.post-item > .interaction-section,
.post-item > .comment-form {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.post-item > .interaction-section {
  /* 防止 100% 宽度再叠加内边距，造成点赞区域右侧越过卡片边缘。 */
  max-width: 100%;
  margin: 10px 0 0;
  padding: 8px 10px 10px;
  overflow: hidden;
  background:
    radial-gradient(circle at 0 0, rgba(16, 185, 129, 0.07), transparent 42%),
    rgba(255, 255, 255, 0.3);
  border: 1px solid rgba(148, 163, 184, 0.12);
  border-radius: 15px;
  box-shadow:
    0 7px 18px rgba(15, 23, 42, 0.035),
    inset 0 1px 0 rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(16px) saturate(132%);
  -webkit-backdrop-filter: blur(16px) saturate(132%);
}

.post-item > .comment-form {
  margin-top: 10px;
}

.post-item > .interaction-section .likes {
  box-sizing: border-box;
  min-height: 24px;
  padding: 0 0 7px;
  padding-left: 0px;
  color: #94a3b8;
  font-size: 11px;
}

.post-item > .interaction-section:has(.likes):not(:has(.comments)) {
  padding-top: 7px;
  padding-bottom: 0;
}

.post-item > .interaction-section:has(.likes):not(:has(.comments)) .likes {
  padding-bottom: 7px;
}

.post-item > .interaction-section .like-icon {
  width: 17px;
  height: 17px;
  color: #fb7185;
  filter: drop-shadow(0 3px 5px rgba(244, 63, 94, 0.16));
}

.post-item .likes-list,
.post-item .likes-suffix {
  color: #94a3b8;
}

.post-item .likes-list {
  color: #64748b;
  font-weight: 800;
}

.post-item .divider {
  margin-bottom: 10px;
  background: rgba(148, 163, 184, 0.16);
}

.post-item > .interaction-section .comment-row-root .comment-body,
.post-item > .interaction-section .reply-item .reply-body {
  background: rgba(255, 255, 255, 0.48);
  border-color: rgba(148, 163, 184, 0.12);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.62);
  backdrop-filter: blur(12px) saturate(125%);
  -webkit-backdrop-filter: blur(12px) saturate(125%);
}

.post-item > .interaction-section .comment-avatar {
  background: rgba(236, 253, 245, 0.68);
  border-color: rgba(52, 211, 153, 0.24);
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.09);
}

.post-item > .interaction-section .replies {
  border-left-color: rgba(16, 185, 129, 0.18);
}

.post-item > .interaction-section .load-more-comments {
  background: rgba(255, 255, 255, 0.42);
  border-color: rgba(148, 163, 184, 0.13);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.58);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.load-more-indicator {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  box-sizing: border-box;
  padding: 8px 14px;
  color: #94a3b8;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: 0.04em;
  background: rgba(255, 255, 255, 0.28);
  border: 1px solid rgba(148, 163, 184, 0.1);
  border-radius: 999px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.56);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.load-more-indicator span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.load-more-indicator span::before {
  display: inline-block;
  width: 5px;
  height: 5px;
  content: '';
  background: #10b981;
  border-radius: 50%;
  box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.1);
}

.load-more-indicator.is-actionable {
  cursor: pointer;
  transition: color 0.2s ease, background-color 0.2s ease, transform 0.2s ease;
}

.load-more-indicator.is-actionable:hover {
  color: #64748b;
  background: rgba(255, 255, 255, 0.46);
  transform: translateY(-1px);
}

/* 分段胶囊导航 */
.filter-controls-wrapper {
  position: relative;
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 7px;
  margin: 0 12px 10px;
  padding: 4px;
  overflow: visible;
  background: rgba(255, 255, 255, 0.62) !important;
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 17px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.055), inset 0 1px 0 rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(20px) saturate(140%);
  -webkit-backdrop-filter: blur(20px) saturate(140%);
}

.filter-tabs {
  display: flex;
  min-width: 0;
  flex: 1 1 auto;
  gap: 2px;
  padding: 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  touch-action: pan-x pan-y pinch-zoom;
  -webkit-overflow-scrolling: touch;
}

.tab-button {
  position: relative;
  flex: 0 0 auto;
  padding: 8px 12px;
  color: #64748b;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  background: transparent;
  border-radius: 12px;
  transition: color 0.22s ease, background 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
}

.tab-button:not(:first-child) {
  margin-left: 0;
}

.tab-button:hover {
  color: #334155;
  background: rgba(241, 245, 249, 0.68);
  transform: translateY(-1px);
}

.tab-button.active {
  color: #047857;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 3px 9px rgba(15, 23, 42, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.88);
}

.tab-button.active::after {
  display: none;
}

.advanced-filter-toggle-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  gap: 5px;
  min-height: 34px;
  margin-left: auto;
  padding: 7px 11px;
  color: #047857;
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
  background: rgba(236, 253, 245, 0.76);
  border: 1px solid rgba(52, 211, 153, 0.25);
  border-radius: 999px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
  transition: color 0.22s ease, background 0.22s ease, border-color 0.22s ease, transform 0.22s ease;
}

.advanced-filter-toggle-btn:hover,
.advanced-filter-toggle-btn.open {
  color: #065f46;
  background: rgba(209, 250, 229, 0.94);
  border-color: rgba(16, 185, 129, 0.4);
  transform: translateY(-1px);
}

.advanced-filter-toggle-btn .icon-svg {
  width: 14px;
  height: 14px;
}

.advanced-filter-toggle-btn[data-selected-count]:not([data-selected-count='0'])::after {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 17px;
  height: 17px;
  box-sizing: border-box;
  padding: 0 4px;
  content: attr(data-selected-count);
  color: #fff;
  font-size: 9px;
  font-weight: 900;
  line-height: 1;
  background: #10b981;
  border-radius: 999px;
  box-shadow: 0 3px 8px rgba(16, 185, 129, 0.24);
}

.filter-controls-wrapper > .scroll-indicator-track {
  display: none;
}

.advanced-filter-panel {
  max-height: 0;
  margin: 0 12px;
  padding: 0 13px;
  overflow: hidden;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 18px;
  opacity: 0;
  transform: translateY(-5px);
  transition: max-height 0.4s cubic-bezier(0.16, 1, 0.3, 1), margin 0.32s ease, padding 0.4s ease, opacity 0.25s ease, transform 0.4s ease;
}

.advanced-filter-panel.open {
  max-height: 760px;
  margin: 0 12px 12px;
  padding-top: 7px;
  padding-bottom: 9px;
  background: rgba(255, 255, 255, 0.58);
  border-color: rgba(148, 163, 184, 0.18);
  box-shadow: 0 10px 26px rgba(15, 23, 42, 0.065), inset 0 1px 0 rgba(255, 255, 255, 0.72);
  opacity: 1;
  transform: translateY(0);
  backdrop-filter: blur(20px) saturate(140%);
  -webkit-backdrop-filter: blur(20px) saturate(140%);
}

.advanced-filter-panel .filter-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
  padding: 9px 0;
}

.advanced-filter-panel .filter-label {
  width: 44px;
  flex: 0 0 44px;
  padding-top: 7px;
  color: #94a3b8;
  font-size: 12px;
  font-weight: 850;
}

.advanced-filter-panel .filter-options {
  display: flex;
  min-width: 0;
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: 7px;
}

.advanced-filter-panel .filter-btn {
  min-height: 31px;
  padding: 6px 11px;
  color: #475569;
  font-size: 12px;
  font-weight: 750;
  line-height: 1;
  background: rgba(241, 245, 249, 0.74);
  border: 1px solid transparent;
  border-radius: 999px;
  transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.advanced-filter-panel .filter-btn:hover {
  color: #047857;
  background: rgba(236, 253, 245, 0.84);
  border-color: rgba(52, 211, 153, 0.2);
  transform: translateY(-1px);
}

.advanced-filter-panel .filter-btn.active {
  color: #fff;
  background: linear-gradient(135deg, #10b981, #06b6d4);
  border-color: transparent;
  box-shadow: 0 5px 12px rgba(16, 185, 129, 0.2);
}

/* 深色玻璃：保留内容层次，不使用不透明黑块。 */
body.site-dark-mode,
html.site-dark-mode {
  background: #09090b;
}

body.site-dark-mode #app {
  background:
    radial-gradient(circle at 92% 0, rgba(20, 184, 166, 0.12), transparent 30%),
    linear-gradient(180deg, #111418 0%, #09090b 100%);
}

body.site-dark-mode .top-bar {
  background: rgba(15, 17, 21, 0.64) !important;
  border-bottom-color: rgba(255, 255, 255, 0.08);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.2);
}

body.site-dark-mode .top-bar .title,
body.site-dark-mode .top-bar-icon {
  color: #f4f4f5;
}

body.site-dark-mode .post-item,
body.site-dark-mode .post-item.site-music-post,
body.site-dark-mode .post-item:has(.movie-card-vertical) {
  background: rgba(24, 24, 27, 0.68) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

body.site-dark-mode .post-item:hover,
body.site-dark-mode .post-item.site-music-post:hover,
body.site-dark-mode .post-item:has(.movie-card-vertical):hover {
  border-color: rgba(52, 211, 153, 0.34) !important;
  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

body.site-dark-mode .post-text,
body.site-dark-mode .author-name {
  color: #e4e4e7;
}

body.site-dark-mode .post-type-badge {
  color: #a1a1aa;
  background: rgba(63, 63, 70, 0.48);
  border-color: rgba(255, 255, 255, 0.09);
  box-shadow: none;
}

body.site-dark-mode .movie-card-vertical {
  color: #e4e4e7 !important;
  background: rgba(39, 39, 42, 0.48) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

body.site-dark-mode .movie-card-vertical:hover {
  background: rgba(63, 63, 70, 0.56) !important;
  border-color: rgba(52, 211, 153, 0.34) !important;
}

body.site-dark-mode .movie-card-vertical .share-title,
body.site-dark-mode .music-share-card .share-title,
body.site-dark-mode .post-item.site-music-post .share-card .share-title {
  color: #f4f4f5 !important;
}

body.site-dark-mode .movie-card-kicker,
body.site-dark-mode .share-card-kicker,
body.site-dark-mode .movie-card-vertical .details-row,
body.site-dark-mode .music-share-card .share-subtitle,
body.site-dark-mode .post-item.site-music-post .share-card .share-subtitle {
  color: #a1a1aa !important;
}

body.site-dark-mode .movie-card-vertical .category-tag {
  color: #a7f3d0 !important;
  background: rgba(6, 78, 59, 0.46) !important;
  border-color: rgba(52, 211, 153, 0.2);
}

body.site-dark-mode .movie-card-vertical .info-action {
  color: #6ee7b7 !important;
}

body.site-dark-mode .movie-card-vertical .info-action .action-icon {
  background: rgba(6, 78, 59, 0.5);
  border-color: rgba(52, 211, 153, 0.24);
  box-shadow: none;
}

body.site-dark-mode .post-item[data-post-type='music'] .share-card,
body.site-dark-mode .post-item.site-music-post .share-card.site-music-playlist-card,
body.site-dark-mode .music-share-card {
  color: #e4e4e7 !important;
  background: rgba(39, 39, 42, 0.45) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

body.site-dark-mode .post-item[data-post-type='music'] .share-card:hover,
body.site-dark-mode .post-item.site-music-post .share-card.site-music-playlist-card:hover,
body.site-dark-mode .music-share-card:hover {
  background: rgba(63, 63, 70, 0.58) !important;
  border-color: rgba(52, 211, 153, 0.34) !important;
}

body.site-dark-mode .music-cover-play,
body.site-dark-mode .share-card-arrow {
  color: #d1fae5;
  background: rgba(5, 150, 105, 0.62);
}

body.site-dark-mode .post-engagement-actions {
  border-top-color: rgba(255, 255, 255, 0.09);
}

body.site-dark-mode .post-time,
body.site-dark-mode .post-item .likes,
body.site-dark-mode .post-item .likes-list,
body.site-dark-mode .post-item .likes-suffix {
  color: #a1a1aa;
}

body.site-dark-mode .post-item > .interaction-section,
body.site-dark-mode .interaction-section {
  background:
    radial-gradient(circle at 0 0, rgba(52, 211, 153, 0.075), transparent 44%),
    rgba(255, 255, 255, 0.032);
  border: 0 !important;
  box-shadow:
    0 8px 20px rgba(0, 0, 0, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

body.site-dark-mode .post-item > .interaction-section .comment-row-root .comment-body,
body.site-dark-mode .post-item > .interaction-section .reply-item .reply-body {
  background: rgba(255, 255, 255, 0.042);
  border: 0;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

body.site-dark-mode .post-item > .interaction-section .comment-avatar {
  background: rgba(16, 185, 129, 0.11);
  border: 0;
  box-shadow: inset 0 1px 0 rgba(167, 243, 208, 0.1);
}

body.site-dark-mode .post-item > .interaction-section .replies {
  border-left-color: rgba(52, 211, 153, 0.18);
}

body.site-dark-mode .post-item > .interaction-section .load-more-comments {
  background: rgba(255, 255, 255, 0.04);
  border: 0;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

body.site-dark-mode .load-more-indicator {
  color: #a1a1aa;
  background: rgba(255, 255, 255, 0.03);
  border-color: rgba(255, 255, 255, 0.07);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body.site-dark-mode .load-more-indicator span::before {
  background: #6ee7b7;
  box-shadow: 0 0 0 3px rgba(52, 211, 153, 0.1);
}

/* 提高卡片内以及真正播放器中的播放图标对比度。 */
.movie-card-vertical .info-action .action-icon,
.music-cover-play,
.video-share-card .play-icon {
  color: #fff;
  background: rgba(51, 65, 85, 0.68) !important;
  border-color: rgba(255, 255, 255, 0.3);
  box-shadow: 0 5px 14px rgba(15, 23, 42, 0.18);
}

.movie-card-vertical .info-action .action-icon {
  border: 0;
}

.movie-card-vertical:hover .info-action .action-icon,
.music-share-card:hover .music-cover-play,
.video-share-card:hover .play-icon {
  color: #fff;
  background: rgba(30, 41, 59, 0.78) !important;
  box-shadow: 0 8px 19px rgba(15, 23, 42, 0.25);
}

.site-player-play-main {
  background: rgba(51, 65, 85, 0.68) !important;
  border: 0 !important;
  box-shadow: 0 9px 24px rgba(0, 0, 0, 0.38), inset 0 1px 0 rgba(255, 255, 255, 0.25);
}

.site-player-play-main svg {
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.48));
}

body.site-dark-mode .movie-card-vertical .info-action .action-icon,
body.site-dark-mode .music-cover-play,
body.site-dark-mode .video-share-card .play-icon {
  color: #f8fafc;
  background: rgba(71, 85, 105, 0.7) !important;
  border-color: rgba(255, 255, 255, 0.18);
  box-shadow: 0 6px 17px rgba(0, 0, 0, 0.28);
}

body.site-dark-mode .site-player-play-main {
  color: #f8fafc !important;
  background: rgba(71, 85, 105, 0.72) !important;
  border: 0 !important;
}

body.site-dark-mode .post-actions-menu-bottom .actions-btn {
  color: #71717a;
}

body.site-dark-mode .post-actions-menu-bottom .actions-btn:hover,
body.site-dark-mode .post-actions-menu-bottom .actions-btn[aria-expanded='true'] {
  color: #a7f3d0;
  background: rgba(16, 185, 129, 0.14);
}

body.site-dark-mode .filter-controls-wrapper {
  background: rgba(24, 24, 27, 0.58) !important;
  border-color: rgba(255, 255, 255, 0.1);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body.site-dark-mode .tab-button {
  color: #a1a1aa;
}

body.site-dark-mode .tab-button:hover {
  color: #e4e4e7;
  background: rgba(255, 255, 255, 0.07);
}

body.site-dark-mode .tab-button.active {
  color: #a7f3d0;
  background: rgba(63, 63, 70, 0.76);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 3px 10px rgba(0, 0, 0, 0.18);
}

body.site-dark-mode .advanced-filter-toggle-btn {
  color: #a7f3d0;
  background: rgba(6, 78, 59, 0.42);
  border-color: rgba(52, 211, 153, 0.28);
}

body.site-dark-mode .advanced-filter-toggle-btn:hover,
body.site-dark-mode .advanced-filter-toggle-btn.open {
  color: #d1fae5;
  background: rgba(6, 95, 70, 0.58);
}

body.site-dark-mode .advanced-filter-toggle-btn[data-selected-count]:not([data-selected-count='0'])::after {
  color: #052e1b;
  background: #6ee7b7;
  box-shadow: 0 3px 9px rgba(52, 211, 153, 0.22);
}

body.site-dark-mode .advanced-filter-panel.open {
  background: rgba(24, 24, 27, 0.65);
  border-color: rgba(255, 255, 255, 0.1);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body.site-dark-mode .advanced-filter-panel .filter-label {
  color: #a1a1aa;
}

body.site-dark-mode .advanced-filter-panel .filter-btn {
  color: #d4d4d8;
  background: rgba(63, 63, 70, 0.62);
  border-color: rgba(255, 255, 255, 0.07);
}

body.site-dark-mode .advanced-filter-panel .filter-btn:hover {
  color: #d1fae5;
  background: rgba(6, 95, 70, 0.54);
}

body.site-dark-mode .advanced-filter-panel .filter-btn.active {
  color: #052e1b;
  background: linear-gradient(135deg, #34d399, #2dd4bf);
}

/*
 * 音乐 / 影视媒体卡最终统一层
 * 旧兼容样式曾给影视互动区额外添加左右 16px 外边距，这里用同等或更高
 * 优先级归零，确保两类卡片的内容、操作区和点赞摘要落在同一条基线上。
 */
.post-item.site-music-post > .interaction-section,
.post-item[data-post-type='music'] > .interaction-section,
.post-item:has(.movie-card-vertical) > .interaction-section,
.post-item[data-post-type='movie'] > .interaction-section {
  width: 100% !important;
  max-width: 100% !important;
  margin: 10px 0 0 !important;
}

.post-item.site-music-post > .comment-form,
.post-item[data-post-type='music'] > .comment-form,
.post-item:has(.movie-card-vertical) > .comment-form,
.post-item[data-post-type='movie'] > .comment-form {
  width: 100% !important;
  margin: 10px 0 0 !important;
}

.movie-card-vertical,
.post-item[data-post-type='music'] .music-share-card,
.post-item.site-music-post .share-card.site-music-playlist-card {
  margin-top: 10px;
  padding: 9px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.48), rgba(248, 250, 252, 0.3)) !important;
  border: 1px solid rgba(148, 163, 184, 0.14) !important;
  border-radius: 16px !important;
  box-shadow:
    0 8px 22px rgba(15, 23, 42, 0.045),
    inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

.movie-card-vertical:hover,
.post-item[data-post-type='music'] .music-share-card:hover,
.post-item.site-music-post .share-card.site-music-playlist-card:hover {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.68), rgba(240, 253, 250, 0.4)) !important;
  border-color: rgba(52, 211, 153, 0.26) !important;
  box-shadow:
    0 12px 27px rgba(15, 23, 42, 0.075),
    inset 0 1px 0 rgba(255, 255, 255, 0.88);
}

/* 深色媒体动态：去掉硬描边，用低透明渐变、顶部反光和阴影建立空间层次。 */
body.site-dark-mode .post-item.site-music-post,
body.site-dark-mode .post-item[data-post-type='music'],
body.site-dark-mode .post-item:has(.movie-card-vertical),
body.site-dark-mode .post-item[data-post-type='movie'] {
  background:
    radial-gradient(circle at 92% 0, rgba(16, 185, 129, 0.075), transparent 34%),
    linear-gradient(145deg, rgba(39, 39, 42, 0.72), rgba(24, 24, 27, 0.66)) !important;
  border: 0 !important;
  box-shadow:
    0 20px 44px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

body.site-dark-mode .post-item.site-music-post:hover,
body.site-dark-mode .post-item[data-post-type='music']:hover,
body.site-dark-mode .post-item:has(.movie-card-vertical):hover,
body.site-dark-mode .post-item[data-post-type='movie']:hover {
  background:
    radial-gradient(circle at 92% 0, rgba(52, 211, 153, 0.1), transparent 36%),
    linear-gradient(145deg, rgba(45, 45, 50, 0.78), rgba(24, 24, 27, 0.7)) !important;
  border: 0 !important;
  box-shadow:
    0 24px 52px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

body.site-dark-mode .movie-card-vertical,
body.site-dark-mode .post-item[data-post-type='music'] .music-share-card,
body.site-dark-mode .post-item.site-music-post .share-card.site-music-playlist-card {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.022)) !important;
  border: 0 !important;
  box-shadow:
    0 12px 28px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

body.site-dark-mode .movie-card-vertical:hover,
body.site-dark-mode .post-item[data-post-type='music'] .music-share-card:hover,
body.site-dark-mode .post-item.site-music-post .share-card.site-music-playlist-card:hover {
  background:
    linear-gradient(135deg, rgba(52, 211, 153, 0.09), rgba(255, 255, 255, 0.035)) !important;
  border: 0 !important;
  box-shadow:
    0 16px 34px rgba(0, 0, 0, 0.24),
    inset 0 1px 0 rgba(167, 243, 208, 0.08);
}

body.site-dark-mode .post-item[data-post-type='music'] .post-type-badge,
body.site-dark-mode .post-item[data-post-type='movie'] .post-type-badge,
body.site-dark-mode .post-item:has(.movie-card-vertical) .post-type-badge {
  color: #cbd5e1;
  background: rgba(255, 255, 255, 0.05);
  border: 0;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.075);
}

body.site-dark-mode .post-item[data-post-type='music'] .post-engagement-actions,
body.site-dark-mode .post-item[data-post-type='movie'] .post-engagement-actions,
body.site-dark-mode .post-item:has(.movie-card-vertical) .post-engagement-actions {
  border-top: 0;
  padding-top: 11px;
}

body.site-dark-mode .post-item.site-music-post > .interaction-section,
body.site-dark-mode .post-item[data-post-type='music'] > .interaction-section,
body.site-dark-mode .post-item:has(.movie-card-vertical) > .interaction-section,
body.site-dark-mode .post-item[data-post-type='movie'] > .interaction-section {
  width: 100% !important;
  max-width: 100% !important;
  margin: 10px 0 0 !important;
  background:
    radial-gradient(circle at 0 0, rgba(52, 211, 153, 0.065), transparent 42%),
    rgba(255, 255, 255, 0.028);
  border: 0 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

body.site-dark-mode .post-item.site-music-post > .comment-form,
body.site-dark-mode .post-item[data-post-type='music'] > .comment-form,
body.site-dark-mode .post-item:has(.movie-card-vertical) > .comment-form,
body.site-dark-mode .post-item[data-post-type='movie'] > .comment-form {
  width: 100% !important;
  margin: 10px 0 0 !important;
}

/* 桌面端深色影视动态恢复与手机端一致的内收留白。旧兼容层为了铺满曾把
 * 外层 post-item 的 padding 强制设为 0，导致影视卡片和播放按钮贴到外框边缘；
 * 手机端保留下方已有的 13px 规则，不改变当前正常的小屏布局。 */
@media (min-width: 601px) {
  body.site-dark-mode .post-item:has(.movie-card-vertical) {
    padding: 16px !important;
  }
}

@media (max-width: 600px) {
  .feed {
    gap: 10px;
    padding-right: 10px;
    padding-left: 10px;
  }

  .post-item,
  .post-item.site-music-post,
  .post-item:has(.movie-card-vertical) {
    padding: 13px;
    border-radius: 18px !important;
  }

  body.site-dark-mode .post-item:has(.movie-card-vertical),
  body.site-dark-mode .post-item.site-music-post {
    padding: 13px !important;
  }

  .post-header-actions {
    top: 12px;
    right: 12px;
  }

  .post-type-badge {
    min-height: 24px;
    padding: 4px 7px;
    font-size: 10px;
  }

  .movie-card-vertical {
    min-height: 112px;
    gap: 10px;
    margin-top: 8px;
    padding: 8px;
    border-radius: 14px !important;
  }

  .movie-card-vertical .cover-bg {
    width: 76px;
    min-height: 98px;
    flex-basis: 76px;
    border-radius: 9px;
  }

  .movie-card-vertical .info-main {
    gap: 4px;
  }

  .movie-card-kicker,
  .share-card-kicker {
    font-size: 9px;
  }

  .movie-card-vertical .share-title {
    font-size: 14px;
  }

  .movie-card-vertical .details-row {
    font-size: 10px;
  }

  .movie-card-vertical .info-action {
    flex-basis: 30px;
  }

  .movie-card-vertical .info-action .action-icon {
    width: 30px;
    height: 30px;
  }

  .post-item[data-post-type='music'] .share-card,
  .post-item.site-music-post .share-card.site-music-playlist-card,
  .music-share-card {
    min-height: 68px;
    gap: 10px;
    padding: 7px;
    border-radius: 14px !important;
  }

  .music-cover-wrap {
    width: 52px;
    height: 52px;
    flex-basis: 52px;
    border-radius: 11px;
  }

  .music-share-card .share-title,
  .post-item.site-music-post .share-card .share-title {
    font-size: 14px;
  }

  .share-card-arrow {
    width: 24px;
    height: 24px;
    flex-basis: 24px;
    font-size: 15px;
  }

  .post-engagement-actions {
    gap: 2px;
  }

  .post-actions-menu-bottom .actions-btn {
    width: 28px;
  }

  .post-item > .interaction-section {
    padding-right: 8px;
    padding-left: 8px;
    border-radius: 13px;
  }

  .post-time {
    font-size: 10px;
  }

  .filter-controls-wrapper {
    margin-right: 10px;
    margin-left: 10px;
    padding: 3px;
    border-radius: 15px;
  }

  .tab-button {
    padding-right: 10px;
    padding-left: 10px;
    font-size: 12px;
  }

  .advanced-filter-toggle-btn {
    min-height: 32px;
    padding-right: 9px;
    padding-left: 9px;
  }

  .advanced-filter-panel {
    margin-right: 10px;
    margin-left: 10px;
    padding-right: 10px;
    padding-left: 10px;
  }

  .advanced-filter-panel.open {
    max-height: 1400px;
    margin-right: 10px;
    margin-left: 10px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .post-item,
  .movie-card-vertical,
  .music-share-card,
  .video-share-container.video-share-card,
  .tab-button {
    transition: none;
  }
}

/* 影视卡片的播放控件采用参考图的“无底色玻璃”效果：画面/卡片底色
 * 可以直接透过圆形控件，只保留很淡的边缘和清晰的播放符号。 */
.movie-card-vertical .info-action {
  flex-direction: column;
  gap: 6px;
  color: #475569 !important;
}

.movie-card-vertical .info-action .action-icon {
  color: #334155 !important;
  background: transparent !important;
  border: 1px solid rgba(71, 85, 105, 0.26) !important;
  box-shadow: none !important;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.movie-card-vertical .info-action .action-text {
  display: block !important;
  color: #64748b !important;
  font-size: 12px;
  font-weight: 750;
  line-height: 1;
  white-space: nowrap;
}

.movie-card-vertical:hover .info-action .action-icon {
  color: #0f172a !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(71, 85, 105, 0.38) !important;
  box-shadow: none !important;
}

body.site-dark-mode .movie-card-vertical .info-action {
  color: #f8fafc !important;
}

body.site-dark-mode .movie-card-vertical .info-action .action-icon {
  color: #fff !important;
  background: transparent !important;
  border-color: rgba(255, 255, 255, 0.24) !important;
  box-shadow: none !important;
}

body.site-dark-mode .movie-card-vertical .info-action .action-text {
  color: rgba(255, 255, 255, 0.86) !important;
}

body.site-dark-mode .movie-card-vertical:hover .info-action .action-icon {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(255, 255, 255, 0.38) !important;
}

/* 日常视频动态：播放按钮保持透明，只用轻微的玻璃边缘和阴影保证识别度。 */
.video-share-card .play-icon {
  color: #fff !important;
  background: transparent !important;
  border-color: rgba(255, 255, 255, 0.5) !important;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.22) !important;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}

.video-share-card:hover .play-icon,
body.site-dark-mode .video-share-card:hover .play-icon {
  color: #fff !important;
  background: transparent !important;
  border-color: rgba(255, 255, 255, 0.68) !important;
  box-shadow: 0 5px 16px rgba(0, 0, 0, 0.3) !important;
}

/* 视频播放页主按钮与影视动态保持同款透明播放控件。 */
.site-player-play-main {
  color: #fff !important;
  background: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.24) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2) !important;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

.site-player-play-main:hover {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(255, 255, 255, 0.38) !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.28) !important;
}

.site-player-play-main svg {
  color: #fff !important;
  fill: currentColor !important;
}

/*
 * 播放页内容区：沿用首页的透明玻璃语言。
 * 这里只覆盖视频播放器下方的内容，不改变播放器头部、视频画面和控制条。
 * 兼容层中旧的白色/深色实心背景带有 !important，因此这里也明确使用
 * 同等优先级，避免切换主题或动态创建播放器时被旧规则重新盖回去。
 */
.site-player-shell {
  background: rgba(248, 250, 252, 0.42) !important;
}

.site-player-action-bar,
.site-player-shell .site-player-section {
  position: relative;
  box-sizing: border-box;
  margin-right: 14px;
  margin-left: 14px;
  border: 1px solid rgba(148, 163, 184, 0.16) !important;
  box-shadow:
    0 10px 26px rgba(15, 23, 42, 0.055),
    inset 0 1px 0 rgba(255, 255, 255, 0.64);
  backdrop-filter: blur(20px) saturate(135%);
  -webkit-backdrop-filter: blur(20px) saturate(135%);
}

.site-player-action-bar {
  z-index: 1;
  min-height: 58px;
  margin-top: 12px;
  padding: 10px 14px;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.76), rgba(255, 255, 255, 0.4)) !important;
  border-radius: 18px;
}

.site-player-action-bar::before,
.site-player-shell .site-player-section::before {
  position: absolute;
  inset: 0;
  content: '';
  pointer-events: none;
  background: linear-gradient(120deg, rgba(255, 255, 255, 0.2), transparent 42%);
  border-radius: inherit;
}

.site-player-now-playing,
.site-player-episode-button,
.site-player-shell .site-player-section > * {
  position: relative;
  z-index: 1;
}

.site-player-now-playing {
  color: #1e293b !important;
  font-weight: 750;
}

.site-player-now-icon {
  color: #047857 !important;
  background: rgba(209, 250, 229, 0.58) !important;
  border: 1px solid rgba(52, 211, 153, 0.18);
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.08);
}

.site-player-episode-button,
.site-player-sort-button,
.site-player-tags span,
.site-player-episodes button {
  color: #475569 !important;
  background: rgba(255, 255, 255, 0.42) !important;
  border: 1px solid rgba(148, 163, 184, 0.17) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.58);
  transition: color 0.22s ease, background 0.22s ease, border-color 0.22s ease,
    box-shadow 0.22s ease, transform 0.22s ease;
}

.site-player-episode-button {
  position: relative;
  z-index: 1;
  padding: 7px 12px;
  font-weight: 800;
  border-radius: 999px;
}

.site-player-episode-button:hover,
.site-player-sort-button:hover,
.site-player-episodes button:hover {
  color: #047857 !important;
  background: rgba(236, 253, 245, 0.58) !important;
  border-color: rgba(52, 211, 153, 0.28) !important;
  box-shadow: 0 7px 16px rgba(16, 185, 129, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.72);
  transform: translateY(-1px);
}

.site-player-divider {
  height: 10px;
  background: transparent !important;
}

.site-player-shell .site-player-section {
  padding: 18px;
  overflow: hidden;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.34)) !important;
  border-radius: 20px;
}

.site-player-info {
  position: relative;
  z-index: 1;
  gap: 14px;
}

.site-player-poster {
  border: 1px solid rgba(255, 255, 255, 0.72) !important;
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.42);
}

.site-player-rating {
  background: rgba(15, 23, 42, 0.62) !important;
  box-shadow: 0 4px 10px rgba(15, 23, 42, 0.12);
}

.site-player-info-main h2,
.site-player-section-title h3 {
  color: #0f172a !important;
  letter-spacing: -0.01em;
}

.site-player-tags {
  gap: 6px;
}

.site-player-tags span {
  padding: 4px 8px;
  color: #047857 !important;
  background: rgba(236, 253, 245, 0.58) !important;
  border-color: rgba(52, 211, 153, 0.18) !important;
  border-radius: 999px;
}

.site-player-details {
  color: #64748b !important;
}

.site-player-details strong {
  color: #334155 !important;
}

.site-player-intro {
  color: #047857 !important;
  font-weight: 800;
}

.site-player-section-title {
  margin-bottom: 14px;
}

.site-player-section-title span {
  color: #94a3b8 !important;
}

.site-player-episode-sort {
  gap: 6px;
}

.site-player-sort-button {
  padding: 5px 9px;
  border-radius: 999px;
}

.site-player-sort-button.active,
.site-player-episodes button.active {
  color: #047857 !important;
  background: rgba(209, 250, 229, 0.74) !important;
  border-color: rgba(16, 185, 129, 0.32) !important;
  box-shadow: 0 7px 16px rgba(16, 185, 129, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.site-player-episodes {
  position: relative;
  z-index: 1;
  gap: 9px;
}

.site-player-episodes button {
  padding: 12px 8px;
  border-radius: 13px;
}

.site-player-episodes button.active::after {
  border-top-color: #10b981;
}

.site-player-episodes-empty,
.site-player-recommendations-empty {
  color: #94a3b8 !important;
}

.site-player-recommendations {
  position: relative;
  z-index: 1;
  gap: 10px;
  padding-bottom: 2px;
}

.site-player-recommendation {
  min-width: 0;
  padding: 7px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.34) !important;
  border: 1px solid rgba(148, 163, 184, 0.14);
  border-radius: 16px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.56);
  transition: background 0.24s ease, border-color 0.24s ease, box-shadow 0.24s ease,
    transform 0.24s cubic-bezier(0.16, 1, 0.3, 1);
}

.site-player-recommendation:hover {
  background: rgba(236, 253, 245, 0.48) !important;
  border-color: rgba(52, 211, 153, 0.24);
  box-shadow: 0 9px 18px rgba(15, 23, 42, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.7);
  transform: translateY(-2px);
}

.site-player-recommendation-cover {
  border-radius: 11px;
  box-shadow: 0 6px 14px rgba(15, 23, 42, 0.12);
}

.site-player-recommendation-title {
  margin: 8px 2px 2px;
  color: #334155 !important;
  font-weight: 800;
}

/* 深色下保持透明层次，不再出现整块生硬的深灰背景。 */
body.site-dark-mode .site-player-shell {
  background: rgba(9, 9, 11, 0.42) !important;
}

body.site-dark-mode .site-player-action-bar,
body.site-dark-mode .site-player-shell .site-player-section {
  color: #e4e4e7 !important;
  background:
    linear-gradient(145deg, rgba(39, 39, 42, 0.68), rgba(24, 24, 27, 0.48)) !important;
  border-color: rgba(255, 255, 255, 0.085) !important;
  box-shadow:
    0 14px 30px rgba(0, 0, 0, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

/* 兼容层的深色规则带有更长的选择器，这里补齐同样的层级，确保动作栏也能透出玻璃背景。 */
body.site-dark-mode .site-player-shell .site-player-action-bar {
  color: #e4e4e7 !important;
  background:
    linear-gradient(145deg, rgba(39, 39, 42, 0.68), rgba(24, 24, 27, 0.48)) !important;
  border-color: rgba(255, 255, 255, 0.085) !important;
}

body.site-dark-mode .site-player-action-bar::before,
body.site-dark-mode .site-player-shell .site-player-section::before {
  background: linear-gradient(120deg, rgba(255, 255, 255, 0.06), transparent 42%);
}

body.site-dark-mode .site-player-now-playing,
body.site-dark-mode .site-player-info-main h2,
body.site-dark-mode .site-player-section-title h3 {
  color: #f4f4f5 !important;
}

body.site-dark-mode .site-player-now-icon {
  color: #6ee7b7 !important;
  background: rgba(16, 185, 129, 0.14) !important;
  border-color: rgba(110, 231, 183, 0.12);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

body.site-dark-mode .site-player-episode-button,
body.site-dark-mode .site-player-sort-button,
body.site-dark-mode .site-player-tags span,
body.site-dark-mode .site-player-episodes button {
  color: #d4d4d8 !important;
  background: rgba(63, 63, 70, 0.46) !important;
  border-color: rgba(255, 255, 255, 0.085) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

body.site-dark-mode .site-player-episode-button:hover,
body.site-dark-mode .site-player-sort-button:hover,
body.site-dark-mode .site-player-episodes button:hover {
  color: #a7f3d0 !important;
  background: rgba(16, 185, 129, 0.14) !important;
  border-color: rgba(110, 231, 183, 0.22) !important;
  box-shadow: 0 7px 16px rgba(0, 0, 0, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

body.site-dark-mode .site-player-tags span {
  color: #a7f3d0 !important;
  background: rgba(6, 78, 59, 0.32) !important;
  border-color: rgba(52, 211, 153, 0.17) !important;
}

body.site-dark-mode .site-player-details,
body.site-dark-mode .site-player-section-title span,
body.site-dark-mode .site-player-episodes-empty,
body.site-dark-mode .site-player-recommendations-empty {
  color: #a1a1aa !important;
}

body.site-dark-mode .site-player-details strong {
  color: #e4e4e7 !important;
}

body.site-dark-mode .site-player-intro {
  color: #6ee7b7 !important;
}

body.site-dark-mode .site-player-sort-button.active,
body.site-dark-mode .site-player-episodes button.active {
  color: #a7f3d0 !important;
  background: rgba(16, 185, 129, 0.17) !important;
  border-color: rgba(110, 231, 183, 0.28) !important;
  box-shadow: 0 7px 17px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

body.site-dark-mode .site-player-episodes button.active::after {
  border-top-color: #34d399;
}

body.site-dark-mode .site-player-recommendation {
  background: rgba(39, 39, 42, 0.38) !important;
  border-color: rgba(255, 255, 255, 0.075);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

body.site-dark-mode .site-player-recommendation:hover {
  background: rgba(16, 185, 129, 0.12) !important;
  border-color: rgba(110, 231, 183, 0.2);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

body.site-dark-mode .site-player-recommendation-title {
  color: #e4e4e7 !important;
}

/* 悬停只增加一点色彩和阴影，不再闪成白色实心块。 */
.movie-card-vertical:hover {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.42), rgba(236, 253, 245, 0.2)) !important;
}

.movie-card-vertical:hover .info-action .action-icon {
  color: #047857 !important;
  background: rgba(16, 185, 129, 0.08) !important;
  border-color: rgba(16, 185, 129, 0.26) !important;
  box-shadow: 0 5px 14px rgba(16, 185, 129, 0.08) !important;
}

body.site-dark-mode .movie-card-vertical:hover {
  background:
    linear-gradient(135deg, rgba(52, 211, 153, 0.1), rgba(255, 255, 255, 0.035)) !important;
}

body.site-dark-mode .movie-card-vertical:hover .info-action .action-icon {
  color: #d1fae5 !important;
  background: rgba(110, 231, 183, 0.08) !important;
  border-color: rgba(110, 231, 183, 0.24) !important;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.18) !important;
}

/* 小屏幕收紧外边距，但仍保留每一层玻璃卡片的呼吸感。 */
@media (max-width: 600px) {
  .site-player-action-bar,
  .site-player-shell .site-player-section {
    margin-right: 10px;
    margin-left: 10px;
    border-radius: 17px;
  }

  .site-player-action-bar {
    min-height: 56px;
    margin-top: 10px;
    padding-right: 12px;
    padding-left: 12px;
  }

  .site-player-shell .site-player-section {
    padding: 15px 13px;
    border-radius: 18px;
  }

  .site-player-info {
    gap: 12px;
  }

  .site-player-poster-wrap {
    width: 88px;
    flex-basis: 88px;
  }

  .site-player-info-main h2 {
    font-size: 19px;
  }

  .site-player-episodes {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
  }

  .site-player-episodes button {
    padding-right: 6px;
    padding-left: 6px;
    font-size: 13px;
  }

  .site-player-recommendations {
    gap: 8px;
  }

  .site-player-recommendation {
    padding: 6px;
    border-radius: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-player-episode-button,
  .site-player-sort-button,
  .site-player-episodes button,
  .site-player-recommendation {
    transition: none;
  }
}

/* 音乐面板与播放页内容区使用同一套玻璃语言。 */
.music-player.site-modern-music-player {
  color: #334155 !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.72), rgba(255, 255, 255, 0.38)) !important;
  border-color: rgba(148, 163, 184, 0.18) !important;
  box-shadow:
    0 20px 60px -10px rgba(15, 23, 42, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.66);
  backdrop-filter: blur(24px) saturate(138%);
  -webkit-backdrop-filter: blur(24px) saturate(138%);
}

.music-player.site-modern-music-player::before {
  position: absolute;
  inset: 0;
  content: '';
  pointer-events: none;
  background: linear-gradient(120deg, rgba(255, 255, 255, 0.2), transparent 42%);
  border-radius: inherit;
}

.music-player.site-modern-music-player .player-cover {
  border-color: rgba(255, 255, 255, 0.72);
  box-shadow: 0 7px 17px rgba(15, 23, 42, 0.15), inset 0 0 0 1px rgba(255, 255, 255, 0.2);
}

.music-player.site-modern-music-player .player-info .artist {
  color: #64748b !important;
}

.music-player.site-modern-music-player .player-controls .control-btn {
  transition: color 0.22s ease, background 0.22s ease, transform 0.22s ease,
    box-shadow 0.22s ease;
}

.music-player.site-modern-music-player .player-controls .control-btn:hover {
  background: rgba(16, 185, 129, 0.08) !important;
  box-shadow: 0 5px 13px rgba(16, 185, 129, 0.08);
}

.music-player.site-modern-music-player .player-controls .site-music-close:hover {
  background: rgba(244, 63, 94, 0.07) !important;
}

/* 播放列表抽屉：面板、列表行和底部操作栏都透出同一层背景。 */
.playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist {
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.74), rgba(248, 250, 252, 0.48)) !important;
  border-color: rgba(148, 163, 184, 0.18) !important;
  box-shadow:
    0 24px 80px -12px rgba(15, 23, 42, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.68);
  backdrop-filter: blur(28px) saturate(140%);
  -webkit-backdrop-filter: blur(28px) saturate(140%);
}

.playlist-viewer-content.site-modern-playlist .playlist-header,
.playlist-viewer-content.site-modern-playlist .playlist-list,
.playlist-viewer-content.site-modern-playlist .playlist-footer {
  background: transparent !important;
}

.playlist-viewer-content.site-modern-playlist .playlist-header {
  border-bottom-color: rgba(148, 163, 184, 0.14) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

.playlist-viewer-content.site-modern-playlist .playlist-list {
  scrollbar-color: rgba(148, 163, 184, 0.5) transparent;
}

.playlist-viewer-content.site-modern-playlist .playlist-list li {
  margin: 3px 8px;
  padding-right: 16px;
  padding-left: 16px;
  background: rgba(255, 255, 255, 0.16) !important;
  border: 1px solid transparent;
  border-radius: 14px;
  transition: background 0.22s ease, border-color 0.22s ease, transform 0.22s ease,
    box-shadow 0.22s ease;
}

.playlist-viewer-content.site-modern-playlist .playlist-list li:hover {
  background: rgba(236, 253, 245, 0.34) !important;
  border-color: rgba(52, 211, 153, 0.16);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.34);
  transform: translateX(2px);
}

.playlist-viewer-content.site-modern-playlist .playlist-list li.active {
  background: rgba(209, 250, 229, 0.46) !important;
  border-color: rgba(52, 211, 153, 0.2);
  box-shadow: inset 3px 0 0 #10b981, inset 0 1px 0 rgba(255, 255, 255, 0.42);
}

.playlist-viewer-content.site-modern-playlist .playlist-list li.active::before {
  display: none;
}

.playlist-viewer-content.site-modern-playlist .playing-indicator {
  color: #047857;
  background: rgba(209, 250, 229, 0.68);
  box-shadow: 0 5px 12px rgba(16, 185, 129, 0.1);
}

.playlist-viewer-content.site-modern-playlist .playlist-footer {
  border-top-color: rgba(148, 163, 184, 0.14) !important;
}

.playlist-viewer-content.site-modern-playlist .playlist-footer button,
.playlist-viewer-content.site-modern-playlist .site-playlist-close-icon,
.playlist-viewer-content.site-modern-playlist .site-playlist-collapse {
  background: rgba(255, 255, 255, 0.32) !important;
  border-color: rgba(148, 163, 184, 0.15) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.54);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.playlist-viewer-content.site-modern-playlist .playlist-footer button:hover:not(:disabled),
.playlist-viewer-content.site-modern-playlist .site-playlist-close-icon:hover,
.playlist-viewer-content.site-modern-playlist .site-playlist-collapse:hover {
  background: rgba(236, 253, 245, 0.5) !important;
  border-color: rgba(52, 211, 153, 0.24) !important;
  box-shadow: 0 7px 16px rgba(16, 185, 129, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.68);
}

body.site-dark-mode .music-player.site-modern-music-player {
  color: #e4e4e7 !important;
  background:
    linear-gradient(145deg, rgba(39, 39, 42, 0.7), rgba(24, 24, 27, 0.48)) !important;
  border-color: rgba(255, 255, 255, 0.09) !important;
  box-shadow:
    0 22px 60px -10px rgba(0, 0, 0, 0.48),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

body.site-dark-mode .music-player.site-modern-music-player::before {
  background: linear-gradient(120deg, rgba(255, 255, 255, 0.06), transparent 42%);
}

body.site-dark-mode .music-player.site-modern-music-player .player-cover {
  border-color: rgba(9, 9, 11, 0.86);
  box-shadow: 0 7px 17px rgba(0, 0, 0, 0.34), inset 0 0 0 1px rgba(255, 255, 255, 0.1);
}

body.site-dark-mode .music-player.site-modern-music-player .player-controls .control-btn:hover {
  background: rgba(16, 185, 129, 0.1) !important;
  box-shadow: 0 5px 14px rgba(0, 0, 0, 0.16);
}

body.site-dark-mode .music-player.site-modern-music-player .player-controls .site-music-close:hover {
  color: #fda4af !important;
  background: rgba(244, 63, 94, 0.1) !important;
}

body.site-dark-mode .playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist {
  background:
    linear-gradient(145deg, rgba(39, 39, 42, 0.72), rgba(24, 24, 27, 0.5)) !important;
  border-color: rgba(255, 255, 255, 0.09) !important;
  box-shadow:
    0 28px 90px -16px rgba(0, 0, 0, 0.56),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-header {
  border-bottom-color: rgba(255, 255, 255, 0.075) !important;
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list {
  scrollbar-color: rgba(113, 113, 122, 0.65) transparent;
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list li {
  background: rgba(255, 255, 255, 0.035) !important;
  border-color: transparent;
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list li:hover {
  background: rgba(16, 185, 129, 0.1) !important;
  border-color: rgba(110, 231, 183, 0.14);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list li.active {
  background: rgba(16, 185, 129, 0.13) !important;
  border-color: rgba(110, 231, 183, 0.16);
  box-shadow: inset 3px 0 0 #34d399, inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playing-indicator {
  color: #a7f3d0;
  background: rgba(16, 185, 129, 0.16);
  box-shadow: 0 5px 12px rgba(0, 0, 0, 0.18);
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-footer {
  border-top-color: rgba(255, 255, 255, 0.075) !important;
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-footer button,
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .site-playlist-close-icon,
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .site-playlist-collapse {
  background: rgba(63, 63, 70, 0.34) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-footer button:hover:not(:disabled),
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .site-playlist-close-icon:hover,
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .site-playlist-collapse:hover {
  background: rgba(16, 185, 129, 0.13) !important;
  border-color: rgba(110, 231, 183, 0.2) !important;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

/* 深色播放页中央按钮：保持真正透明，只让视频画面和水纹动效透出来。 */
.site-player-shell.is-dark .site-player-video .site-player-play-main,
body.site-dark-mode .site-player-shell .site-player-video .site-player-play-main,
body.site-dark-mode .site-player-video .site-player-play-main {
  color: #fff !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.site-player-shell.is-dark .site-player-video .site-player-play-main:hover,
body.site-dark-mode .site-player-shell .site-player-video .site-player-play-main:hover,
body.site-dark-mode .site-player-video .site-player-play-main:hover {
  background: transparent !important;
  border: 0 !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.28) !important;
}

/* 音乐页面：更接近 iOS 液态玻璃的透明层，不使用厚重的实心色块。 */
.post-item.site-music-post,
.post-item[data-post-type='music'] {
  position: relative;
  isolation: isolate;
  background:
    radial-gradient(circle at 94% 0, rgba(125, 211, 252, 0.16), transparent 34%),
    linear-gradient(145deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0.2)) !important;
  border-color: rgba(255, 255, 255, 0.38) !important;
  box-shadow:
    0 18px 42px rgba(15, 23, 42, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.68),
    inset 0 -1px 0 rgba(148, 163, 184, 0.08);
  backdrop-filter: blur(28px) saturate(150%);
  -webkit-backdrop-filter: blur(28px) saturate(150%);
}

.post-item.site-music-post::before,
.post-item[data-post-type='music']::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: '';
  pointer-events: none;
  background:
    linear-gradient(120deg, rgba(255, 255, 255, 0.22), transparent 34%),
    radial-gradient(circle at 12% 100%, rgba(167, 243, 208, 0.1), transparent 35%);
  border-radius: inherit;
}

.post-item.site-music-post > *,
.post-item[data-post-type='music'] > * {
  position: relative;
  z-index: 1;
}

.post-item.site-music-post .post-type-badge,
.post-item[data-post-type='music'] .post-type-badge {
  color: #64748b !important;
  background: rgba(255, 255, 255, 0.3) !important;
  border-color: rgba(255, 255, 255, 0.35) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.62);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.post-item.site-music-post .music-share-card,
.post-item.site-music-post .share-card.site-music-playlist-card,
.post-item[data-post-type='music'] .music-share-card {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.12)) !important;
  border-color: rgba(255, 255, 255, 0.28) !important;
  box-shadow:
    0 10px 24px rgba(15, 23, 42, 0.055),
    inset 0 1px 0 rgba(255, 255, 255, 0.58);
  backdrop-filter: blur(22px) saturate(145%);
  -webkit-backdrop-filter: blur(22px) saturate(145%);
}

.post-item.site-music-post .music-share-card:hover,
.post-item.site-music-post .share-card.site-music-playlist-card:hover,
.post-item[data-post-type='music'] .music-share-card:hover {
  background:
    linear-gradient(135deg, rgba(236, 253, 245, 0.42), rgba(255, 255, 255, 0.18)) !important;
  border-color: rgba(52, 211, 153, 0.24) !important;
  box-shadow:
    0 14px 28px rgba(15, 23, 42, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.68);
}

.post-item.site-music-post .music-cover-wrap,
.post-item[data-post-type='music'] .music-cover-wrap {
  box-shadow: 0 9px 20px rgba(15, 23, 42, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.28);
}

.post-item.site-music-post .music-cover-play,
.post-item[data-post-type='music'] .music-cover-play,
.post-item.site-music-post .share-card-arrow,
.post-item[data-post-type='music'] .share-card-arrow {
  color: #047857 !important;
  background: rgba(255, 255, 255, 0.34) !important;
  border: 1px solid rgba(255, 255, 255, 0.4);
  box-shadow: 0 5px 14px rgba(15, 23, 42, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.62);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.post-item.site-music-post:hover .music-cover-play,
.post-item[data-post-type='music']:hover .music-cover-play,
.post-item.site-music-post:hover .share-card-arrow,
.post-item[data-post-type='music']:hover .share-card-arrow {
  color: #065f46 !important;
  background: rgba(236, 253, 245, 0.48) !important;
  border-color: rgba(52, 211, 153, 0.28);
  box-shadow: 0 8px 18px rgba(16, 185, 129, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

body.site-dark-mode .post-item.site-music-post,
body.site-dark-mode .post-item[data-post-type='music'] {
  background:
    radial-gradient(circle at 94% 0, rgba(52, 211, 153, 0.1), transparent 34%),
    linear-gradient(145deg, rgba(39, 39, 42, 0.48), rgba(24, 24, 27, 0.26)) !important;
  border-color: rgba(255, 255, 255, 0.09) !important;
  box-shadow:
    0 20px 46px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    inset 0 -1px 0 rgba(255, 255, 255, 0.025);
}

body.site-dark-mode .post-item.site-music-post::before,
body.site-dark-mode .post-item[data-post-type='music']::before {
  background:
    linear-gradient(120deg, rgba(255, 255, 255, 0.06), transparent 34%),
    radial-gradient(circle at 12% 100%, rgba(52, 211, 153, 0.07), transparent 35%);
}

body.site-dark-mode .post-item.site-music-post .post-type-badge,
body.site-dark-mode .post-item[data-post-type='music'] .post-type-badge {
  color: #a1a1aa !important;
  background: rgba(63, 63, 70, 0.28) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

body.site-dark-mode .post-item.site-music-post .music-share-card,
body.site-dark-mode .post-item.site-music-post .share-card.site-music-playlist-card,
body.site-dark-mode .post-item[data-post-type='music'] .music-share-card {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.025)) !important;
  border-color: rgba(255, 255, 255, 0.075) !important;
  box-shadow:
    0 12px 28px rgba(0, 0, 0, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

body.site-dark-mode .post-item.site-music-post .music-share-card:hover,
body.site-dark-mode .post-item.site-music-post .share-card.site-music-playlist-card:hover,
body.site-dark-mode .post-item[data-post-type='music'] .music-share-card:hover {
  background:
    linear-gradient(135deg, rgba(16, 185, 129, 0.1), rgba(255, 255, 255, 0.045)) !important;
  border-color: rgba(110, 231, 183, 0.18) !important;
  box-shadow:
    0 16px 34px rgba(0, 0, 0, 0.24),
    inset 0 1px 0 rgba(167, 243, 208, 0.08);
}

body.site-dark-mode .post-item.site-music-post .music-cover-play,
body.site-dark-mode .post-item[data-post-type='music'] .music-cover-play,
body.site-dark-mode .post-item.site-music-post .share-card-arrow,
body.site-dark-mode .post-item[data-post-type='music'] .share-card-arrow {
  color: #a7f3d0 !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(255, 255, 255, 0.14);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body.site-dark-mode .post-item.site-music-post:hover .music-cover-play,
body.site-dark-mode .post-item[data-post-type='music']:hover .music-cover-play,
body.site-dark-mode .post-item.site-music-post:hover .share-card-arrow,
body.site-dark-mode .post-item[data-post-type='music']:hover .share-card-arrow {
  color: #d1fae5 !important;
  background: rgba(16, 185, 129, 0.12) !important;
  border-color: rgba(110, 231, 183, 0.2);
}

@media (max-width: 600px) {
  .playlist-viewer-content.site-modern-playlist .playlist-list li {
    margin-right: 5px;
    margin-left: 5px;
    padding-right: 14px;
    padding-left: 14px;
  }
}

/*
 * iOS 液态玻璃微调：透明度优先，依靠背景模糊、饱和度和边缘高光建立材质。
 * 之前的规则偏向磨砂白，这里将白色填充进一步压低，让页面背景真正透出来。
 */
.post-item.site-music-post,
.post-item[data-post-type='music'] {
  isolation: auto;
  background:
    radial-gradient(circle at 92% 0, rgba(125, 211, 252, 0.1), transparent 32%),
    rgba(255, 255, 255, 0.12) !important;
  border-color: rgba(255, 255, 255, 0.22) !important;
  box-shadow:
    0 18px 42px rgba(15, 23, 42, 0.07),
    inset 0 1px 0 rgba(255, 255, 255, 0.54),
    inset 0 -1px 0 rgba(148, 163, 184, 0.06);
  backdrop-filter: blur(32px) saturate(165%);
  -webkit-backdrop-filter: blur(32px) saturate(165%);
}

.post-item.site-music-post::before,
.post-item[data-post-type='music']::before {
  z-index: 0;
  background:
    linear-gradient(120deg, rgba(255, 255, 255, 0.13), transparent 34%),
    radial-gradient(circle at 8% 100%, rgba(167, 243, 208, 0.08), transparent 32%);
}

.post-item.site-music-post .post-content-wrapper,
.post-item.site-music-post > .interaction-section,
.post-item.site-music-post > .comment-form,
.post-item[data-post-type='music'] .post-content-wrapper,
.post-item[data-post-type='music'] > .interaction-section,
.post-item[data-post-type='music'] > .comment-form {
  z-index: 1;
}

.post-item.site-music-post .post-type-badge,
.post-item[data-post-type='music'] .post-type-badge {
  background: rgba(255, 255, 255, 0.1) !important;
  border-color: rgba(255, 255, 255, 0.2) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.42);
}

.post-item.site-music-post .music-share-card,
.post-item.site-music-post .share-card.site-music-playlist-card,
.post-item[data-post-type='music'] .music-share-card {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.13), rgba(255, 255, 255, 0.035)) !important;
  border-color: rgba(255, 255, 255, 0.18) !important;
  box-shadow:
    0 10px 24px rgba(15, 23, 42, 0.045),
    inset 0 1px 0 rgba(255, 255, 255, 0.46);
  backdrop-filter: blur(26px) saturate(155%);
  -webkit-backdrop-filter: blur(26px) saturate(155%);
}

.post-item.site-music-post .music-share-card:hover,
.post-item.site-music-post .share-card.site-music-playlist-card:hover,
.post-item[data-post-type='music'] .music-share-card:hover {
  background:
    linear-gradient(135deg, rgba(236, 253, 245, 0.18), rgba(255, 255, 255, 0.06)) !important;
  border-color: rgba(52, 211, 153, 0.2) !important;
}

.post-item.site-music-post .music-cover-play,
.post-item[data-post-type='music'] .music-cover-play,
.post-item.site-music-post .share-card-arrow,
.post-item[data-post-type='music'] .share-card-arrow {
  background: rgba(255, 255, 255, 0.14) !important;
  border-color: rgba(255, 255, 255, 0.24);
  box-shadow: 0 5px 14px rgba(15, 23, 42, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.5);
}

body.site-dark-mode .post-item.site-music-post,
body.site-dark-mode .post-item[data-post-type='music'] {
  background:
    radial-gradient(circle at 92% 0, rgba(52, 211, 153, 0.08), transparent 32%),
    rgba(24, 24, 27, 0.18) !important;
  border-color: rgba(255, 255, 255, 0.075) !important;
  box-shadow:
    0 20px 46px rgba(0, 0, 0, 0.27),
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    inset 0 -1px 0 rgba(255, 255, 255, 0.02);
}

body.site-dark-mode .post-item.site-music-post::before,
body.site-dark-mode .post-item[data-post-type='music']::before {
  background:
    linear-gradient(120deg, rgba(255, 255, 255, 0.04), transparent 34%),
    radial-gradient(circle at 8% 100%, rgba(52, 211, 153, 0.06), transparent 32%);
}

body.site-dark-mode .post-item.site-music-post .post-type-badge,
body.site-dark-mode .post-item[data-post-type='music'] .post-type-badge {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(255, 255, 255, 0.075) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

body.site-dark-mode .post-item.site-music-post .music-share-card,
body.site-dark-mode .post-item.site-music-post .share-card.site-music-playlist-card,
body.site-dark-mode .post-item[data-post-type='music'] .music-share-card {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.015)) !important;
  border-color: rgba(255, 255, 255, 0.06) !important;
  box-shadow:
    0 12px 28px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

body.site-dark-mode .post-item.site-music-post .music-share-card:hover,
body.site-dark-mode .post-item.site-music-post .share-card.site-music-playlist-card:hover,
body.site-dark-mode .post-item[data-post-type='music'] .music-share-card:hover {
  background:
    linear-gradient(135deg, rgba(16, 185, 129, 0.08), rgba(255, 255, 255, 0.03)) !important;
  border-color: rgba(110, 231, 183, 0.16) !important;
}

body.site-dark-mode .post-item.site-music-post .music-cover-play,
body.site-dark-mode .post-item[data-post-type='music'] .music-cover-play,
body.site-dark-mode .post-item.site-music-post .share-card-arrow,
body.site-dark-mode .post-item[data-post-type='music'] .share-card-arrow {
  background: rgba(255, 255, 255, 0.055) !important;
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

/*
 * iOS 液态玻璃最终层：参考图二的透明 Dock，而不是灰白实心面板。
 * 低填充 + 强模糊负责透出页面，边缘高光和阴影只负责勾勒形状。
 */
.music-player.site-modern-music-player {
  right: auto;
  left: 50%;
  width: min(calc(100% - 32px), 600px);
  max-width: 600px;
  height: 68px;
  min-height: 68px;
  box-sizing: border-box;
  margin: 0;
  padding: 0 14px;
  overflow: hidden;
  color: #1e293b !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.055) 58%, rgba(255, 255, 255, 0.13)) !important;
  border: 1px solid rgba(255, 255, 255, 0.32) !important;
  border-radius: 24px !important;
  box-shadow:
    0 18px 46px rgba(15, 23, 42, 0.16),
    inset 0 1px 0 rgba(255, 255, 255, 0.58),
    inset 0 -1px 0 rgba(148, 163, 184, 0.08);
  backdrop-filter: blur(28px) saturate(175%);
  -webkit-backdrop-filter: blur(28px) saturate(175%);
  transform: translate3d(-50%, 0, 0);
  isolation: isolate;
}

.music-player.site-modern-music-player::before {
  z-index: 0;
  background:
    linear-gradient(112deg, rgba(255, 255, 255, 0.26), transparent 37%),
    radial-gradient(circle at 92% 0, rgba(125, 211, 252, 0.08), transparent 38%);
}

.music-player.site-modern-music-player .progress-bar-container {
  top: 0;
  z-index: 2;
  height: 2px;
  background: rgba(148, 163, 184, 0.14);
}

.music-player.site-modern-music-player .progress-bar {
  background: linear-gradient(90deg, #10b981, #2dd4bf);
  box-shadow: 0 0 9px rgba(16, 185, 129, 0.42);
}

.music-player.site-modern-music-player .player-cover,
.music-player.site-modern-music-player .player-info,
.music-player.site-modern-music-player .player-controls {
  position: relative;
  z-index: 1;
}

.music-player.site-modern-music-player .player-cover {
  width: 46px;
  height: 46px;
  margin-right: 12px;
  border: 1px solid rgba(255, 255, 255, 0.48);
  border-radius: 14px;
  box-shadow: 0 7px 17px rgba(15, 23, 42, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.28);
}

.music-player.site-modern-music-player .player-info .title {
  color: #0f172a !important;
  text-shadow: 0 1px 8px rgba(255, 255, 255, 0.36);
}

.music-player.site-modern-music-player .player-info .artist {
  color: #52637b !important;
}

.music-player.site-modern-music-player .player-controls {
  gap: 3px;
}

.music-player.site-modern-music-player .player-controls .control-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  box-sizing: border-box;
  padding: 7px;
  color: rgba(30, 41, 59, 0.76) !important;
  background: transparent !important;
  border-radius: 50%;
  transition: color 0.22s ease, background 0.22s ease, transform 0.22s ease, box-shadow 0.22s ease;
}

.music-player.site-modern-music-player .player-controls .site-music-play {
  width: 38px;
  height: 38px;
  padding: 9px;
  color: #0f766e !important;
  background: rgba(255, 255, 255, 0.22) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.52), 0 5px 14px rgba(15, 23, 42, 0.08);
}

.music-player.site-modern-music-player .player-controls .control-btn:hover {
  color: #047857 !important;
  background: rgba(255, 255, 255, 0.2) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.46), 0 6px 15px rgba(16, 185, 129, 0.1);
  transform: translateY(-1px);
}

.music-player.site-modern-music-player .player-controls .site-music-play:hover {
  color: #065f46 !important;
  background: rgba(236, 253, 245, 0.34) !important;
}

.music-player.site-modern-music-player .player-controls .site-music-close:hover {
  color: #be123c !important;
  background: rgba(255, 255, 255, 0.16) !important;
}

.music-player.site-modern-music-player.slide-enter-from,
.music-player.site-modern-music-player.slide-leave-to {
  opacity: 0;
  transform: translate3d(-50%, calc(100% + 20px), 0);
}

.music-player.site-modern-music-player.slide-enter-active,
.music-player.site-modern-music-player.slide-leave-active {
  transition: opacity 0.24s ease, transform 0.44s cubic-bezier(0.16, 1, 0.3, 1);
}

/* 深色仅换玻璃色调，不回到不透明深灰块。 */
body.site-dark-mode .music-player.site-modern-music-player {
  color: #f4f4f5 !important;
  background:
    linear-gradient(135deg, rgba(30, 36, 45, 0.48), rgba(15, 23, 42, 0.18) 58%, rgba(39, 39, 42, 0.34)) !important;
  border-color: rgba(255, 255, 255, 0.14) !important;
  box-shadow:
    0 20px 52px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.1),
    inset 0 -1px 0 rgba(255, 255, 255, 0.025);
}

body.site-dark-mode .music-player.site-modern-music-player::before {
  background:
    linear-gradient(112deg, rgba(255, 255, 255, 0.11), transparent 37%),
    radial-gradient(circle at 92% 0, rgba(52, 211, 153, 0.09), transparent 38%);
}

body.site-dark-mode .music-player.site-modern-music-player .player-cover {
  border-color: rgba(255, 255, 255, 0.18);
  box-shadow: 0 7px 17px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

body.site-dark-mode .music-player.site-modern-music-player .player-info .title {
  color: #f4f4f5 !important;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.28);
}

body.site-dark-mode .music-player.site-modern-music-player .player-info .artist {
  color: #a1a1aa !important;
}

body.site-dark-mode .music-player.site-modern-music-player .player-controls .control-btn {
  color: rgba(244, 244, 245, 0.82) !important;
}

body.site-dark-mode .music-player.site-modern-music-player .player-controls .site-music-play {
  color: #a7f3d0 !important;
  background: rgba(255, 255, 255, 0.1) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12), 0 5px 14px rgba(0, 0, 0, 0.2);
}

body.site-dark-mode .music-player.site-modern-music-player .player-controls .control-btn:hover {
  color: #a7f3d0 !important;
  background: rgba(52, 211, 153, 0.12) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 7px 17px rgba(0, 0, 0, 0.2);
}

@media (max-width: 640px) {
  .music-player.site-modern-music-player {
    right: 10px;
    left: 10px;
    width: auto;
    max-width: none;
    bottom: max(10px, env(safe-area-inset-bottom));
    border-radius: 20px !important;
    transform: translate3d(0, 0, 0);
  }

  .music-player.site-modern-music-player.slide-enter-from,
  .music-player.site-modern-music-player.slide-leave-to {
    transform: translate3d(0, calc(100% + 20px), 0);
  }

}

@media (prefers-reduced-motion: reduce) {
  .music-player.site-modern-music-player.slide-enter-active,
  .music-player.site-modern-music-player.slide-leave-active {
    transition-duration: 0.01ms !important;
  }
}

/* 播放列表恢复为改造前的纯色面板，保留底部抽屉的尺寸和进入动画。 */
.playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist {
  color: #334155 !important;
  background: #fff !important;
  border-color: rgba(15, 23, 42, 0.1) !important;
  box-shadow: 0 -5px 20px rgba(0, 0, 0, 0.1) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.playlist-viewer-content.site-modern-playlist .playlist-header,
.playlist-viewer-content.site-modern-playlist .playlist-list,
.playlist-viewer-content.site-modern-playlist .playlist-footer {
  background: #fff !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.playlist-viewer-content.site-modern-playlist .playlist-header {
  border-bottom-color: #f1f1f1 !important;
  box-shadow: none !important;
}

.playlist-viewer-content.site-modern-playlist .playlist-list li {
  margin: 0 !important;
  padding: 12px 15px !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #f9f9f9 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transform: none !important;
  transition: background-color 0.2s ease !important;
}

.playlist-viewer-content.site-modern-playlist .playlist-list li:hover {
  background: #f0f0f0 !important;
  border-color: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

.playlist-viewer-content.site-modern-playlist .playlist-list li.active {
  background: rgba(236, 253, 245, 0.88) !important;
  border-color: transparent !important;
  box-shadow: inset 4px 0 0 #10b981 !important;
}

.playlist-viewer-content.site-modern-playlist .playing-indicator {
  color: #047857 !important;
  background: #d1fae5 !important;
  box-shadow: none !important;
}

.playlist-viewer-content.site-modern-playlist .playlist-footer {
  border-top-color: #f1f1f1 !important;
}

.playlist-viewer-content.site-modern-playlist .playlist-footer button,
.playlist-viewer-content.site-modern-playlist .site-playlist-close-icon,
.playlist-viewer-content.site-modern-playlist .site-playlist-collapse {
  background: #f0f0f0 !important;
  border-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.playlist-viewer-content.site-modern-playlist .playlist-footer button:hover:not(:disabled),
.playlist-viewer-content.site-modern-playlist .site-playlist-close-icon:hover,
.playlist-viewer-content.site-modern-playlist .site-playlist-collapse:hover {
  color: #047857 !important;
  background: #ecfdf5 !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

body.site-dark-mode .playlist-viewer-overlay .playlist-viewer-content.site-modern-playlist {
  color: #e4e4e7 !important;
  background: #18181b !important;
  border-color: rgba(255, 255, 255, 0.11) !important;
  box-shadow: 0 -5px 20px rgba(0, 0, 0, 0.38) !important;
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-header,
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list,
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-footer {
  background: #18181b !important;
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-header,
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-footer {
  border-color: rgba(255, 255, 255, 0.09) !important;
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list li {
  background: transparent !important;
  border-color: rgba(255, 255, 255, 0.065) !important;
  box-shadow: none !important;
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list li:hover {
  background: #27272a !important;
  border-color: transparent !important;
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-list li.active {
  background: rgba(16, 185, 129, 0.14) !important;
  border-color: transparent !important;
  box-shadow: inset 4px 0 0 #34d399 !important;
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playing-indicator {
  color: #a7f3d0 !important;
  background: rgba(16, 185, 129, 0.18) !important;
  box-shadow: none !important;
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-footer button,
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .site-playlist-close-icon,
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .site-playlist-collapse {
  color: #d4d4d8 !important;
  background: #27272a !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  box-shadow: none !important;
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-footer button:hover:not(:disabled),
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .site-playlist-close-icon:hover,
body.site-dark-mode .playlist-viewer-content.site-modern-playlist .site-playlist-collapse:hover {
  color: #a7f3d0 !important;
  background: #3f3f46 !important;
  border-color: rgba(110, 231, 183, 0.34) !important;
  box-shadow: none !important;
}

/* 浅色影片播放页：以封面主色作为柔和背景氛围，视频区和头部保持原样。 */
body:not(.site-dark-mode) .site-player-shell[data-site-media-tone] {
  background:
    radial-gradient(circle at 92% 4%, rgba(var(--site-media-rgb, 148, 163, 184), 0.15), transparent 48%),
    linear-gradient(145deg, rgba(255, 255, 255, 0.68), rgba(248, 250, 252, 0.9) 64%),
    #f8fafc !important;
}

body:not(.site-dark-mode) .site-player-action-bar,
body:not(.site-dark-mode) .site-player-shell .site-player-section {
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.8), rgba(var(--site-media-rgb, 148, 163, 184), 0.1)) !important;
  border-color: rgba(var(--site-media-rgb, 148, 163, 184), 0.16) !important;
  backdrop-filter: blur(28px) saturate(112%);
  -webkit-backdrop-filter: blur(28px) saturate(112%);
}

body:not(.site-dark-mode) .site-player-shell::before {
  position: absolute;
  inset: -22%;
  z-index: 0;
  content: '';
  background-image: var(--site-media-cover-image, none);
  background-position: center;
  background-size: cover;
  filter: blur(68px) saturate(0.72) contrast(0.82) brightness(1.1);
  opacity: 0.14;
  pointer-events: none;
  transform: scale(1.16);
}

body:not(.site-dark-mode) .site-player-shell > .site-player-video,
body:not(.site-dark-mode) .site-player-shell > .site-player-action-bar,
body:not(.site-dark-mode) .site-player-shell > .site-player-divider,
body:not(.site-dark-mode) .site-player-shell > .site-player-section {
  position: relative;
  z-index: 1;
}

body:not(.site-dark-mode) .site-player-shell > .site-player-header {
  z-index: 6;
}

body:not(.site-dark-mode) .site-player-shell .site-player-video-backdrop {
  filter: blur(34px) saturate(0.78) contrast(0.88) brightness(1.04) !important;
  transform: scale(1.16) !important;
}

body.site-dark-mode .site-player-shell .site-player-video-backdrop {
  filter: blur(34px) brightness(0.58) saturate(0.72) contrast(0.9) !important;
  transform: scale(1.16) !important;
}

/* 首页影视卡片只使用封面主色，不再把封面图作为模糊背景铺进卡片。 */
body:not(.site-dark-mode) .movie-card-vertical[data-site-media-tone],
body:not(.site-dark-mode) .video-share-container[data-site-media-tone] {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(248, 250, 252, 0.78)) !important;
  border-color: rgba(var(--site-media-rgb, 148, 163, 184), 0.16) !important;
  box-shadow:
    0 16px 36px rgba(var(--site-media-rgb, 148, 163, 184), 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.68) !important;
}

body:not(.site-dark-mode) .movie-card-vertical[data-site-media-tone] {
  isolation: isolate;
  overflow: hidden !important;
  background-clip: padding-box !important;
  clip-path: inset(0 round 16px);
}

body:not(.site-dark-mode) .movie-card-vertical[data-site-media-tone='ready'],
body:not(.site-dark-mode) .video-share-container[data-site-media-tone='ready'] {
  background:
    linear-gradient(
      135deg,
      rgba(var(--site-media-rgb), 0.34),
      rgba(var(--site-media-rgb), 0.2) 56%,
      rgba(var(--site-media-rgb), 0.12)
    ) !important;
}

/* Connected compact movie reactions and persistent comment toggle. */
body .post-item[data-post-type='movie']:has(.compact-card) > .interaction-section {
  padding:0 12px 8px !important;
}
body .post-item[data-post-type='movie']:has(.compact-card) .interaction-summary {
  display:flex; align-items:center; gap:10px; min-height:38px;
}
body .post-item[data-post-type='movie']:has(.compact-card) .interaction-summary .likes {
  flex:1; min-width:0; margin:0 !important; padding:7px 0 !important; border:0 !important; background:transparent !important; box-shadow:none !important;
}
.comment-count-toggle { display:inline-flex; align-items:center; gap:5px; flex:none; margin-left:auto; padding:8px 0; border:0; background:transparent; color:#64748b; font-size:11px; cursor:pointer; }
.comment-count-toggle .icon-svg { width:14px; height:14px; }
.comment-count-toggle:focus-visible { outline:2px solid #00a875; outline-offset:2px; }
body.site-dark-mode .comment-count-toggle { color:#bdc6ce; }

.interaction-summary { display:contents; }
body .post-item[data-post-type='movie']:has(.compact-card) > .interaction-section.interaction-section,
body.site-dark-mode .post-item[data-post-type='movie']:has(.compact-card) > .interaction-section.interaction-section,
body.site-dark-mode .post-item[data-post-type='movie']:has(.compact-card) > .comment-form.comment-form {
  margin:0 !important;
  border-radius:0 !important;
}
body .post-item[data-post-type='movie']:has(.compact-card) > .interaction-section.interaction-section:last-child,
body.site-dark-mode .post-item[data-post-type='movie']:has(.compact-card) > .interaction-section.interaction-section:last-child,
body.site-dark-mode .post-item[data-post-type='movie']:has(.compact-card) > .comment-form.comment-form:last-child {
  border-radius:0 0 15px 15px !important;
}

/* A single input surface, with a compact send action. */
body .post-item > .comment-form.comment-form {
  display:flex; flex-wrap:wrap; align-items:center; gap:8px;
  padding:10px 12px !important;
}
body .post-item .comment-form .comment-reply-context { flex-basis:100%; }
body .post-item .comment-form .comment-input-shell {
  display:flex; flex:1; min-width:0; height:40px; padding:0 12px !important;
  border:1px solid #dce2e7 !important; border-radius:10px !important;
  background:#f6f8fa !important; box-shadow:none !important;
}
body .post-item .comment-form .comment-input-shell:focus-within {
  border-color:#00a875 !important;
}
body .post-item .comment-form .comment-input-shell input {
  width:100%; min-width:0; height:100%; margin:0; padding:0 !important;
  border:0 !important; border-radius:0 !important; outline:none;
  background:transparent !important; box-shadow:none !important;
  color:#334155; font-size:13px;
}
body .post-item .comment-form .comment-submit-button {
  flex:0 0 40px; width:40px; height:40px; margin:0; padding:10px;
  border:0; border-radius:10px !important;
  background:#00a875 !important; color:#fff !important; box-shadow:none !important;
}
body .post-item .comment-form .comment-submit-button:disabled {
  background:#e9edf1 !important; color:#9aa7b6 !important; opacity:1;
}
body .post-item .comment-form .comment-submit-button:focus-visible { outline:2px solid #00a875; outline-offset:2px; }
body.site-dark-mode .post-item .comment-form .comment-input-shell {
  background:#242d35 !important; border-color:#3c4853 !important;
}
body.site-dark-mode .post-item .comment-form .comment-input-shell:focus-within { border-color:#37c99e !important; }
body.site-dark-mode .post-item .comment-form .comment-input-shell input { color:#e8edf0; }
body.site-dark-mode .post-item .comment-form .comment-submit-button:disabled { background:#303b45 !important; color:#7f8d9c !important; }

.post-like-toggle { display:inline-flex; align-items:center; flex:none; gap:5px; padding:8px 0; border:0; background:transparent; color:#83909e; font-size:11px; cursor:pointer; }
.post-like-toggle .icon-svg { width:17px; height:17px; }
.post-like-toggle.is-liked { color:#ff4977; }
.post-like-toggle:focus-visible { outline:2px solid #ff4977; outline-offset:2px; }
body .post-item[data-post-type='movie'] .interaction-summary:has(.post-like-toggle) .likes .like-icon { display:none; }
body .post-item[data-post-type='movie'] .interaction-summary:has(.post-like-toggle) .likes { overflow:hidden; }
body .post-item[data-post-type='movie'] .interaction-summary:has(.post-like-toggle) .likes-list { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
/* 播放器与播放列表的小幅回归修复。 */

/* 播放器封面必须保持为圆形头像，即使现代玻璃层覆盖了基础样式。 */
.music-player.site-modern-music-player .player-cover {
  width: 46px;
  height: 46px;
  overflow: hidden;
  object-fit: cover;
}

/* .page-indicator 原本是首页滚动提示的 fixed 胶囊；播放列表中应回到页脚流式布局。 */
.playlist-viewer-content.site-modern-playlist .playlist-footer .page-indicator {
  position: static !important;
  right: auto;
  bottom: auto;
  left: auto;
  z-index: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 58px;
  height: 32px;
  box-sizing: border-box;
  padding: 0 12px;
  color: #5f7898 !important;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  background: #fff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 999px;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
  transform: none !important;
  pointer-events: auto;
}

body.site-dark-mode .playlist-viewer-content.site-modern-playlist .playlist-footer .page-indicator {
  color: #c5d1df !important;
  background: #27272a !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  box-shadow: none;
}

/* 网络失败时保留加载入口，让用户可以手动重试，不会被静默卡在列表底部。 */
.load-more-indicator .load-more-error {
  color: #c2410c;
}

body.site-dark-mode .load-more-indicator .load-more-error {
  color: #fdba74;
}

/* 搜索上下文：历史词和结果总数保持轻量，不挤压信息流内容。 */
.search-history {
  margin: 0 12px 10px;
  padding: 11px 13px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: 14px;
}

.search-history-head,
.search-history-list {
  display: flex;
  align-items: center;
}

.search-history-head {
  justify-content: space-between;
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
}

.search-history-head button {
  padding: 0;
  color: #94a3b8;
  font-size: 11px;
  background: transparent;
  border: 0;
  cursor: pointer;
}

.search-history-list {
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 8px;
}

.search-history-list button {
  max-width: 100%;
  overflow: hidden;
  padding: 6px 10px;
  color: #475569;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  cursor: pointer;
}

.search-summary {
  margin: 2px 16px 9px;
  color: #94a3b8;
  font-size: 11px;
  font-weight: 700;
}

body.site-dark-mode .search-history {
  background: rgba(39, 39, 42, 0.72);
  border-color: rgba(255, 255, 255, 0.08);
}

body.site-dark-mode .search-history-list button {
  color: #d4d4d8;
  background: #27272a;
  border-color: rgba(255, 255, 255, 0.1);
}

.comment-form .comment-reply-context {
  display: flex;
  flex: 0 0 100%;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 6px;
  padding: 6px 9px;
  color: #64748b;
  font-size: 11px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
}

.comment-form {
  flex-wrap: wrap;
}

.comment-form .comment-reply-context button {
  padding: 0;
  color: #6366f1;
  font-size: 11px;
  background: transparent;
  border: 0;
  cursor: pointer;
}

body.site-dark-mode .comment-form .comment-reply-context {
  color: #a1a1aa;
  background: rgba(39, 39, 42, 0.65);
  border-color: rgba(255, 255, 255, 0.1);
}

/* Design-system convergence: one stable three-column header on the home feed. */
.top-bar {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  column-gap: 8px;
}

.top-bar > span {
  width: 44px;
  min-height: 44px;
  justify-content: flex-start;
}

.top-bar .search-container {
  min-width: 0;
  margin: 0;
}

.top-bar .title {
  position: static;
  display: block;
  width: 100%;
  margin: 0;
  text-align: center;
  transform: none;
}

.top-bar-actions {
  min-width: 44px;
  justify-content: flex-end;
  gap: 16px;
}

.top-bar-actions > * + * {
  margin-left: 0;
}

.top-bar-avatar {
  display: block;
  width: 28px;
  height: 28px;
  object-fit: cover;
  border: 2px solid rgba(255, 255, 255, 0.84);
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.12);
  cursor: pointer;
}

body.site-dark-mode .top-bar-avatar {
  border-color: rgba(255, 255, 255, 0.18);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.28);
}

/* Feed uses the same 600px reading column at every viewport size. */
.feed {
  width: min(100%, var(--size-content-max));
  box-sizing: border-box;
  margin-inline: auto;
}

.feed .post-item {
  width: 100%;
  max-width: none;
  margin-inline: 0;
  border-bottom: 0;
}

/* Post author and actor avatars stay circular; the cover-profile avatar keeps its
 * own rounded-rectangle shape from the base header styles. */
.post-author-avatar img,
.actor-avatar {
  border-radius: 50% !important;
}

/* Every icon follows the same stroke geometry and visual size. */
.icon-svg {
  stroke-linecap: round;
  stroke-linejoin: round;
}

.top-bar-icon {
  width: 30px;
  height: 30px;
}

.top-bar-actions > .notification-icon-wrapper {
  min-width: 44px;
  min-height: 44px;
}

/* Legacy modal surfaces now share the app's 12px control / 16px modal rhythm. */
.modal-overlay {
  background: rgba(15, 23, 42, 0.42);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}

.modal-content:not(.post-editor-modal) {
  padding: 24px !important;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-media) !important;
  box-shadow: var(--shadow-float) !important;
}

.modal-content:not(.post-editor-modal) .form-group input,
.modal-content:not(.post-editor-modal) .form-group textarea,
.modal-content:not(.post-editor-modal) .form-group select {
  min-height: var(--touch-target);
  border-radius: var(--radius-md);
}

.modal-content:not(.post-editor-modal) .action-btn {
  min-height: var(--touch-target);
  border-radius: var(--radius-md);
  background: var(--color-brand-600);
}

body.site-dark-mode .modal-content:not(.post-editor-modal) {
  background: #18181b;
  border-color: rgba(255, 255, 255, 0.1);
}

/* Semantic status colors: progress stays brand green, danger is reserved for unread/delete. */
.scroll-indicator-thumb {
  background: var(--color-brand-500) !important;
  border-radius: var(--radius-pill);
}

.notification-badge {
  background-color: var(--color-danger) !important;
  border-color: #fff;
}

body.site-dark-mode .tab-button.active {
  color: var(--color-brand-300) !important;
}

body.site-dark-mode .tab-button.active::after {
  background: linear-gradient(90deg, var(--color-brand-500), var(--color-brand-300));
  box-shadow: 0 0 10px rgba(52, 211, 153, 0.46);
}

body.site-dark-mode .scroll-indicator-thumb {
  background: var(--color-brand-500) !important;
}

@media (max-width: 600px) {
  .top-bar {
    grid-template-columns: 44px minmax(0, 1fr) auto;
  }

  .top-bar-actions {
    gap: 8px;
  }
}

/* 页面全屏时让播放页像独立视频页面一样铺满浏览器内容区，控制条落在视口底部。 */
.site-player-overlay.is-page-fullscreen .site-player-video {
  height: 100dvh;
  min-height: 0;
  aspect-ratio: auto;
}

/* 跨域播放器底部通常会预留一段安全区；页面全屏时延长 iframe 视口，
   将它自己的控制条推到播放页最底部，再由外层裁剪多出的部分。 */
.site-player-overlay.is-page-fullscreen .site-player-video > iframe.site-player-media {
  height: calc(100% + 60px) !important;
  max-height: none !important;
}

.site-player-overlay.is-page-fullscreen .site-player-shell {
  overflow: hidden !important;
  overscroll-behavior: none !important;
  touch-action: none !important;
}

.site-player-overlay.is-page-fullscreen {
  overflow: hidden !important;
  overscroll-behavior: none !important;
  touch-action: none !important;
}

@media (prefers-reduced-motion: reduce) {
  .top-bar-icon,
  .top-bar-avatar,
  .feed .post-item {
    transition: none !important;
  }
}

/* iOS Safari 放大修复：文本输入框字号小于 16px 聚焦时会自动放大页面。 */
@media (max-width: 600px) {
  #app input[type='text'],
  #app input[type='search'],
  #app input[type='password'],
  #app input[type='email'],
  #app textarea,
  #app select {
    font-size: 16px !important;
  }
}

/* 移动端视频播放页：只锁定横向溢出，保留播放器内容的纵向滚动。 */
.site-player-overlay {
  overflow: hidden;
  overscroll-behavior-x: none;
  touch-action: pan-y pinch-zoom;
}

.site-player-shell {
  min-width: 0;
  box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior-x: none;
  touch-action: pan-y pinch-zoom;
  -webkit-overflow-scrolling: touch;
}

.site-player-video,
.site-player-action-bar,
.site-player-section,
.site-player-recommendations,
.site-player-episodes {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

.site-player-video iframe,
.site-player-video video,
.site-player-video-media,
.site-player-media {
  max-width: 100%;
  box-sizing: border-box;
}

/* The player panel is intentionally frameless, including when an embedded player requests fullscreen. */
.site-player-overlay .site-player-shell,
.site-player-overlay.is-page-fullscreen .site-player-shell,
.site-player-overlay:fullscreen .site-player-shell {
  border: 0 !important;
  border-radius: 24px 24px 0 0 !important;
  box-shadow: none !important;
  scrollbar-width: none !important;
}

.site-player-overlay .site-player-shell::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

.site-player-overlay .site-player-video,
.site-player-overlay.is-page-fullscreen .site-player-video,
.site-player-overlay:fullscreen .site-player-video {
  border-radius: 24px 24px 0 0 !important;
}

.site-player-overlay .site-player-media {
  border: 0 !important;
  overflow: hidden !important;
  scrollbar-width: none !important;
}

.site-player-overlay .site-player-media::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

/* Cross-origin ArtPlayer exposes web/native fullscreen controls inside the iframe.
   These outer controls keep both actions discoverable and provide a generous touch target. */
.site-player-video:has(> iframe.site-player-media) {
  overflow: hidden !important;
}

.site-player-video > iframe.site-player-media {
  clip-path: none;
}

.site-player-video > iframe.site-player-media:fullscreen {
  clip-path: none !important;
}

.site-player-fullscreen-proxy-icon {
  font-size: 18px;
  line-height: 1;
}

/* 页面全屏入口与播放器顶部的暗黑模式按钮同一排，不遮挡视频控制条。 */
.site-player-header .site-player-page-fullscreen-proxy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  width: auto;
  min-width: 34px;
  min-height: 34px;
  height: 34px;
  margin-right: -10px;
  padding: 0 10px;
  color: #fff;
  font: 700 11px/1 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  white-space: nowrap;
  background: rgba(15, 23, 42, .46);
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 17px;
  box-shadow: 0 5px 14px rgba(0, 0, 0, .16);
  appearance: none;
  cursor: pointer;
  pointer-events: auto !important;
  -webkit-tap-highlight-color: transparent;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: background-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.site-player-header .site-player-page-fullscreen-proxy:hover,
.site-player-header .site-player-page-fullscreen-proxy:focus-visible {
  background: rgba(5, 150, 105, .94);
  box-shadow: 0 6px 18px rgba(0, 0, 0, .36), 0 0 0 2px rgba(167, 243, 208, .55);
  outline: none;
  transform: translateY(-2px);
}

.site-player-header .site-player-page-fullscreen-proxy:active {
  transform: translateY(0);
}

.site-player-overlay.is-page-fullscreen .site-player-header .site-player-page-fullscreen-proxy {
  background: rgba(5, 150, 105, .7);
}

.site-player-video:fullscreen {
  width: 100vw !important;
  height: 100dvh !important;
  max-width: none !important;
  aspect-ratio: auto;
  background: #000;
}

.site-player-video:fullscreen > .site-player-media {
  width: 100% !important;
  height: 100% !important;
}

/* 原生 <video> 不能沿用 iframe 的 object-fit: cover，否则画面被裁切/拉伸。
   全屏（元素全屏或播放器全屏）时也必须保持等比缩放，多余区域留黑边。 */
.site-player-video > video.site-player-media,
.site-player-video > video.site-player-media:fullscreen,
.site-player-video > video.site-player-media:-webkit-full-screen,
.site-player-video:fullscreen > video.site-player-media {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  background: #000;
}

@media (max-width: 600px) {
  .site-player-header {
    padding-right: 10px;
    padding-left: 10px;
  }

  .site-player-header .site-player-title {
    max-width: 36%;
    min-width: 0;
    overflow: hidden;
    font-size: 14px;
    letter-spacing: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .site-player-header .site-player-header-actions {
    flex: 0 0 auto;
    gap: 4px;
  }

  .site-player-header .site-player-page-fullscreen-proxy {
    width: 34px;
    min-width: 34px;
    height: 34px;
    gap: 0;
    padding: 0;
    border-radius: 50%;
    font-size: 0 !important;
  }

  .site-player-header .site-player-page-fullscreen-proxy-label {
    display: none !important;
  }
}




/* 播放页底部外层控制条由远程播放器负责，隐藏重复的外层按钮。 */
.site-player-video-ui {
  display: none !important;
}

.site-player-video.is-native-video > .site-player-video-ui {
  display: flex !important;
}

/* 播放中 5 秒无鼠标/触摸操作后隐藏控制栏，避免遮挡画面。 */
.site-player-video.is-native-video > .site-player-video-ui {
  transition: opacity 0.28s ease, transform 0.28s ease, visibility 0s linear 0s;
}

.site-player-video.is-native-video.is-controls-idle > .site-player-video-ui {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(10px);
  transition: opacity 0.28s ease, transform 0.28s ease, visibility 0s linear 0.28s;
}

.site-player-video.is-native-video.is-controls-idle {
  cursor: none;
}

@media (prefers-reduced-motion: reduce) {
  .site-player-video.is-native-video > .site-player-video-ui {
    transition: none;
  }
}

.site-player-episode-loading {
  position: absolute;
  inset: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  box-sizing: border-box;
  padding: 16px;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  background: rgba(7, 11, 16, 0.72);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  pointer-events: none;
}

.site-player-episode-loading[hidden] {
  display: none !important;
}

/* iOS 会把原生 video 合成到网页上层，加载提示改用视频自身 poster 绘制，
   因此这里不再隐藏画面，避免把 poster 一并遮掉。 */

.site-player-episode-loading-spinner {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  box-sizing: border-box;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-top-color: #fff;
  border-radius: 50%;
  animation: site-player-loading-spin 0.8s linear infinite;
}

@keyframes site-player-loading-spin {
  to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
  .site-player-episode-loading-spinner { animation: none; }
}

.site-player-paused-status {
  position:absolute;
  top:50%;
  left:50%;
  z-index:5;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:42px;
  padding:8px 14px;
  color:#fff;
  font-size:14px;
  font-weight:700;
  line-height:1;
  background:rgba(9,12,18,.78);
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  box-shadow:0 5px 18px rgba(0,0,0,.3);
  transform:translate(-50%,-50%);
  pointer-events:none;
}

.site-player-paused-status[hidden] { display:none!important; }

.site-player-video.is-native-video > .site-player-play-main {
  display:none!important;
}

.site-player-video.is-native-video .site-player-controls {
  flex-wrap: nowrap;
  gap: 8px;
  min-width: 0;
}

.site-player-video.is-native-video .site-player-controls-group {
  flex-wrap: nowrap;
  gap: 8px;
  min-width: 0;
}

.site-player-video.is-native-video .site-player-controls-group:first-child {
  flex: 1 1 auto;
}

.site-player-video.is-native-video .site-player-controls-group:last-child {
  flex: 0 0 auto;
  margin-left: auto;
}

.site-player-video.is-native-video .site-player-controls button {
  min-width: 36px;
  min-height: 36px;
  border-radius: 8px;
  touch-action: manipulation;
}

.site-player-video.is-native-video .site-player-controls button:disabled {
  opacity: 0.35;
  cursor: default;
}

.site-player-video.is-native-video .site-player-volume-slider {
  width: 68px;
  min-width: 48px;
  height: 24px;
  accent-color: #38bdf8;
  touch-action: manipulation;
}

.site-player-video.is-native-video .site-player-speed-button {
  min-width: 42px;
  font-size: 12px;
  font-weight: 700;
}

@media (max-width: 600px) {
  .site-player-video.is-native-video .site-player-controls,
  .site-player-video.is-native-video .site-player-controls-group {
    flex-wrap: nowrap;
    gap: 2px;
  }

  /* 小屏上按按钮数量分配宽度，保证 9 个按钮始终排成一行不换行。 */
  .site-player-video.is-native-video .site-player-controls-group:first-child {
    flex: 6 1 0;
    min-width: 0;
  }

  .site-player-video.is-native-video .site-player-controls-group:last-child {
    flex: 3 1 0;
    min-width: 0;
    margin-left: 0;
  }

  .site-player-video.is-native-video .site-player-controls button {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
    min-height: 34px;
    padding: 6px 2px;
  }

  .site-player-video.is-native-video .site-player-controls button svg {
    width: 18px;
    height: 18px;
  }

  /* 音量滑块太占宽度，小屏只保留静音按钮。 */
  .site-player-video.is-native-video .site-player-volume-slider {
    display: none;
  }
}



/* iPhone 播放页布局修复：锁定视口宽度，避免播放器控制按钮横向溢出。 */
@media screen and (max-width: 600px) {
  html,
  body,
  #app {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden !important;
  }

  .site-player-overlay {
    width: 100vw !important;
    max-width: 100vw !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    overflow-x: hidden !important;
  }

  .site-player-shell {
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    border-radius: 22px 22px 0 0 !important;
  }

  .site-player-overlay .site-player-header {
    display: grid;
    grid-template-columns: 108px minmax(0, 1fr) 108px;
    grid-template-rows: 38px;
    height: 64px;
    margin-bottom: -64px;
    align-items: center;
    column-gap: 8px;
    width: 100%;
    min-width: 0;
    padding: 18px max(8px, env(safe-area-inset-left), env(safe-area-inset-right)) 8px;
    box-sizing: border-box;
  }

  .site-player-overlay .site-player-header .site-player-title {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    height: 38px;
    width: 100%;
    max-width: 100% !important;
    min-width: 0;
    margin: 0;
    font-size: 14px !important;
    line-height: 38px;
    text-align: center;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  .site-player-overlay .site-player-header > button[data-player-action='close'] {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    align-self: center;
  }

  .site-player-overlay .site-player-header .site-player-header-actions {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    align-self: center;
    align-items: center;
    height: 38px;
  }

  .site-player-header .site-player-header-actions {
    min-width: 0;
    gap: 3px !important;
  }

  .site-player-header .site-player-page-fullscreen-proxy {
    width: 34px !important;
    min-width: 34px !important;
    margin-right: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    border-radius: 50% !important;
  }

  .site-player-header .site-player-page-fullscreen-proxy-label {
    display: none !important;
  }

  .site-player-video {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    border-radius: 22px 22px 0 0 !important;
  }

  .site-player-video > iframe.site-player-media {
    width: 100% !important;
    max-width: 100% !important;
    clip-path: none !important;
  }

  .site-player-video > iframe.site-player-media:fullscreen,
  .site-player-video:fullscreen > iframe.site-player-media {
    width: 100vw !important;
    max-width: 100vw !important;
  }

  .site-player-shell .site-player-action-bar,
  .site-player-shell .site-player-section {
    width: auto;
    min-width: 0;
    max-width: calc(100% - 20px);
    margin-left: 10px;
    margin-right: 10px;
    box-sizing: border-box;
  }

  .site-player-shell .site-player-action-bar { gap: 8px; }
  .site-player-shell .site-player-now-playing { flex: 1 1 auto; min-width: 0; }
  .site-player-shell .site-player-episode-button { flex-shrink: 0; }
  .site-player-shell .site-player-details,
  .site-player-shell .site-player-info-main h2 { overflow-wrap: anywhere; }
}

@supports (-webkit-touch-callout: none) {
  .site-player-shell {
    height: 100svh !important;
    max-height: 100svh !important;
  }

  .site-player-overlay.is-page-fullscreen .site-player-shell {
    height: 100svh !important;
    max-height: 100svh !important;
  }
}
/* Center the feed page count above the 40px back-to-top button, with a 10px gap. */
body > .page-indicator.feed-page-indicator {
  left: auto;
  right: max(36px, calc((100vw - 600px) / 2 + 36px));
  bottom: 150px;
  transform: translateX(50%);
  white-space: nowrap;
}
/* Shared feed tokens and solid surfaces. Movie layout lives in movie-card.css. */
body:not(.site-dark-mode) #app:has(.feed) {
 background:radial-gradient(circle at 92% 2%,rgb(255 255 255),transparent 30%),linear-gradient(180deg,#f8fbfd,#f2f6f8) !important;
}
body.site-dark-mode #app:has(.feed) {
 background:#141c23 !important;
}
body #app .taste-feed-card {
 --feed-ink:#26372f; --feed-muted:#65736b; --feed-line:#e3eae5; --feed-paper:#fff;
 --feed-soft:#eff3f0; --feed-accent:#087f63; --feed-accent-soft:#e6f3ec;
 color:var(--feed-ink);font-family:"PingFang SC","Microsoft YaHei","Segoe UI",sans-serif;
 border:1px solid var(--feed-line) !important;border-radius:16px !important;
 background:var(--feed-paper) !important;
 box-shadow:0 2px 8px #20382b06 !important;
 backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
 transform:none;transition:border-color .16s ease;
}
body.site-dark-mode #app .taste-feed-card {
 --feed-ink:#e6eee8;--feed-muted:#abbcaf;--feed-line:#35433a;--feed-paper:#202a25;
 --feed-soft:#2c3931;--feed-accent:#8bd6b7;--feed-accent-soft:#2d4639;
 box-shadow:0 2px 8px #20382b06 !important;
}
body #app .taste-feed-card:hover { transform:none; }
body #app .taste-feed-card::before,
body #app .taste-feed-card::after { display:none !important; }
body #app { --feed-gutter:12px; }
body #app .feed { gap:18px;max-width:none;width:calc(100% - var(--feed-gutter) * 2);padding-left:0;padding-right:0;margin-left:auto !important;margin-right:auto !important;box-sizing:border-box; }
body #app .filter-controls-wrapper { width:calc(100% - var(--feed-gutter) * 2);max-width:none;margin-left:auto;margin-right:auto;box-sizing:border-box; }
body #app .feed > .post-item { width:100%;max-width:none; }
@media(max-width:600px) { body #app { --feed-gutter:10px; } }
body #app .taste-feed-card:not([data-post-type="movie"]) { padding:12px !important; }
body #app .taste-feed-card[data-post-type="movie"] > .interaction-section { padding:4px 12px !important;background:var(--movie-surface,var(--feed-paper)) !important; }
body #app .taste-feed-card[data-post-type="movie"]:has(.compact-card) {
 --movie-surface:color-mix(in srgb,rgb(var(--site-media-rgb,148,163,184)) 32%,#fff);
 padding:0 !important;margin:0;row-gap:0;background:var(--movie-surface) !important;
}
body.site-dark-mode #app .taste-feed-card[data-post-type="movie"]:has(.compact-card) {
 --movie-surface:color-mix(in srgb,rgb(var(--site-media-rgb,148,163,184)) 32%,#18201e);
}
/* Contain older palette and glass selectors to the single movie surface. */
body #app .taste-feed-card .movie-card-vertical.compact-card {
 background:var(--movie-surface) !important;border:0 !important;border-radius:15px 15px 0 0 !important;
 box-shadow:none !important;backdrop-filter:none;-webkit-backdrop-filter:none;clip-path:none !important;
}
body #app .taste-feed-card .movie-card-vertical.compact-card::before,
body #app .taste-feed-card .movie-card-vertical.compact-card::after { display:none !important; }
body #app .taste-feed-card .compact-controls :is(.actions-btn,.compact-bookmark:not(.is-bookmarked)) {
 background:var(--feed-paper);border:1px solid var(--feed-line);
 box-shadow:0 2px 8px #20382b06 !important;
}
body #app .taste-feed-card .post-text { color:var(--feed-ink);font-size:14px;line-height:1.8; }
body #app .taste-feed-card .author-name { color:var(--feed-ink);font-weight:600; }
body #app .taste-feed-card .post-type-badge { padding:0;min-height:20px;border:0;background:transparent;box-shadow:none;color:var(--feed-muted);font-size:11px; }
body #app .taste-feed-card .post-type-badge .icon-svg { color:var(--feed-accent);width:12px;height:12px; }
body #app .taste-feed-card .post-time { color:var(--feed-muted);font-size:11px;font-weight:400; }
body #app .taste-feed-card .post-engagement-actions { border-top-color:var(--feed-line);padding-top:8px;margin-top:12px; }
body #app .taste-feed-card > .interaction-section { margin-top:8px;padding:8px 14px !important;border:0 !important;background:var(--feed-paper) !important;box-shadow:none !important; }
body #app .taste-feed-card .interaction-summary { gap:8px;min-height:28px; }
body #app .taste-feed-card .interaction-summary :is(.post-like-toggle,.comment-count-toggle) { min-height:32px;color:var(--feed-muted);font-size:11px;font-weight:400; }
body #app .taste-feed-card .post-like-toggle.is-liked { color:#c13f60; }
body.site-dark-mode #app .taste-feed-card .post-like-toggle.is-liked { color:#ff9bb5; }
body #app .taste-feed-card .interaction-summary .likes { flex:0 1 auto;min-width:0;font-size:11px;color:var(--feed-muted); }
body #app .taste-feed-card .interaction-summary .likes .like-user { font-weight:500; }
body #app .taste-feed-card .interaction-published { color:var(--feed-muted);font-size:10px; }
body #app .taste-feed-card .comment-count-toggle { margin-left:auto; }
body #app .taste-feed-card :is(button,input):focus-visible { outline:2px solid var(--feed-accent);outline-offset:3px; }
body #app .taste-feed-card .comment-input-shell { min-height:38px;border:1px solid var(--feed-line);background:var(--feed-paper);border-radius:10px; }
body #app .taste-feed-card .comment-input-shell input { color:var(--feed-ink); }
body #app .taste-feed-card .comment-input-shell input::placeholder { color:var(--feed-muted); }
body #app .taste-feed-card .comments { padding-top:12px; }
body #app .taste-feed-card .comment-body { background:var(--feed-soft);border:1px solid var(--feed-line);border-radius:10px;padding:10px 12px; }
body #app .taste-feed-card .commenter { color:var(--feed-ink);font-size:12px; }
body #app .taste-feed-card .comment-text { color:var(--feed-ink);font-size:13px;line-height:1.7; }
body #app .taste-feed-card > .comment-form { background:var(--feed-paper) !important;padding:12px 14px !important;gap:8px; }
body #app .taste-feed-card .comment-submit-button { min-width:38px;min-height:38px;border-radius:10px;background:var(--feed-accent); }
body #app .taste-feed-card .comment-submit-button:disabled { background:var(--feed-soft);color:var(--feed-muted); }
body #app .taste-feed-card .music-share-card { background:transparent !important;border:0 !important;border-radius:0 !important;padding:4px 0 8px !important;box-shadow:none !important; }
body #app .taste-feed-card .music-share-card .share-title { color:var(--feed-ink);font-size:18px;font-weight:650; }
body #app .taste-feed-card .music-share-card .share-title-line { display:flex;align-items:center;gap:6px;min-width:0; }
body #app .taste-feed-card .music-share-card .share-title-line .share-title { min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
body #app .taste-feed-card .music-share-card .pinned-tag { flex:none;white-space:nowrap; }
body #app .taste-feed-card .music-share-card .share-cover { border-radius:8px; }
body #app .taste-feed-card .music-share-card .share-card-kicker { color:var(--feed-muted);font-size:10px;letter-spacing:0; }
body #app .taste-feed-card .share-subtitle { color:var(--feed-muted);font-size:12px; }
@media(hover:hover) {
 body #app .taste-feed-card:hover { border-color:#cbdad0 !important; }
 body.site-dark-mode #app .taste-feed-card:hover { border-color:#4d6657 !important; }
 body #app .taste-feed-card .comment-count-toggle:hover { color:var(--feed-accent); }
}
@media(max-width:600px) {
 body #app .taste-feed-card > .interaction-section { padding:6px 10px !important; }
 body #app .taste-feed-card .interaction-summary { gap:6px; }
 body #app .taste-feed-card .interaction-summary .likes-suffix { display:none; }
 body #app .taste-feed-card[data-post-type="movie"] .interaction-summary .likes { max-width:24%; }
 body #app .taste-feed-card .music-share-card .share-title { font-size:16px; }
}
@media(prefers-reduced-motion:reduce) { body #app .taste-feed-card { transition:none; } }
@supports not (backdrop-filter:blur(1px)) {
 body #app .taste-feed-card { background:var(--feed-paper) !important; }
}
@media(prefers-reduced-transparency:reduce) {
 body #app .taste-feed-card { background:var(--feed-paper) !important;backdrop-filter:none;-webkit-backdrop-filter:none; }
}

/* Screenshot reference: airy white media cards with an integrated action row. */
body #app .reference-movie .category-tag[hidden] { display:none !important; }
body #app .taste-feed-card[data-post-type="movie"]:has(.reference-movie) {
 --movie-surface:color-mix(in srgb,rgb(var(--site-media-rgb,148,163,184)) 9%,#fff);--feed-ink:#101d30;--feed-muted:#53657e;
 background:
  radial-gradient(ellipse at 0% 12%,rgba(var(--site-media-rgb,148,163,184),.17),transparent 64%),
  radial-gradient(ellipse at 100% 100%,rgba(var(--site-media-rgb,148,163,184),.07),transparent 55%),
  linear-gradient(125deg,#fffffff0 0%,#fffefbd9 42%,#ffffffa8 100%) !important;
 border:1px solid #ffffffb3 !important;border-radius:20px !important;
 box-shadow:inset 0 1px 0 #ffffffb3,0 6px 22px #23354d09 !important;
 backdrop-filter:blur(16px) saturate(115%) !important;-webkit-backdrop-filter:blur(16px) saturate(115%) !important;
}
body #app .taste-feed-card .reference-movie.compact-card {
 --reference-accent:#0cba98;--reference-soft:#edfff8;--reference-border:#b6eedf;
 display:grid !important;grid-template-columns:70px minmax(0,1fr);gap:8px 12px;
 padding:10px 12px 4px !important;border-radius:20px !important;
 background:transparent !important;
 color:var(--feed-ink) !important;cursor:pointer;
}
body #app .reference-movie.is-starting { --reference-accent:#ff9000;--reference-soft:#fff9eb;--reference-border:#ffe0a6; }
body #app .reference-movie .cover-bg.compact-poster { width:70px;height:105px;border-radius:10px;box-shadow:0 4px 12px #23354d0c; }
body #app .reference-movie .reference-category { position:absolute;top:7px;left:7px;padding:4px 8px;border-radius:6px;background:#f8fafdee;color:#233044;font-size:11px;font-weight:700; }
body #app .reference-movie .compact-body { display:flex;flex-direction:column;gap:0;padding:0 62px 0 0;min-width:0; }
body #app .reference-movie .compact-heading { margin-right:-62px; }
body #app .reference-movie .compact-heading { display:flex;flex-wrap:nowrap;gap:4px;min-height:30px; }
body #app .reference-movie .compact-title { flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:17px;line-height:1.4;font-weight:750;letter-spacing:-.5px; }
body #app .reference-movie .compact-controls { flex-direction:row;gap:0;margin-right:-8px; }
body #app .reference-movie .compact-controls :is(.compact-bookmark,.actions-btn) { display:grid;place-items:center;width:30px;height:30px;min-height:30px;padding:7px;border:0!important;border-radius:6px;background:transparent!important;box-shadow:none!important;color:#93a5bf; }
body #app .reference-movie .compact-controls .compact-bookmark.is-bookmarked { color:#009e75; }
body #app .reference-movie .compact-controls :is(.compact-bookmark,.actions-btn)::before { content:'';position:absolute;inset:-7px; }
body #app .reference-movie .compact-controls svg { width:17px;height:17px; }
body #app .reference-movie .compact-rating { flex:none;gap:8px;min-height:28px;margin-top:3px; }
body #app .reference-movie .compact-douban { width:26px;height:26px;border-radius:4px;border:1px solid #a9e7bb;background:#daf7e3;color:#00aa4f;font-size:15px; }
body #app .reference-movie .compact-score { color:var(--feed-ink);font-size:15px;font-weight:700; }
body #app .reference-movie .is-unrated .compact-score { color:var(--feed-muted);font-size:14px;font-weight:400; }
body #app .reference-movie .compact-stars { width:67px;height:14px; }
body #app .reference-movie .compact-stars svg { width:12px;height:14px; }
body #app .reference-movie .compact-stars-base { color:#e7edf3; }
body #app .reference-movie .compact-stars-fill { color:#ffb51a; }
/* Keep metadata in the DOM for the existing playback details reader. */
body #app .reference-movie .compact-credits { display:none !important; }
body #app .reference-movie :is(.credit-label,.cast-label) { color:#8399ba; }
body #app .reference-movie .reference-actions { grid-column:1/-1;display:flex;align-items:center;gap:10px;min-width:0;border-top:1px solid #eff2f6;padding-top:2px;margin-top:0; }
body #app .reference-movie .reference-actions button { display:inline-flex;align-items:center;justify-content:center;gap:5px;position:relative;min-height:44px;border:0;font:inherit;font-size:14px;cursor:pointer;white-space:nowrap; }
body #app .reference-movie .reference-social { padding:0;background:transparent;color:#637b9b; }
body #app .reference-movie .reference-social svg { width:18px;height:18px;stroke-width:1.7; }
body #app .reference-movie .reference-social.is-liked svg { fill:currentColor; }
body #app .reference-movie .reference-published { margin-left:auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--feed-muted);font-size:13px; }
body #app .reference-movie button:active { opacity:.75; }
body #app .reference-movie button:focus-visible { outline:2px solid var(--reference-accent);outline-offset:3px; }
body.site-dark-mode #app .taste-feed-card[data-post-type="movie"]:has(.reference-movie) { --movie-surface:color-mix(in srgb,rgb(var(--site-media-rgb,148,163,184)) 30%,#18202a);--feed-ink:#edf3fc;--feed-muted:#a0b2cc; }
body.site-dark-mode #app .taste-feed-card[data-post-type="movie"]:has(.reference-movie) {
 background:
  radial-gradient(ellipse at 0% 12%,rgba(var(--site-media-rgb,148,163,184),.25),transparent 64%),
  radial-gradient(ellipse at 100% 100%,rgba(var(--site-media-rgb,148,163,184),.12),transparent 55%),
  linear-gradient(125deg,#1e2733ed,#18202acc) !important;
 border-color:#ffffff20 !important;box-shadow:inset 0 1px 0 #ffffff12,0 6px 22px #00000018 !important;
}
body.site-dark-mode #app .reference-movie .reference-actions { border-color:#344153; }
@media(max-width:420px) {
 body #app .taste-feed-card .reference-movie.compact-card { grid-template-columns:64px minmax(0,1fr);padding:10px 10px 4px!important;gap:6px 10px; }
 body #app .reference-movie .cover-bg.compact-poster { width:64px;height:96px;border-radius:9px; }
 body #app .reference-movie .compact-title { font-size:16px; }
 body #app .reference-movie .compact-controls :is(.compact-bookmark,.actions-btn) { width:27px;padding:5px; }
 body #app .reference-movie .compact-credits { font-size:12px;margin-top:8px; }
 body #app .reference-movie .reference-actions { gap:9px; }
 body #app .reference-movie .reference-actions button { font-size:12px; }
 body #app .reference-movie .reference-published { font-size:11px; }
}
@supports not (backdrop-filter:blur(1px)) {
 body #app .taste-feed-card[data-post-type="movie"]:has(.reference-movie) { background:var(--movie-surface) !important; }
}
@media(prefers-reduced-transparency:reduce) {
 body #app .taste-feed-card[data-post-type="movie"]:has(.reference-movie) { background:var(--movie-surface) !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important; }
}

/* Night palette: low-glare graphite surfaces shared by every feed type. */
html body.site-dark-mode,
body.site-dark-mode #app:has(.feed),
body.site-dark-mode #app .feed {
 background:#080a0d !important;
}
body.site-dark-mode #app .taste-feed-card,
body.site-dark-mode #app .taste-feed-card[data-post-type="movie"]:has(.reference-movie) {
 --movie-surface:#12171c;--feed-paper:#12171c;--feed-soft:#1b232a;
 --feed-ink:#e2e5e7;--feed-muted:#9aa5ad;--feed-line:#30373d;
 --feed-accent:#80c8b5;--feed-accent-soft:#263d37;
 background:linear-gradient(135deg,#171e25,#10151b 75%) !important;border-color:#ffffff06 !important;
 box-shadow:inset 0 1px 0 #ffffff04,0 4px 14px #00000018 !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
}
body.site-dark-mode #app .taste-feed-card :is(.reference-movie.compact-card,.music-share-card,.interaction-section,.post-engagement-actions,.comment-form) {
 background:transparent !important;box-shadow:none !important;
 backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
}
body.site-dark-mode .music-player.site-modern-music-player {
 background:#12171c !important;border:1px solid #252d35 !important;box-shadow:0 4px 16px #0003 !important;
 backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
}
body.site-dark-mode #app .reference-movie .reference-actions { border-color:#ffffff0a; }
body.site-dark-mode #app .reference-movie .reference-category { background:#202830e8;color:#d3dce2;font-weight:500; }
body.site-dark-mode #app .reference-movie .compact-douban { background:#263d32;border-color:#3c5948; }
body.site-dark-mode #app .reference-movie .is-unrated .compact-score { color:var(--feed-muted); }
body.site-dark-mode #app .reference-movie .compact-stars-fill { color:#d6b36a; }
body.site-dark-mode #app .reference-movie .compact-controls :is(.compact-bookmark,.actions-btn) { color:#8b99a4; }
body.site-dark-mode #app .reference-movie .compact-controls .compact-bookmark.is-bookmarked { color:#80c8b5; }
body.site-dark-mode #app .taste-feed-card:hover { border-color:#ffffff12 !important; }

/* Shared reference layout; theme surfaces are specified below. */
.day-category,.day-comment-label { display:none; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .taste-feed-card[data-post-type="movie"]:has(.reference-movie) {
 background:#fff !important;border:1px solid #edf1f6 !important;border-radius:20px !important;
 box-shadow:0 2px 5px #20354c04 !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
 --feed-ink:#142137;--feed-muted:#879bb7;
}
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .taste-feed-card .reference-movie.compact-card {
 grid-template-columns:100px minmax(0,1fr);background:transparent !important;
}
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-poster {border-radius:11px; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .reference-category { display:none; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-body { padding:0; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-heading { margin:0;gap:8px;min-height:28px; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-title { font-size:19px;letter-spacing:-.4px; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .day-category { display:inline-flex;flex:none;padding:3px 9px;border-radius:5px;background:#eff3ff;color:#5746f5;font-size:12px;font-weight:650; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie[data-media-category="电影"] .day-category { color:#0798dc;background:#edf9ff; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-controls { gap:2px; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-bookmark { order:2; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-rating { min-height:24px;margin-top:4px; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-douban { width:21px;height:18px;border:0;background:#009d70;color:#fff;font-size:13px; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .is-unrated .compact-douban { background:#93a4bc; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-stars { width:92px;height:15px; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-stars svg { width:16px;height:15px; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-stars-base { color:#d1dae6; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-credits { display:grid !important;margin-top:5px;gap:4px;font-size:14px;line-height:1.65;color:#6880a3 !important; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .reference-actions { gap:5px;border-color:#f4f6f9; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .reference-published { order:1;margin-left:0; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .reference-published::before { content:'· '; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .reference-comment { order:2;margin-left:auto; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .reference-social.is-liked { color:#d95578; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .day-comment-label { display:inline; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie :is(.night-comment-label,.reference-ring-button) { display:none !important; }
@media(max-width:420px) {
 body:is(.site-dark-mode, :not(.site-dark-mode)) #app .taste-feed-card .reference-movie.compact-card { grid-template-columns:76px minmax(0,1fr);padding:12px 12px 6px !important;gap:10px 12px; }
 body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-poster { width:76px;height:118px; }
 body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-title { font-size:16px; }
 body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-heading { gap:5px; }
 body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .day-category { padding:3px 5px;font-size:10px; }
 body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-credits { font-size:12px;gap:2px; }
 body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-controls :is(.compact-bookmark,.actions-btn) { width:24px; }
}

/* Night: the same information layout on neutral translucent glass. */
body.site-dark-mode #app .taste-feed-card,
body.site-dark-mode #app .taste-feed-card[data-post-type="movie"]:has(.reference-movie) {
 --feed-ink:#e2e8ef;--feed-muted:#a0aec0;--feed-paper:#151d29;--movie-surface:#151d29;
 background:rgb(27 31 36 / 78%) !important;
 border:1px solid #c4d6f21a !important;box-shadow:inset 0 1px 0 #ffffff09,0 8px 24px #00000024 !important;
 backdrop-filter:blur(20px) saturate(115%) !important;-webkit-backdrop-filter:blur(20px) saturate(115%) !important;
}
body.site-dark-mode #app .reference-movie .day-category { background:#8070ff1f;color:#b3a6ff; }
body.site-dark-mode #app .reference-movie[data-media-category="电影"] .day-category { background:#51bbef16;color:#80c9ed; }
body.site-dark-mode #app .reference-movie .compact-douban { background:#244d3b;color:#94d4ae; }
body.site-dark-mode #app .reference-movie .is-unrated .compact-douban { background:#384758;color:#b4c2d4; }
body.site-dark-mode #app .reference-movie .compact-stars-base { color:#425066; }
body.site-dark-mode #app .reference-movie .compact-score { color:#dce4ee; }
body.site-dark-mode #app .reference-movie .compact-credits { color:#a5b4ca !important; }
body.site-dark-mode #app .reference-movie :is(.credit-label,.cast-label) { color:#8294ad; }
body.site-dark-mode #app .reference-movie :is(.reference-progress,.reference-actions) { border-color:#b3c5df0d; }
body.site-dark-mode #app .reference-movie .reference-social { color:#a0aec0; }
body.site-dark-mode #app .reference-movie .reference-social.is-liked { color:#e692a6; }
@supports not (backdrop-filter:blur(1px)) {
 body.site-dark-mode #app .taste-feed-card,
 body.site-dark-mode #app .taste-feed-card[data-post-type="movie"]:has(.reference-movie) { background:#151d29 !important; }
}
@media(prefers-reduced-transparency:reduce) {
 body.site-dark-mode #app .taste-feed-card,
 body.site-dark-mode #app .taste-feed-card[data-post-type="movie"]:has(.reference-movie) { background:#151d29 !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important; }
}

/* Reading pass: one credits line and one clear resume action. */
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .taste-feed-card .reference-movie.compact-card { grid-template-columns:88px minmax(0,1fr);gap:8px 16px;padding:14px 16px 4px !important; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-poster { width:88px;height:124px; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-credits[hidden] { display:none !important; }
body #app .reference-movie .reading-credits { margin:7px 0 0;font-size:13px;line-height:1.6;color:#566477;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .reference-actions { border:0;padding:0; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .reference-social { color:#637187;font-size:12px; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .reference-published { color:#778395;font-size:12px; }
body:not(.site-dark-mode) #app .reference-movie .is-unrated .compact-score { color:#697587; }
body.site-dark-mode #app .reference-movie .reading-credits { color:#afbacb; }
body.site-dark-mode #app .reference-movie :is(.reference-social,.reference-published) { color:#a0aec0; }
body #app .reference-movie .reference-social.is-liked { color:#d95578; }
@media(max-width:420px) {
 body:is(.site-dark-mode, :not(.site-dark-mode)) #app .taste-feed-card .reference-movie.compact-card { grid-template-columns:70px minmax(0,1fr);padding:12px 12px 4px !important;gap:6px 12px; }
 body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-poster { width:70px;height:112px; }
 body #app .reference-movie .reading-credits { font-size:12px;margin-top:5px; }
}

/* Distinguish starting a title from resuming a saved position. */

/* Quiet category metadata keeps the title as the first reading anchor. */
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-rating { flex-wrap:wrap;gap:6px; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-rating .day-category { padding:2px 6px;border-radius:4px;background:#f1f4f6;color:#687582;font-size:11px;font-weight:400;line-height:1.4; }
body.site-dark-mode #app .reference-movie .compact-rating .day-category { background:#ffffff08;color:#a4aeb9; }

/* Compact reading rhythm: two-line titles and a quieter numeric rating. */
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-heading { align-items:flex-start; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-title { display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow-wrap:anywhere;line-height:1.4; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-controls { flex-shrink:0; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-rating .compact-douban { width:auto;height:auto;padding:0;border:0;border-radius:0;background:transparent;color:#53816e;font-size:12px;font-weight:400;line-height:1.5; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .compact-rating.is-unrated .compact-douban { color:#697587; }
body.site-dark-mode #app .reference-movie .compact-rating .compact-douban { color:#97b9aa; }
body.site-dark-mode #app .reference-movie .compact-rating.is-unrated .compact-douban { color:#a0aec0; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .taste-feed-card .reference-movie.compact-card { row-gap:0;padding-bottom:0 !important; }
body:is(.site-dark-mode, :not(.site-dark-mode)) #app .reference-movie .reference-actions button { min-height:40px; }

/* Credits fill the information column beside the poster. */
body #app .reference-movie .media-details-actions { display:flex;align-items:center;flex:1;min-width:0; }
body #app .reference-movie .media-details-copy { flex:1;min-width:0; }
body #app .reference-movie .credits-count { margin-left:4px;color:#8794a0;font-size:11px;white-space:nowrap; }
body.site-dark-mode #app .reference-movie .credits-count { color:#8493a0; }

/* Keep the media type beside the title at every card width. */
body #app .reference-movie .compact-heading { align-items:flex-start; }
body #app .reference-movie .compact-title { flex:1 1 auto;min-width:0; }
body #app .reference-movie .compact-category {
 flex:0 0 auto;align-self:flex-start;margin-top:2px;padding:2px 6px;
 border:1px solid #dbe4ed;border-radius:4px;background:#f1f4f7;color:#687582;
 font-size:11px;font-weight:500;line-height:1.4;white-space:nowrap;
}
body.site-dark-mode #app .reference-movie .compact-category {
 border-color:#ffffff12;background:#ffffff08;color:#a4aeb9;
}
@media(max-width:420px) {
 body #app .reference-movie .compact-category { margin-top:1px;padding:2px 5px;font-size:10px; }
}

/* Keep resume state on the poster. */
body #app .reference-movie .compact-poster .poster-progress-label,
body #app .reference-movie .compact-poster .poster-complete-label {
  position:absolute;right:6px;bottom:10px;z-index:1;display:grid;place-items:center;
  min-width:29px;max-width:calc(100% - 8px);height:20px;padding:0 4px;border-radius:3px;
  background:#FF5722;color:#fff;font-size:11px;line-height:1;
  font-variant-numeric:tabular-nums;white-space:nowrap;
}
body #app .reference-movie .compact-poster .poster-complete-label { width:20px;min-width:20px;padding:0; }
body #app .reference-movie .compact-poster .poster-complete-label svg { width:14px;height:14px;stroke-width:2.5; }
body #app .reference-movie .compact-poster .poster-progress-track {
  position:absolute;right:0;bottom:0;left:0;height:4px;background:#e3e9e8e8;pointer-events:none;
}
body #app .reference-movie .compact-poster .poster-progress-track > span { display:block;height:100%;background:#FF5722;transition:width .35s ease; }
body.site-dark-mode #app .reference-movie .compact-poster .poster-progress-track { background:#36494a; }
@media(max-width:420px) {
  body #app .reference-movie .compact-poster .poster-progress-label { right:4px;padding:0 3px;font-size:10px; }
}
body #app .reference-movie .reference-actions { margin-top:10px;border-top:1px solid #edf1f2; }
body.site-dark-mode #app .reference-movie .reference-actions { border-color:#ffffff12; }
@media(max-width:420px) {
  body #app .reference-movie .reference-actions { margin-top:8px; }
}
@media(prefers-reduced-motion:reduce) {
  body #app .reference-movie .poster-progress-track > span { transition:none; }
}
/* Preserve player behavior and hooks; flatten the surrounding information panels. */
body .site-player-overlay .site-player-shell {
 --player-paper:#f8fafb;--player-ink:#26343d;--player-muted:#60717e;--player-line:#e2e8ec;--player-accent:#087e65;--player-soft:#e6f5ef;
 background:var(--player-paper) !important;color:var(--player-ink);border-radius:22px 22px 0 0;box-shadow:0 -12px 48px rgba(22,37,46,.18);
}
body.site-dark-mode .site-player-overlay .site-player-shell,body .site-player-overlay .site-player-shell.is-dark {
 --player-paper:#192128;--player-ink:#e7edf1;--player-muted:#a6b4be;--player-line:#35414a;--player-accent:#79dcbf;--player-soft:#243d35;
}
body .site-player-overlay .site-player-shell::before,body .site-player-overlay .site-player-shell .site-player-section::before,body .site-player-overlay .site-player-shell .site-player-action-bar::before { display:none !important; }
body .site-player-overlay .site-player-shell .site-player-video { aspect-ratio:16/9;background:#101820;border-radius:21px 21px 0 0; }
/* The media stage scrolls with the player details instead of sticking to the viewport. */
body .site-player-overlay .site-player-shell .site-player-video {
 position:relative;
 top:auto;
 z-index:auto;
 isolation:isolate;
}
body .site-player-overlay .site-player-shell .site-player-header { padding:16px;background:linear-gradient(rgba(10,18,24,.62),transparent) !important;backdrop-filter:none !important; }
body .site-player-overlay .site-player-shell .site-player-title { font-size:17px;font-weight:650;letter-spacing:0; }
body .site-player-overlay .site-player-shell .site-player-header button { min-width:40px;min-height:40px;box-shadow:none;background:rgba(21,31,40,.66);border:1px solid rgba(255,255,255,.16); }
body .site-player-overlay .site-player-shell .site-player-play-main { width:64px;height:64px;border:1px solid rgba(255,255,255,.5) !important;background:transparent !important;box-shadow:0 7px 22px rgba(0,0,0,.2) !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important; }
body .site-player-overlay .site-player-shell .site-player-play-main::before,body .site-player-overlay .site-player-shell .site-player-play-main::after { display:none !important; }
body .site-player-overlay .site-player-shell .site-player-history-notice { margin:16px 20px 0 !important;padding:10px 12px !important;background:var(--player-soft) !important;color:var(--player-accent) !important;border:0 !important;border-radius:8px !important;font-size:12px;line-height:1.6;box-shadow:none !important; }
body .site-player-overlay .site-player-shell .site-player-action-bar { margin:0 20px !important;padding:14px 0 !important;background:transparent !important;border:0 !important;border-bottom:1px solid var(--player-line) !important;border-radius:0 !important;box-shadow:none !important;gap:12px; }
body .site-player-overlay .site-player-shell .site-player-now-playing { min-width:0;color:var(--player-ink) !important;font-size:13px;gap:8px; }
body .site-player-overlay .site-player-shell [data-player-now-label] { white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
body .site-player-overlay .site-player-shell .site-player-now-icon { width:26px;height:26px;border-radius:7px;background:var(--player-soft) !important;color:var(--player-accent) !important;box-shadow:none; }
body .site-player-overlay .site-player-shell .site-player-divider { display:none; }
body .site-player-overlay .site-player-shell .site-player-section { margin:0 20px !important;padding:22px 0 !important;background:transparent !important;border:0 !important;border-bottom:1px solid var(--player-line) !important;border-radius:0 !important;box-shadow:none !important; }
body .site-player-overlay .site-player-shell .site-player-section:last-child { border-bottom:0 !important; }
body .site-player-overlay .site-player-shell .site-player-info { gap:16px;align-items:start; }
body .site-player-overlay .site-player-shell .site-player-poster-wrap { width:88px;flex:0 0 88px;border-radius:10px;overflow:hidden; }
body .site-player-overlay .site-player-shell .site-player-poster { width:100%;height:132px;object-fit:cover;border-radius:10px; }
body .site-player-overlay .site-player-shell .site-player-info-main { min-width:0;gap:10px; }
body .site-player-overlay .site-player-shell .site-player-info-main h2 { color:var(--player-ink) !important;font-size:22px;line-height:1.3;letter-spacing:-.4px;margin:0 0 9px; }
body .site-player-overlay .site-player-shell .site-player-tags { gap:6px; }
body .site-player-overlay .site-player-shell .site-player-tags span { background:transparent !important;color:var(--player-muted) !important;border:1px solid var(--player-line) !important;border-radius:5px;padding:3px 7px;font-size:11px;box-shadow:none; }
body .site-player-overlay .site-player-shell .site-player-details { color:var(--player-muted) !important;font-size:12px;line-height:1.8; }
body .site-player-overlay .site-player-shell .site-player-details strong { color:var(--player-ink) !important; }
body .site-player-overlay .site-player-shell .site-player-intro { color:var(--player-accent) !important;font-size:12px;min-height:32px;font-weight:600; }
body .site-player-overlay .site-player-shell .site-player-section-title { margin-bottom:14px; }
body .site-player-overlay .site-player-shell .site-player-section-title h3 { color:var(--player-ink) !important;font-size:16px;font-weight:650; }
body .site-player-overlay .site-player-shell .site-player-section-title span { color:var(--player-muted) !important;font-size:11px; }
body .site-player-overlay .site-player-shell :is(.site-player-sort-button,.site-player-episode-button) { color:var(--player-muted) !important;background:transparent !important;border:1px solid var(--player-line) !important;border-radius:8px;box-shadow:none;min-height:34px; }
body .site-player-overlay .site-player-shell .site-player-episodes { grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px; }
body .site-player-overlay .site-player-shell .site-player-episodes button { min-height:44px;padding:10px 8px;border:1px solid var(--player-line) !important;border-radius:8px;background:transparent !important;color:var(--player-ink) !important;box-shadow:none !important;font-size:13px; }
body .site-player-overlay .site-player-shell:has([data-player-sort]) .site-player-episodes { grid-template-columns:repeat(auto-fill,minmax(min(100%,140px),1fr)); }
body .site-player-overlay .site-player-shell:has([data-player-sort]) .site-player-episodes button { height:auto;line-height:1.4;overflow-wrap:anywhere;white-space:normal; }
body .site-player-overlay .site-player-shell .site-player-episodes button.active,body .site-player-overlay .site-player-shell .site-player-sort-button.active { color:var(--player-accent) !important;background:var(--player-soft) !important;border-color:var(--player-accent) !important;font-weight:650; }
body .site-player-overlay .site-player-shell .site-player-episodes button.active::after { display:none; }
body .site-player-overlay .site-player-shell .site-player-recommendations { grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 12px; }
body .site-player-overlay .site-player-shell .site-player-recommendation { padding:0;background:transparent !important;border:0;border-radius:0;box-shadow:none; }
body .site-player-overlay .site-player-shell .site-player-recommendation-cover { border-radius:10px;aspect-ratio:2/3;box-shadow:0 3px 10px rgba(24,41,52,.09); }
body .site-player-overlay .site-player-shell .site-player-recommendation-title { color:var(--player-ink) !important;font-size:12px;font-weight:600;line-height:1.5;margin:8px 0 0; }
body .site-player-overlay .site-player-shell button:focus-visible { outline:2px solid var(--player-accent);outline-offset:3px; }
@media(max-width:600px) {
 body .site-player-overlay .site-player-shell .site-player-header { padding:10px;gap:8px; }
 body .site-player-overlay .site-player-shell .site-player-title { font-size:14px; }
 body .site-player-overlay .site-player-shell .site-player-header-actions { gap:5px; }
 body .site-player-overlay .site-player-shell .site-player-header button { min-width:34px;min-height:34px; }
 body .site-player-overlay .site-player-shell .site-player-history-notice { margin:12px 14px 0 !important; }
 body .site-player-overlay .site-player-shell .site-player-action-bar { margin:0 14px !important; }
 body .site-player-overlay .site-player-shell .site-player-section { margin:0 14px !important;padding:18px 0 !important; }
 body .site-player-overlay .site-player-shell .site-player-info { gap:12px; }
 body .site-player-overlay .site-player-shell .site-player-poster-wrap { width:70px;flex-basis:70px; }
 body .site-player-overlay .site-player-shell .site-player-poster { height:105px; }
 body .site-player-overlay .site-player-shell .site-player-info-main h2 { font-size:18px; }
 body .site-player-overlay .site-player-shell .site-player-details { font-size:11px;line-height:1.7; }
 body .site-player-overlay .site-player-shell .site-player-recommendations { gap:14px 10px; }
 body .site-player-overlay .site-player-shell .site-player-video { aspect-ratio:16/13;}
}
@media(prefers-reduced-motion:reduce) { body .site-player-overlay .site-player-shell * { animation:none !important;transition:none !important; } }

body .site-player-overlay .site-player-shell .site-player-details { display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;white-space:normal;overflow:hidden; }
body .site-player-overlay .site-player-shell .site-player-header .site-player-theme-toggle { color:#fff !important; }
body .site-player-overlay .site-player-shell .site-player-video .site-player-video-ui { max-width:100%;box-sizing:border-box; }

/* Element Plus is themed only inside the management workspace. */
.admin-element-theme {
  --el-color-primary: #10b981;
  --el-color-primary-light-3: #58cea7;
  --el-color-primary-light-5: #88dcc0;
  --el-color-primary-light-7: #b7ead9;
  --el-color-primary-light-8: #cff1e6;
  --el-color-primary-light-9: #e7f8f2;
  --el-color-primary-dark-2: #059669;
  --el-text-color-primary: #1e293b;
  --el-text-color-regular: #334155;
  --el-text-color-secondary: #64748b;
  --el-border-color: #e2e8f0;
  --el-border-color-light: #f1f5f9;
  --el-border-color-lighter: #f1f5f9;
  --el-fill-color-blank: #fff;
  --el-bg-color: #fff;
  --el-bg-color-page: #f4f6f8;
  --el-bg-color-overlay: #fff;
  --el-border-radius-base: 12px;
  --el-border-radius-small: 10px;
  --el-font-size-base: 14px;
  --el-box-shadow-light: 0 8px 28px rgba(15,23,42,.045);
  color: var(--el-text-color-primary);
}
.admin-element-theme .admin-one-workspace { background: #f4f6f8; }
.admin-element-theme .el-main { min-width: 0; --el-main-padding: 0; }
.admin-element-theme .el-header { --el-header-padding: 0; height: auto; }
.admin-element-theme .el-card {
  --el-card-border-color: #f1f5f9;
  --el-card-border-radius: 24px;
  --el-card-padding: 20px;
  border: 1px solid var(--el-border-color-light);
  border-radius: 24px;
  background: var(--el-bg-color);
  box-shadow: 0 5px 24px rgba(15,23,42,.035);
  overflow: hidden;
  min-width: 0;
}
.admin-element-theme .el-card__body { min-width: 0; box-sizing: border-box; }
.admin-element-theme .el-button {
  border-radius: 12px;
  min-height: 40px;
  height: auto;
  font-weight: 600;
  white-space: normal;
  line-height: 1.4;
}
.admin-element-theme .el-button + .el-button { margin-left: 0; }
.admin-element-theme .el-button > span { min-width: 0; gap: 6px; }
.admin-element-theme .el-button svg { width: 18px; height: 18px; flex-shrink: 0; }
.admin-element-theme .el-button-group { display: flex; gap: 8px; }
.admin-element-theme .el-button-group > .el-button { border-radius: 12px; margin: 0; }
.admin-element-theme .el-tag { border-radius: 999px; font-weight: 700; }
.admin-element-theme .el-avatar { flex-shrink: 0; }
.admin-element-theme .el-input__wrapper,
.admin-element-theme .el-select__wrapper {
  min-height: 40px;
  border-radius: 12px;
  background: var(--el-fill-color-blank);
}
.admin-element-theme .el-input { min-width: 0; }
.admin-element-theme .el-input__inner { font-size: 14px; }
.admin-element-theme .admin-console-search.el-input { width: 100%; padding: 0; border: 0; background: transparent; }
.admin-element-theme .admin-console-search .el-input { flex: 1; min-width: 0; }
.admin-element-theme .el-menu {
  --el-menu-bg-color: transparent;
  --el-menu-active-color: #047857;
  --el-menu-hover-bg-color: #ecfdf5;
  border-right: 0;
  min-width: 0;
}
.admin-element-theme .el-menu-item {
  border-radius: 14px;
  margin-block: 4px;
  height: 48px;
  line-height: 48px;
  gap: 10px;
  color: #64748b;
}
.admin-element-theme .el-menu-item.is-active { background: #ecfdf5; color: #047857; font-weight: 700; }
.admin-element-theme .el-menu-item::after { display: none; }
.admin-element-theme .admin-user-card .el-card__body,
.admin-element-theme .admin-post-card .el-card__body { height: 100%; display: flex; flex-direction: column; }
.admin-element-theme .admin-user-actions,
.admin-element-theme .admin-post-actions { margin-top: auto; padding-top: 16px; }
.admin-element-theme .admin-user-card-header > .el-avatar { flex: 0 0 56px; }
.admin-element-theme .admin-user-card-header .el-avatar img { width: 100%; height: 100%; object-fit: cover; }
.admin-element-theme .admin-stat-card strong { font-size: clamp(26px, 3vw, 36px); font-weight: 800; letter-spacing: -.03em; }
.admin-element-theme .el-select__popper { --el-bg-color-overlay: var(--el-bg-color); border-radius: 12px; }
body.site-dark-mode .admin-element-theme {
  --el-color-primary: #34d399;
  --el-color-primary-light-3: #2da985;
  --el-color-primary-light-5: #246f5c;
  --el-color-primary-light-7: #204f44;
  --el-color-primary-light-8: #183e36;
  --el-color-primary-light-9: #13332c;
  --el-color-primary-dark-2: #6ee7b7;
  --el-text-color-primary: #f1f5f9;
  --el-text-color-regular: #cbd5e1;
  --el-text-color-secondary: #94a3b8;
  --el-border-color: #334155;
  --el-border-color-light: #293548;
  --el-border-color-lighter: #293548;
  --el-fill-color-blank: #192332;
  --el-fill-color-light: #223043;
  --el-bg-color: #182231;
  --el-bg-color-page: #101822;
  --el-bg-color-overlay: #182231;
}
body.site-dark-mode .admin-element-theme .admin-one-workspace { background: var(--el-bg-color-page); }
body.site-dark-mode .admin-element-theme .el-card { background: var(--el-bg-color); border-color: var(--el-border-color-light); }
body.site-dark-mode .admin-element-theme .el-menu { --el-menu-hover-bg-color: #13332c; --el-menu-active-color: #6ee7b7; }
body.site-dark-mode .admin-element-theme .el-menu-item { color: #cbd5e1; }
body.site-dark-mode .admin-element-theme .el-menu-item.is-active { background: #13332c; color: #6ee7b7; }
@media (max-width: 767px) {
  .admin-element-theme .el-card { --el-card-padding: 16px; border-radius: 24px; }
  .admin-element-theme .el-input__inner { font-size: 16px; }
  .admin-element-theme .el-button { min-height: 44px; }
  .admin-element-theme .el-container,
  .admin-element-theme .el-main { min-width: 0; max-width: 100%; }
}

/* Legacy controls used .active; Element Plus expresses selection by type. */
.admin-element-theme .admin-filter-bar :is(.admin-comment-status-tabs, .admin-user-filter-tabs, .admin-post-categories) .el-button--primary,
.admin-element-theme .admin-comment-status-tabs > .el-button--primary {
  color: #047857 !important;
  background: #ecfdf5 !important;
  border-color: #a7f3d0 !important;
  font-weight: 700;
}
body.site-dark-mode .admin-element-theme :is(.admin-comment-status-tabs, .admin-user-filter-tabs, .admin-post-categories) .el-button--primary {
  color: #6ee7b7 !important;
  background: #13332c !important;
  border-color: #246f5c !important;
}
.admin-element-theme .admin-one-workspace .admin-stat-card.el-card { padding: 0; border-radius: 24px; }
.admin-element-theme .admin-one-workspace .admin-stat-card > .el-card__body { display: block; padding: 20px; }
.admin-element-theme .admin-one-workspace .admin-stat-card .admin-stat-value { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; }
@media (max-width: 767px) {
  .admin-element-theme .admin-one-workspace .admin-stat-card > .el-card__body { padding: 16px; }
}

.admin-element-theme .admin-user-card .admin-user-actions { margin-left: 0; width: 100%; box-sizing: border-box; }
.admin-element-theme .admin-one-workspace .admin-profile-trigger { width: 40px; height: 40px; flex-basis: 40px; padding: 2px; display: flex; align-items: center; justify-content: center; }
.admin-element-theme .admin-one-workspace .admin-profile-trigger > span { margin: 0; gap: 0; }
.admin-element-theme .admin-filter-bar .admin-add-user-btn.el-button--primary { color: #fff; background: #10b981; border-color: #10b981; }
/* The supplied Serene layout occupies its own full-screen workspace. */
@layer theme {
  .serene-admin *, .serene-admin *::before, .serene-admin *::after { box-sizing: border-box; border-width: 0; border-style: solid; }
  .serene-admin :where(h1, h2, h3, h4, p) { margin: 0; font-size: inherit; font-weight: inherit; }
  .serene-admin :where(button, input, select) { font: inherit; color: inherit; background-color: transparent; }
  .serene-admin :where(img, svg) { display: block; vertical-align: middle; }
}
.serene-admin .serene-sync { color: #94a3b8; font-size: 11px; margin-top: 0; margin-bottom: 16px; }
.serene-admin.admin-panel-overlay {
  position: fixed; inset: 0; padding: 0; overflow: hidden; background: #f8fafc;
}
.serene-admin.admin-panel-overlay > .admin-panel-modal {
  width: 100% !important; max-width: none !important; height: 100dvh;
  max-height: 100dvh; min-height: 0; margin: 0; padding: 0; border: 0;
  border-radius: 0; display: flex; flex-direction: row; overflow: hidden;
  background: #f8fafc; color: #1e293b; box-shadow: none;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
}
.serene-admin .admin-panel-modal::before { display: none; }
.serene-admin .serene-workspace { flex: 1; min-width: 0; display: flex; flex-direction: column; height: 100%; overflow: hidden; }
.serene-admin .admin-console-main { flex: 1; min-height: 0; width: 100%; overflow-y: auto; padding: 32px; background: #f8fafc; }
.serene-admin .admin-console-main > * { max-width: 1400px; margin-left: auto; margin-right: auto; }
.serene-admin .admin-content { padding: 0; background: transparent; border: 0; box-shadow: none; }
.serene-admin .admin-user-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.serene-admin .admin-list-toolbar, .serene-admin .admin-filter-bar, .serene-admin .admin-bulk-toolbar { background: white; border: 1px solid #e2e8f0; border-radius: 20px; padding: 14px; margin-bottom: 20px; }
.serene-admin .admin-filter-summary { margin-bottom: 20px; }
.serene-admin .admin-list-toolbar, .serene-admin .admin-post-filter-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; }
.serene-admin :is(.admin-list-toolbar-actions, .admin-activity-filter-row, .admin-activity-filter-primary, .admin-activity-select-pair) { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.serene-admin .admin-select-field { display: flex; align-items: center; gap: 8px; font-size: 12px; color: #64748b; }
.serene-admin .serene-select { width: 140px; }
.serene-admin :is(.is-page-size, .admin-activity-page-select) .serene-select { width: 90px; }
.serene-admin .admin-panel-modal button { cursor: pointer; }
.serene-admin .admin-panel-modal button:disabled { cursor: not-allowed; opacity: .5; }
.serene-admin .admin-panel-modal input[type=checkbox] { accent-color: #10b981; }
.serene-admin .admin-panel-modal :focus-visible { outline: 2px solid #10b981; outline-offset: 3px; }
@media (max-width: 1023px) {
  .serene-admin .admin-user-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .serene-admin .admin-console-main { padding: 24px; }
}
@media (max-width: 767px) {
  .serene-admin .admin-user-card-grid { grid-template-columns: minmax(0, 1fr); }
  .serene-admin .admin-console-main { padding: 16px; }
}

.serene-admin .admin-user-card-grid > div { transition: transform .25s, box-shadow .25s, border-color .25s; }
.serene-admin .admin-user-card-grid > div:hover { transform: translateY(-4px); box-shadow: 0 12px 30px #0f172a0f, 0 0 0 3px #10b98108; border-color: #a7f3d0; }
.serene-admin .admin-console-main input:not([type=checkbox]):hover { border-color: #a7f3d0; }
@media(prefers-reduced-motion: reduce) { .serene-admin .admin-user-card-grid > div { transition: none; } .serene-admin .admin-user-card-grid > div:hover { transform: none; } }
/* User details: one scroll container between a stationary header and footer. */
.serene-admin .admin-user-detail-overlay {
  display: flex; align-items: center; justify-content: center; padding: 24px;
  background: rgba(15, 23, 42, .38); backdrop-filter: blur(6px);
}
.serene-admin .admin-user-detail-drawer {
  display: flex; flex-direction: column; width: min(720px, 100%);
  height: min(860px, calc(100dvh - 48px)); max-height: calc(100dvh - 48px);
  min-height: 0; padding: 0; overflow: hidden; border-radius: 28px;
  border: 1px solid #e2e8f0; background: #fff; backdrop-filter: none;
  box-shadow: 0 24px 80px rgba(15, 23, 42, .2); color: #334155;
}
.serene-admin .admin-user-detail-drawer::before { display: none; }
.serene-admin .admin-user-detail-header {
  flex: none; align-items: center; margin: 0; padding: 24px 28px;
  background: #fff; border-bottom: 1px solid #f1f5f9;
}
.serene-admin .admin-user-detail-header > div { gap: 14px; }
.serene-admin .admin-user-detail-header img {
  width: 56px; height: 56px; border: 3px solid #fff; box-shadow: 0 0 0 1px #e2e8f0;
}
.serene-admin .admin-user-detail-header .admin-overview-panel-kicker {
  font-size: 10px; font-weight: 700; letter-spacing: .12em; color: #94a3b8;
}
.serene-admin .admin-user-detail-header h3 {
  margin: 4px 0; font-size: 21px; font-weight: 700; letter-spacing: -.025em;
  color: #0f172a; overflow-wrap: anywhere;
}
.serene-admin .admin-user-detail-header small { font-size: 12px; color: #64748b; }
.serene-admin .admin-user-detail-header > button {
  width: 34px; height: 34px; border-radius: 50%; background: #f8fafc; color: #64748b;
}
.serene-admin .admin-user-detail-header > button:hover { background: #e2e8f0; }
.serene-admin .admin-user-detail-body {
  flex: 1 1 0; min-height: 0; max-height: none; overflow-y: auto; overflow-x: hidden;
  padding: 24px 28px; background: #f8fafc; overscroll-behavior: contain;
  scrollbar-width: thin; scrollbar-color: #cbd5e1 transparent; scrollbar-gutter: stable;
}
.serene-admin .admin-user-detail-stats {
  grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 0; margin-bottom: 20px;
}
.serene-admin .admin-user-detail-stats > div {
  padding: 18px; gap: 6px; background: #fff; border: 1px solid #e2e8f0;
  border-radius: 18px; box-shadow: 0 2px 8px rgba(15, 23, 42, .02);
}
.serene-admin .admin-user-detail-stats strong { font-size: 26px; line-height: 1.2; font-weight: 700; color: #0f172a; }
.serene-admin .admin-user-detail-stats > div:first-child { background: #ecfdf5; border-color: #d1fae5; }
.serene-admin .admin-user-detail-stats > div:first-child strong { color: #059669; }
.serene-admin .admin-user-detail-stats span { font-size: 12px; color: #64748b; }
.serene-admin .admin-user-detail-body .admin-detail-section {
  padding: 20px; margin: 0 0 16px; border: 1px solid #e2e8f0; border-radius: 18px;
  background: #fff; overflow: visible; max-height: none;
}
.serene-admin .admin-detail-section:last-child { margin-bottom: 0; }
.serene-admin .admin-detail-section > header { margin-bottom: 16px; }
.serene-admin .admin-detail-section h4 { font-size: 14px; font-weight: 700; color: #0f172a; }
.serene-admin .admin-detail-section-note { font-size: 11px; color: #94a3b8; }
.serene-admin .admin-user-detail-grid { gap: 16px 24px; }
.serene-admin .admin-user-detail-grid > div { padding: 0; background: transparent; border: 0; }
.serene-admin .admin-user-detail-grid dt { font-size: 11px; color: #94a3b8; }
.serene-admin .admin-user-detail-grid dd { margin-top: 6px; font-size: 13px; line-height: 1.6; color: #334155; white-space: normal; }
.serene-admin .admin-detail-activity { gap: 12px; }
.serene-admin .admin-detail-activity p {
  display: flex; align-items: flex-start; gap: 10px; font-size: 13px; line-height: 1.7;
  color: #475569; white-space: normal; overflow: visible; overflow-wrap: anywhere;
}
.serene-admin .admin-detail-activity p svg { margin-top: 3px; color: #94a3b8; }
.serene-admin .admin-user-detail-body .admin-detail-list {
  display: grid; max-height: none; height: auto; overflow: visible; margin: 0; padding: 0;
}
.serene-admin .admin-detail-list li { padding: 13px 0; border-color: #f1f5f9; overflow: visible; }
.serene-admin .admin-detail-list li:first-child { padding-top: 0; }
.serene-admin .admin-detail-list li:last-child { padding-bottom: 0; }
.serene-admin .admin-detail-list li > span { width: 100%; gap: 6px; }
.serene-admin .admin-detail-list strong {
  color: #334155; font-size: 13px; font-weight: 600; line-height: 1.65;
  white-space: normal; overflow-wrap: anywhere; overflow: visible;
}
.serene-admin .admin-detail-list small {
  color: #94a3b8; font-size: 11px; line-height: 1.6; white-space: normal; overflow-wrap: anywhere;
}
.serene-admin .admin-user-detail-drawer .admin-panel-link {
  display: inline-flex; align-items: center; gap: 4px; padding: 0;
  background: transparent; color: #059669; font-size: 12px; font-weight: 600;
}
.serene-admin .admin-user-detail-drawer .admin-panel-link svg { width: 14px; height: 14px; }
.serene-admin .admin-user-detail-actions {
  position: static; flex: none; margin: 0; padding: 16px 28px; gap: 12px;
  background: #fff; border-top: 1px solid #f1f5f9;
}
.serene-admin .admin-user-detail-actions > button { min-height: 42px; font-size: 13px; font-weight: 600; border-radius: 12px; }
.serene-admin .admin-user-detail-actions .admin-user-role { color: #059669; background: #ecfdf5; border: 1px solid #d1fae5; }
.serene-admin .admin-user-detail-actions .admin-user-delete { color: #e11d48; background: #fff; border: 1px solid #ffe4e6; }
.serene-admin .admin-user-detail-actions .admin-user-delete:hover:not(:disabled) { background: #fff1f2; }
@media (max-width: 600px) {
  .serene-admin .admin-user-detail-overlay { align-items: flex-end; padding: 0; }
  .serene-admin .admin-user-detail-drawer {
    width: 100%; height: calc(100dvh - 16px); max-height: calc(100dvh - 16px);
    border-radius: 24px 24px 0 0; border-bottom: 0;
  }
  .serene-admin .admin-user-detail-header { padding: 20px; }
  .serene-admin .admin-user-detail-body { padding: 18px 16px; }
  .serene-admin .admin-user-detail-stats { gap: 8px; }
  .serene-admin .admin-user-detail-stats > div { padding: 14px 10px; border-radius: 14px; }
  .serene-admin .admin-user-detail-stats strong { font-size: 23px; }
  .serene-admin .admin-user-detail-body .admin-detail-section { padding: 16px; }
  .serene-admin .admin-user-detail-grid { gap: 16px 12px; }
  .serene-admin .admin-user-detail-actions { padding: 14px 16px max(14px, env(safe-area-inset-bottom)); }
}
/* Explicit scope keeps the public site's dark theme out of this workspace. */
.serene-admin .admin-add-overlay { align-items: center; padding: 24px; background: #0f172a61; backdrop-filter: blur(6px); }
.serene-admin .admin-add-modal.serene-add-user {
  width: min(540px, 100%); height: auto; max-height: calc(100dvh - 48px);
  gap: 0; padding: 0; margin: 0; border: 1px solid #e2e8f0; border-radius: 24px;
  background: #fff; color: #334155; backdrop-filter: none;
  box-shadow: 0 24px 80px #0f172a33; color-scheme: light;
}
.serene-admin .admin-add-modal.serene-add-user::before { display: none; }
.serene-admin .admin-add-modal.serene-add-user > header { align-items: center; padding: 24px; background: #fff; border-bottom: 1px solid #f1f5f9; }
.serene-admin .admin-add-modal.serene-add-user > header > div { gap: 12px; }
.serene-admin .admin-add-modal.serene-add-user > header > div > span { width: 42px; height: 42px; border-radius: 14px; background: #ecfdf5; color: #059669; }
.serene-admin .admin-add-modal.serene-add-user > header h3 { margin: 0 0 5px; color: #0f172a; font-size: 17px; font-weight: 700; }
.serene-admin .admin-add-modal.serene-add-user > header p { margin: 0; color: #94a3b8; font-size: 12px; }
.serene-admin .admin-add-modal.serene-add-user > header > button { display: grid; place-items: center; width: 34px; height: 34px; padding: 0; border: 0; border-radius: 50%; color: #64748b; background: #f8fafc; }
.serene-admin .admin-add-modal.serene-add-user > header > button svg { width: 18px; height: 18px; }
.serene-admin .admin-add-modal.serene-add-user .admin-add-body { flex: 0 1 auto; padding: 24px; gap: 22px; scrollbar-width: thin; background: #fff; }
.serene-admin .admin-add-modal.serene-add-user .admin-add-body > label { display: grid; gap: 9px; font-size: 13px; font-weight: 500; color: #475569; }
.serene-admin .admin-add-modal.serene-add-user .admin-add-body > label > span { display: flex; align-items: center; gap: 5px; }
.serene-admin .admin-add-modal.serene-add-user .admin-add-body em { font-style: normal; color: #f43f5e; }
.serene-admin .admin-add-modal.serene-add-user .admin-add-body > label input {
  height: 46px; padding: 12px 14px; border: 1px solid #e2e8f0; border-radius: 12px;
  background: #f8fafc; color: #334155; font: inherit; font-size: 14px; font-weight: 400;
  transition: border-color .2s, box-shadow .2s, background .2s;
}
.serene-admin .admin-add-modal.serene-add-user .admin-add-body > label input::placeholder { font-weight: 400; color: #94a3b8; }
.serene-admin .admin-add-modal.serene-add-user .admin-add-body > label input:hover { border-color: #a7f3d0; }
.serene-admin .admin-add-modal.serene-add-user .admin-add-body > label input:focus { outline: none; background: #fff; border-color: #6ee7b7; box-shadow: 0 0 0 3px #ecfdf5; }
.serene-admin .admin-add-modal.serene-add-user fieldset { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.serene-admin .admin-add-modal.serene-add-user legend { margin-bottom: 10px; font-size: 13px; font-weight: 500; color: #475569; }
.serene-admin .admin-add-modal.serene-add-user fieldset label { position: relative; justify-content: flex-start; gap: 10px; padding: 16px 12px; background: #fff; border: 1px solid #e2e8f0; border-radius: 14px; color: #475569; transition: border-color .2s, background .2s, box-shadow .2s; }
.serene-admin .admin-add-modal.serene-add-user fieldset label.active { background: #ecfdf5; border-color: #6ee7b7; color: #047857; }
.serene-admin .admin-add-modal.serene-add-user fieldset label:hover { border-color: #6ee7b7; }
.serene-admin .admin-add-modal.serene-add-user fieldset input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; }
.serene-admin .admin-add-modal.serene-add-user .add-role-indicator { display: grid; place-items: center; width: 18px; height: 18px; flex: 0 0 18px; border: 2px solid #cbd5e1; border-radius: 50%; box-sizing: border-box; background: #fff; }
.serene-admin .admin-add-modal.serene-add-user .add-role-indicator::after { content: ''; width: 8px; height: 8px; border-radius: 50%; background: #10b981; transform: scale(.3); opacity: 0; transition: transform .2s, opacity .2s; }
.serene-admin .admin-add-modal.serene-add-user input:checked + .add-role-indicator { border-color: #10b981; }
.serene-admin .admin-add-modal.serene-add-user input:checked + .add-role-indicator::after { opacity: 1; transform: scale(1); }
.serene-admin .admin-add-modal.serene-add-user input:focus-visible + .add-role-indicator { outline: 2px solid #10b981; outline-offset: 3px; }
.serene-admin .admin-add-modal.serene-add-user .add-role-copy { display: grid; gap: 5px; min-width: 0; }
.serene-admin .admin-add-modal.serene-add-user .add-role-copy strong { display: flex; gap: 5px; align-items: center; font-size: 13px; font-weight: 600; }
.serene-admin .admin-add-modal.serene-add-user .add-role-copy small { color: #94a3b8; font-size: 10px; line-height: 1.5; }
.serene-admin .admin-add-modal.serene-add-user > footer { justify-content: flex-end; padding: 16px 24px; gap: 10px; background: #f8fafc; border-top: 1px solid #f1f5f9; }
.serene-admin .admin-add-modal.serene-add-user > footer button { flex: none; min-height: 42px; padding: 10px 24px; border: 1px solid #e2e8f0; border-radius: 12px; font-size: 13px; font-weight: 600; color: #64748b; background: #fff; }
.serene-admin .admin-add-modal.serene-add-user > footer button[type=submit] { color: #fff; background: #10b981; border-color: #10b981; box-shadow: 0 3px 8px #10b98126; }
.serene-admin .admin-add-modal.serene-add-user > footer button[type=submit]:hover:not(:disabled) { background: #059669; }
.serene-admin .admin-add-modal.serene-add-user fieldset:disabled label { opacity: .5; cursor: not-allowed; }
@media (max-width: 600px) {
  .serene-admin .admin-add-overlay { align-items: flex-end; padding: 0; }
  .serene-admin .admin-add-modal.serene-add-user { max-height: calc(100dvh - 16px); border-radius: 24px 24px 0 0; }
  .serene-admin .admin-add-modal.serene-add-user > header, .serene-admin .admin-add-modal.serene-add-user .admin-add-body { padding: 20px; }
  .serene-admin .admin-add-modal.serene-add-user .admin-add-body > label input { font-size: 16px; }
  .serene-admin .admin-add-modal.serene-add-user > footer { padding: 16px 20px max(16px, env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) { .serene-admin .admin-add-modal.serene-add-user *, .serene-admin .admin-add-modal.serene-add-user *::after { transition: none; } }

.serene-admin .serene-sync { line-height: 1.7; overflow-wrap: anywhere; }
.serene-admin .admin-filter-summary { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; min-width: 0; }
.serene-admin .admin-filter-summary > span:first-child { white-space: nowrap; }
.serene-admin .admin-filter-summary > span:not(:first-child) { overflow-wrap: anywhere; }
.serene-admin .admin-filter-summary > button { margin-left: auto; white-space: nowrap; min-height: 42px; }
.serene-admin .serene-mobile-search { display: grid; gap: 14px; padding: 20px; margin-bottom: 20px; background: #fff; border: 1px solid #e2e8f0; border-radius: 24px; box-shadow: 0 4px 20px #0f172a08; }
.serene-admin .serene-mobile-search .el-input__wrapper { min-height: 48px; padding: 0 14px; border-radius: 14px; background: #f8fafc; box-shadow: 0 0 0 1px #e2e8f0 inset; }
.serene-admin .serene-mobile-search .el-input__inner { min-width: 0; padding: 0; font-size: 14px; color: #334155; background: transparent; border: 0; }
.serene-admin .serene-mobile-search .el-input__prefix svg { width: 18px; height: 18px; }
.serene-admin .serene-mobile-search .serene-select { width: 100%; }
.serene-admin .serene-mobile-search .serene-select-trigger { min-height: 48px; background: #fff; box-shadow: 0 2px 4px #0f172a0a; }
.serene-mobile-search-actions { display: flex; gap: 12px; min-width: 0; }
.serene-admin .serene-mobile-search-actions > .el-button { flex: 1; min-height: 46px; margin: 0; border-radius: 14px; font-size: 14px; font-weight: 600; }
.serene-admin .serene-mobile-add { display: grid; place-items: center; flex: 0 0 54px; min-height: 46px; border: 1px solid #e2e8f0; border-radius: 14px; color: #475569; background: #fff; box-shadow: 0 2px 5px #0f172a0a; }
.serene-mobile-add svg { width: 19px; height: 19px; }
.serene-admin .serene-review-tabs { display: flex; gap: 4px; padding: 6px; margin-bottom: 20px; max-width: 100%; overflow-x: auto; scrollbar-width: none; border: 1px solid #e2e8f0; border-radius: 20px; background: #fff; box-shadow: 0 4px 20px #0f172a05; }
.serene-review-tabs::-webkit-scrollbar, .serene-admin :is(.admin-user-filter-tabs,.admin-post-categories)::-webkit-scrollbar { display: none; }
.serene-admin .serene-review-tabs button { flex: 1 0 auto; display: flex; align-items: center; justify-content: center; gap: 8px; padding: 12px 16px; min-height: 44px; white-space: nowrap; border: 1px solid transparent; border-radius: 14px; color: #64748b; background: transparent; font-size: 13px; font-weight: 600; }
.serene-admin .serene-review-tabs button:hover { background: #f8fafc; }
.serene-admin .serene-review-tabs button[aria-pressed=true] { color: #047857; background: #ecfdf5; border-color: #d1fae5; box-shadow: 0 2px 8px #10b9810f; }
.serene-review-tabs button span { padding: 2px 8px; border-radius: 8px; background: #f1f5f9; color: #94a3b8; font-size: 11px; font-weight: 700; }
.serene-review-tabs button[aria-pressed=true] span { background: #fff; color: #059669; box-shadow: 0 1px 3px #0f172a08; }
.serene-admin .serene-bulk-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; padding: 14px 20px; margin-bottom: 20px; border: 1px solid #e2e8f0; border-radius: 20px; background: #fff; box-shadow: 0 4px 20px #0f172a06; }
.serene-bulk-info { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; font-size: 13px; color: #94a3b8; }
.serene-bulk-info label { display: inline-flex; align-items: center; gap: 10px; color: #475569; font-weight: 600; white-space: nowrap; cursor: pointer; }
.serene-bulk-info > span { white-space: nowrap; }
.serene-bulk-info b { color: #334155; }
.serene-bulk-actions { display: flex; gap: 8px; padding-left: 20px; border-left: 1px solid #e2e8f0; }
.serene-admin :is(.serene-bulk-actions,.serene-review-actions) button { display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-height: 40px; padding: 9px 18px; border: 1px solid #e2e8f0; border-radius: 12px; background: #f8fafc; color: #64748b; font-size: 13px; font-weight: 600; white-space: nowrap; }
.serene-admin :is(.serene-bulk-actions,.serene-review-actions) .is-approve { color: #059669; background: #ecfdf5; border-color: #d1fae5; }
.serene-admin :is(.serene-bulk-actions,.serene-review-actions) .is-reject { color: #d97706; background: #fffbeb; border-color: #fef3c7; }
.serene-admin .serene-bulk-actions .is-delete { color: #e11d48; background: #fff1f2; border-color: #ffe4e6; }
.serene-admin :is(.serene-bulk-actions,.serene-review-actions) button:disabled { color: #94a3b8; background: #f8fafc; border-color: transparent; opacity: 1; cursor: not-allowed; box-shadow: none; }
.serene-admin :is(.serene-bulk-actions,.serene-review-actions) button:hover:not(:disabled) { box-shadow: 0 3px 8px #0f172a0a; filter: brightness(.98); }
.serene-admin .serene-review-list { border: 1px solid #e2e8f0; border-radius: 24px; overflow: hidden; background: #fff; box-shadow: 0 4px 20px #0f172a08; }
.serene-review-row { display: grid; grid-template-columns: 20px 44px minmax(0,1fr); align-items: start; gap: 18px; padding: 24px; border-bottom: 1px solid #f1f5f9; transition: background .2s; }
.serene-review-row:last-child { border-bottom: 0; }
.serene-review-row:hover { background: #f8fafc; }
.serene-review-row.is-selected { background: #ecfdf54d; }
.serene-review-row > .serene-checkbox { margin-top: 10px; }
.serene-review-avatar { width: 44px; height: 44px; object-fit: cover; border: 1px solid #f1f5f9; border-radius: 14px; }
.serene-review-main { min-width: 0; }
.serene-review-main header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; margin-bottom: 10px; }
.serene-review-author { display: flex; align-items: center; gap: 6px; min-width: 0; }
.serene-review-author strong { font-size: 15px; font-weight: 700; color: #0f172a; overflow-wrap: anywhere; }
.serene-review-author svg { width: 16px; height: 16px; color: #d97706; flex-shrink: 0; }
.serene-review-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.serene-review-meta time { font-size: 11px; line-height: 1.6; color: #94a3b8; white-space: nowrap; }
.serene-review-status { padding: 4px 8px; border: 1px solid #e2e8f0; border-radius: 8px; font-size: 11px; font-weight: 600; white-space: nowrap; color: #64748b; background: #f8fafc; }
.serene-review-status.is-approved { color: #059669; background: #ecfdf5; border-color: #d1fae5; }
.serene-review-status:is(.is-pending,.is-risk) { color: #d97706; background: #fffbeb; border-color: #fef3c7; }
.serene-review-status.is-rejected { color: #e11d48; background: #fff1f2; border-color: #ffe4e6; }
.serene-review-main > p { margin: 0; color: #475569; font-size: 14px; line-height: 1.85; overflow-wrap: anywhere; word-break: break-word; white-space: pre-wrap; }
.serene-review-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.serene-review-actions svg { width: 15px; height: 15px; }
.serene-notification-dot { position: absolute; top: 9px; right: 9px; width: 7px; height: 7px; border: 2px solid white; border-radius: 50%; background: #f43f5e; }
.serene-review-meta time span + span::before { content: ' '; }
.serene-comment-summary { margin-bottom: 20px; }
.serene-comment-summary > div { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; color: #64748b; font-size: 14px; line-height: 24px; }
.serene-comment-summary i { color: #cbd5e1; font-style: normal; }
.serene-comment-summary strong { font-weight: 500; color: #0f172a; white-space: nowrap; }
.serene-comment-sync { display: inline-flex; align-items: center; gap: 5px; color: #94a3b8; }
.serene-comment-sync svg { flex-shrink: 0; }
.serene-admin .serene-comment-summary > button { display: block; width: 100%; min-height: 46px; margin-top: 20px; border: 1px solid #d1fae5; border-radius: 16px; background: #ecfdf5; color: #059669; font-size: 16px; font-weight: 600; box-shadow: 0 2px 4px #0f172a12; }
@media(max-width: 767px) {
 .serene-admin.is-comment-workspace .serene-workspace > header { height: 84px; padding-left: 20px; padding-right: 20px; padding-bottom: 14px; box-sizing: border-box; }
 .serene-admin.is-comment-workspace .serene-workspace > header button[aria-label="打开评论审核"], .serene-admin.is-comment-workspace .serene-workspace > header button[aria-label="刷新数据"] { width: 48px; height: 48px; display: grid; place-items: center; }
 .serene-admin.is-comment-workspace .serene-workspace > header button svg { width: 22px; height: 22px; }
 .serene-admin.is-comment-workspace .serene-workspace > header button[aria-label="管理员菜单"] { padding: 0; }
 .serene-admin.is-comment-workspace .serene-workspace > header button[aria-label="管理员菜单"] img { width: 44px; height: 44px; }
 .serene-admin.is-comment-workspace .admin-console-main { padding: 20px; scrollbar-width: thin; scrollbar-color: #cbd5e1 transparent; }
 .serene-admin.is-comment-workspace .serene-workspace > header > div:last-child { gap: 24px; }
 .serene-admin.is-comment-workspace .serene-workspace > header > div:last-child > .flex.items-center.gap-2 { gap: 12px; }
 .serene-admin.is-comment-workspace .serene-workspace > header button[aria-label="打开导航"] { margin-left: -4px; }
 .serene-admin.is-comment-workspace .serene-review-tabs { height: 74px; box-sizing: border-box; padding: 7px 8px; gap: 6px; border-radius: 26px; margin-bottom: 20px; }
 .serene-admin.is-comment-workspace .serene-review-tabs button { min-width: 112px; padding: 12px 18px; font-size: 17px; gap: 10px; border-radius: 20px; }
 .serene-admin.is-comment-workspace .serene-review-tabs button span { font-size: 14px; padding: 3px 9px; }
 .serene-admin.is-comment-workspace .serene-review-tabs button:focus-visible { outline: 2px solid #171717; outline-offset: -2px; }
 .serene-admin.is-comment-workspace .serene-bulk-toolbar { padding: 16px 20px; gap: 20px; border-radius: 28px; margin-bottom: 20px; }
 .serene-admin.is-comment-workspace .serene-bulk-info { font-size: 16px; line-height: 24px; }
 .serene-admin.is-comment-workspace .serene-bulk-info label { color: #0f172a; }
 .serene-admin.is-comment-workspace .serene-bulk-actions { gap: 10px; }
 .serene-admin.is-comment-workspace .serene-bulk-actions button { min-height: 46px; border-radius: 16px; font-size: 16px; }
 .serene-admin.is-comment-workspace .serene-review-list { border-radius: 30px; }
 .serene-admin.is-comment-workspace .serene-review-row { grid-template-columns: 24px 54px minmax(0,1fr); padding: 26px; column-gap: 20px; row-gap: 0; }
 .serene-admin.is-comment-workspace .serene-review-avatar { width: 54px; height: 54px; border-radius: 18px; box-shadow: 0 2px 5px #0f172a14; }
 .serene-admin.is-comment-workspace .serene-review-row > .serene-checkbox { margin-top: 7px; }
 .serene-admin.is-comment-workspace .serene-review-main { display: block; grid-column: 3; grid-row: 1; }
 .serene-admin.is-comment-workspace .serene-review-main header { display: block; margin-bottom: 12px; }
 .serene-admin.is-comment-workspace .serene-review-author { gap: 8px; }
 .serene-admin.is-comment-workspace .serene-review-author strong { font-size: 20px; line-height: 28px; }
 .serene-admin.is-comment-workspace .serene-review-author svg { width: 18px; height: 18px; color: #10b981; }
 .serene-admin.is-comment-workspace .serene-review-meta { justify-content: space-between; align-items: center; gap: 8px; margin-top: 10px; }
 .serene-admin.is-comment-workspace .serene-review-meta time { font-size: 14px; line-height: 23px; }
 .serene-admin.is-comment-workspace .serene-review-meta time span { display: block; }
 .serene-admin.is-comment-workspace .serene-review-meta time span + span::before { content: none; }
 .serene-admin.is-comment-workspace .serene-review-status { font-size: 12px; padding: 6px 12px; border-radius: 10px; box-shadow: 0 2px 3px #0f172a0a; }
 .serene-admin.is-comment-workspace .serene-review-main > p { font-size: 20px; line-height: 28px; word-break: break-all; }
 .serene-admin.is-comment-workspace .serene-review-actions { gap: 6px; }
 .serene-admin.is-comment-workspace .serene-review-actions button { font-size: 12px; padding: 8px; }
 .serene-admin.is-comment-workspace .serene-checkbox { width: 24px; height: 24px; flex-basis: 24px; }
 .serene-admin.is-comment-workspace .serene-bulk-info .serene-checkbox { width: 22px; height: 22px; flex-basis: 22px; }
 .serene-admin.is-comment-workspace .serene-bulk-info .serene-checkbox-box { border-color: #10b981; }
}
@media(max-width: 767px) {
 .serene-admin .admin-filter-summary > button { width: 100%; margin: 0; }
 .serene-admin .admin-user-filter-bar { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; }
 .serene-admin .admin-list-toolbar-actions { width: auto; flex-wrap: wrap; overflow: visible; padding: 0; }
 .serene-admin :is(.admin-user-filter-tabs,.admin-post-categories) { min-width: 0; max-width: 100%; overflow-x: auto; scrollbar-width: none; }
 .serene-admin .serene-bulk-toolbar { padding: 16px; gap: 14px; }
 .serene-bulk-info { width: 100%; justify-content: space-between; gap: 12px; }
 .serene-bulk-actions { width: 100%; padding: 0; border: 0; }
 .serene-admin .serene-bulk-actions button { flex: 1; min-width: 0; min-height: 44px; padding: 10px 8px; }
 .serene-review-row { grid-template-columns: 20px 36px minmax(0,1fr); gap: 12px; padding: 18px 16px; }
 .serene-review-avatar { grid-column: 2; grid-row: 1; width: 36px; height: 36px; border-radius: 12px; }
 .serene-review-main { display: contents; }
 .serene-review-main header { grid-column: 3; grid-row: 1; align-items: flex-start; margin: 0; }
 .serene-review-main > p, .serene-review-actions { grid-column: 1 / -1; }
 .serene-review-meta { gap: 8px; }
 .serene-admin .serene-review-actions button { flex: 1; min-height: 44px; padding: 9px 8px; }
 .serene-admin .admin-pagination { flex-wrap: wrap; gap: 8px; }
}
@media(max-width: 380px) {
 .serene-admin.is-comment-workspace .serene-review-row { grid-template-columns: 20px 36px minmax(0,1fr); padding: 18px; column-gap: 12px; }
 .serene-admin.is-comment-workspace .serene-review-avatar { width: 36px; height: 36px; border-radius: 12px; }
 .serene-admin.is-comment-workspace .serene-review-author strong { font-size: 16px; }
 .serene-admin.is-comment-workspace .serene-review-main > p { font-size: 16px; line-height: 26px; }
 .serene-admin.is-comment-workspace .serene-review-meta time { font-size: 12px; }
 .serene-admin.is-comment-workspace .serene-review-row > .serene-checkbox { width: 20px; height: 20px; }
}
