@import url("./fonts/fonts.css");

:root {
    --ink: #182230;
    --muted: #667085;
    --line: #e4e7ec;
    --panel: #ffffff;
    --canvas: #f5f7fb;
    --primary: #5b5ce2;
    --primary-dark: #4546bf;
    --green: #12b76a;
    --red: #d92d20;
    --amber: #f79009;
    --shadow: 0 18px 50px rgba(16, 24, 40, 0.08);
}

* {
    box-sizing: border-box;
}

html {
    min-height: 100%;
}

body {
    margin: 0;
    min-height: 100vh;
    color: var(--ink);
    background: var(--canvas);
    font-family: Inter, "Segoe UI", "Microsoft YaHei", sans-serif;
    -webkit-font-smoothing: antialiased;
}

button,
input,
textarea,
select {
    font: inherit;
}

button,
a {
    -webkit-tap-highlight-color: transparent;
}

a {
    color: inherit;
}

.eyebrow {
    margin: 0 0 8px;
    color: #7f56d9;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.16em;
}

.eyebrow.light {
    color: rgba(255, 255, 255, 0.72);
}

.muted {
    color: var(--muted);
}

.btn {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid transparent;
    border-radius: 10px;
    padding: 9px 16px;
    text-decoration: none;
    font-weight: 700;
    cursor: pointer;
    transition: 160ms ease;
}

.btn:hover {
    transform: translateY(-1px);
}

.btn:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
button:focus-visible {
    outline: 3px solid rgba(91, 92, 226, 0.22);
    outline-offset: 2px;
}

.btn-primary {
    color: #fff;
    background: linear-gradient(135deg, #6869ed, #4f46c8);
    box-shadow: 0 8px 18px rgba(79, 70, 200, 0.22);
}

.btn-primary:hover {
    background: linear-gradient(135deg, #5b5ce2, #4038ae);
}

.btn-secondary {
    color: #344054;
    border-color: #d0d5dd;
    background: #fff;
}

.btn-ghost {
    color: #475467;
    border-color: #e4e7ec;
    background: #fff;
}

.btn-danger-ghost {
    color: var(--red);
    border-color: #fecdca;
    background: #fff;
}

.btn-light {
    color: #16202c;
    background: #fff;
}

.btn-small {
    min-height: 34px;
    padding: 6px 10px;
    border-radius: 8px;
    font-size: 13px;
}

.btn-block {
    width: 100%;
}

.alert {
    margin: 0 0 16px;
    border: 1px solid #d0d5dd;
    border-radius: 10px;
    padding: 12px 14px;
    color: #344054;
    background: #f9fafb;
}

.alert-error {
    color: #912018;
    border-color: #fecdca;
    background: #fef3f2;
}

.alert-success {
    color: #05603a;
    border-color: #a6f4c5;
    background: #ecfdf3;
}

.alert-info {
    color: #1849a9;
    border-color: #b2ddff;
    background: #eff8ff;
}

.invalid-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.invalid-summary strong {
    display: block;
}

.invalid-summary p {
    margin: 5px 0 0;
    font-size: 12px;
}

.invalid-code-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 6px;
}

.invalid-code-list span {
    border: 1px solid #fda29b;
    border-radius: 999px;
    padding: 4px 8px;
    color: #912018;
    background: #fff;
    font-size: 11px;
    font-weight: 800;
}

/* 登录与安装 */
.admin-auth {
    display: grid;
    min-height: 100vh;
    place-items: center;
    padding: 24px;
    background:
        radial-gradient(circle at 16% 18%, rgba(127, 86, 217, 0.15), transparent 28%),
        radial-gradient(circle at 82% 76%, rgba(68, 76, 231, 0.14), transparent 30%),
        #f6f7fb;
}

.auth-shell {
    width: min(100%, 460px);
}

.auth-card {
    border: 1px solid rgba(255, 255, 255, 0.82);
    border-radius: 24px;
    padding: 38px;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 28px 80px rgba(27, 31, 59, 0.13);
    backdrop-filter: blur(18px);
}

.auth-card-wide {
    width: min(100%, 520px);
}

.auth-card h1 {
    margin: 22px 0 8px;
    font-size: 30px;
    letter-spacing: -0.04em;
}

.auth-card > .muted {
    margin: 0 0 24px;
    line-height: 1.65;
}

.stack-form {
    display: grid;
    gap: 18px;
}

.stack-form label,
.field {
    display: grid;
    gap: 7px;
}

.stack-form label > span,
.field > span {
    color: #344054;
    font-size: 13px;
    font-weight: 700;
}

input,
textarea,
select {
    width: 100%;
    border: 1px solid #d0d5dd;
    border-radius: 10px;
    padding: 11px 12px;
    color: #101828;
    background: #fff;
    transition: border-color 160ms ease, box-shadow 160ms ease;
}

textarea {
    resize: vertical;
}

input:hover,
textarea:hover,
select:hover {
    border-color: #98a2b3;
}

/* 公共二维码与手机跳转页面 */
.public-page {
    overflow-x: hidden;
    color: #fff;
    background: #111827;
}

.public-background {
    position: fixed;
    inset: -45px;
    z-index: -2;
    background: var(--public-bg) center / cover no-repeat;
    filter: blur(var(--background-blur, 0px));
    transform: scale(1.03);
}

.qr-shell,
.loading-shell,
.error-shell,
.home-shell {
    display: grid;
    min-height: 100vh;
    place-items: center;
    padding: 34px 20px 74px;
}

.qr-card,
.loading-card,
.error-card,
.home-card {
    width: min(92vw, 620px);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 26px;
    padding: 34px;
    text-align: center;
    background: rgba(7, 10, 19, 0.76);
    box-shadow: 0 25px 80px rgba(0, 0, 0, 0.42);
    backdrop-filter: blur(18px);
    animation: card-in 520ms ease both;
}

.qr-card h1,
.loading-card h1,
.error-card h1,
.home-card h1 {
    margin: 0 0 20px;
    font-family: "R25 ZCOOL Happy", "Microsoft YaHei", sans-serif;
    font-size: clamp(24px, 5vw, 34px);
    line-height: 1.45;
    letter-spacing: 0.02em;
    text-shadow: 0 3px 12px rgba(0, 0, 0, 0.5);
}

.desktop-handoff.qr-font-system {
    font-family: Inter, "Segoe UI", "Microsoft YaHei", sans-serif;
}

.desktop-handoff.qr-font-display {
    font-family: "R25 ZCOOL Happy", "Microsoft YaHei", sans-serif;
}

.desktop-handoff.qr-font-zhanku {
    font-family: "R25 ZCOOL Happy", "Microsoft YaHei", sans-serif;
}

.desktop-handoff.qr-font-serif {
    font-family: "Songti SC", SimSun, Georgia, serif;
}

.desktop-handoff.qr-font-rounded {
    font-family: "Microsoft YaHei UI", "Arial Rounded MT Bold", sans-serif;
}

.desktop-handoff.qr-font-round {
    font-family: YouYuan, "幼圆", "Hiragino Maru Gothic ProN", "Microsoft YaHei UI", sans-serif;
}

.desktop-handoff.qr-font-mono {
    font-family: Consolas, "SFMono-Regular", "Microsoft YaHei", monospace;
}

.desktop-handoff .qr-card {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: min(92vw, var(--qr-card-width, 620px));
    border-radius: var(--qr-card-radius, 28px);
    box-shadow: 0 28px 86px rgba(0, 0, 0, var(--qr-shadow-alpha, 0.55));
}

.desktop-handoff .qr-card > *:not(.qr-card-orb) {
    position: relative;
    z-index: 1;
}

.desktop-handoff .qr-card h1 {
    font-family: inherit;
}

.qr-card.qr-style-glass {
    border-color: rgba(255, 255, 255, 0.3);
    background: rgb(7 10 19 / var(--qr-card-opacity, 0.88));
    backdrop-filter: blur(20px) saturate(135%);
}

.qr-card.qr-style-neumorph {
    border-color: rgba(255, 255, 255, 0.16);
    background: rgb(30 38 57 / var(--qr-card-opacity, 0.88));
    box-shadow:
        22px 22px 54px rgba(0, 0, 0, var(--qr-shadow-alpha, 0.55)),
        -15px -15px 42px rgba(255, 255, 255, 0.14),
        inset 1px 1px 0 rgba(255, 255, 255, 0.12);
}

.qr-card.qr-style-solid {
    border-color: color-mix(in srgb, var(--qr-accent, #7dd3fc) 38%, transparent);
    background: rgb(11 18 32 / var(--qr-card-opacity, 0.88));
}

.qr-card.qr-style-minimal {
    border-color: rgba(255, 255, 255, 0.2);
    background: rgb(7 10 19 / var(--qr-card-opacity, 0.7));
    box-shadow: 0 18px 55px rgba(0, 0, 0, var(--qr-shadow-alpha, 0.55));
    backdrop-filter: blur(8px);
}

.qr-card-orb {
    position: absolute;
    z-index: 0;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background: var(--qr-accent, #7dd3fc);
    filter: blur(20px);
    opacity: 0.15;
    pointer-events: none;
}

.qr-card-orb-one {
    top: -95px;
    right: -75px;
}

.qr-card-orb-two {
    bottom: -125px;
    left: -90px;
    opacity: 0.09;
}

.anime-home-page {
    --anime-pink: #f18bb7;
    --anime-purple: #8879d9;
    --anime-ink: #35334a;
}

.anime-home-shell {
    display: grid;
    min-height: 100vh;
    place-items: center;
    padding: 54px 24px 82px;
}

.anime-home-card {
    position: relative;
    display: grid;
    overflow: hidden;
    width: min(94vw, 980px);
    min-height: 570px;
    grid-template-columns: minmax(300px, 0.88fr) minmax(430px, 1.12fr);
    border: 1px solid rgba(255, 255, 255, 0.62);
    border-radius: 34px;
    background: rgba(255, 255, 255, 0.88);
    box-shadow:
        0 34px 90px rgba(24, 24, 47, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.85);
    animation: card-in 520ms ease both;
    backdrop-filter: blur(18px);
}

.anime-home-card::after {
    position: absolute;
    right: -70px;
    bottom: -95px;
    width: 220px;
    height: 220px;
    border: 28px solid rgba(241, 139, 183, 0.1);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.anime-home-visual {
    position: relative;
    overflow: hidden;
    min-height: 570px;
    background: var(--anime-card-image) var(--anime-image-position, center) / cover no-repeat;
}

.anime-home-visual::after {
    position: absolute;
    inset: 0;
    content: "";
    background: linear-gradient(180deg, transparent 46%, rgba(29, 27, 51, 0.78) 100%);
}

.anime-spark {
    position: absolute;
    z-index: 2;
    color: #fff;
    font-size: 28px;
    line-height: 1;
    text-shadow: 0 3px 14px rgba(39, 34, 65, 0.42);
    animation: anime-float 4.5s ease-in-out infinite;
}

.anime-spark-one {
    top: 13%;
    left: 12%;
}

.anime-spark-two {
    top: 25%;
    right: 13%;
    font-size: 20px;
    animation-delay: -1.4s;
}

.anime-spark-three {
    right: 20%;
    bottom: 30%;
    font-size: 16px;
    animation-delay: -2.8s;
}

.anime-visual-caption {
    position: absolute;
    right: 30px;
    bottom: 30px;
    left: 30px;
    z-index: 2;
    color: #fff;
}

.anime-visual-caption small {
    display: block;
    margin-bottom: 7px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 12px;
    letter-spacing: 0.18em;
}

.anime-visual-caption strong {
    display: block;
    font-family: "R25 ZCOOL Happy", "Microsoft YaHei", sans-serif;
    font-size: clamp(22px, 3vw, 30px);
    line-height: 1.5;
    text-shadow: 0 4px 20px rgba(0, 0, 0, 0.38);
}

.anime-home-content {
    position: relative;
    z-index: 1;
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
    padding: clamp(42px, 6vw, 70px);
    color: var(--anime-ink);
}

.anime-home-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #6b6487;
    font-size: 13px;
    font-weight: 850;
    letter-spacing: 0.08em;
}

.anime-brand-mark {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 14px;
    color: #fff;
    background: linear-gradient(135deg, var(--anime-pink), var(--anime-purple));
    box-shadow: 0 12px 26px rgba(136, 121, 217, 0.28);
    font-size: 20px;
    font-weight: 900;
}

.anime-home-copy {
    margin-top: 48px;
}

.anime-home-copy:first-child {
    margin-top: 0;
}

.anime-home-kicker {
    margin: 0 0 12px;
    color: #d6709f;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.2em;
}

.anime-home-copy h1 {
    margin: 0;
    color: #333047;
    font-family: "R25 ZCOOL Happy", "Microsoft YaHei", sans-serif;
    font-size: clamp(38px, 6vw, 60px);
    line-height: 1.16;
    letter-spacing: -0.045em;
    text-shadow: none;
}

.anime-home-lead {
    margin: 20px 0 0;
    color: #5b566e;
    font-size: clamp(17px, 2.4vw, 21px);
    font-weight: 800;
    line-height: 1.7;
}

.anime-home-note {
    margin: 12px 0 0;
    color: #817b92;
    font-size: 13px;
    line-height: 1.9;
}

.anime-home-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 30px;
}

.anime-home-tags span {
    border: 1px solid rgba(136, 121, 217, 0.16);
    border-radius: 999px;
    padding: 8px 12px;
    color: #746c96;
    background: rgba(136, 121, 217, 0.07);
    font-size: 12px;
    font-weight: 750;
}

.anime-home-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

.anime-home-button {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    border: 1px solid transparent;
    border-radius: 12px;
    padding: 9px 17px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 800;
    transition: 160ms ease;
}

.anime-home-button:hover {
    transform: translateY(-2px);
}

.anime-home-button.is-primary {
    color: #fff;
    background: linear-gradient(135deg, var(--anime-pink), var(--anime-purple));
    box-shadow: 0 12px 25px rgba(136, 121, 217, 0.22);
}

.anime-home-button.is-secondary {
    border-color: rgba(136, 121, 217, 0.2);
    color: #746c96;
    background: rgba(136, 121, 217, 0.07);
}

.anime-home-status {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 34px;
    color: #817b92;
    font-size: 12px;
}

.anime-home-status .status-dot {
    background: #5ed39a;
    box-shadow: 0 0 0 5px rgba(94, 211, 154, 0.13);
}

.anime-home-status time {
    margin-left: auto;
    color: #aaa5b7;
    font-variant-numeric: tabular-nums;
}

.glass-home-shell,
.neon-home-shell {
    position: relative;
    z-index: 1;
    display: grid;
    min-height: 100vh;
    place-items: center;
    padding: 54px 24px 82px;
}

.glass-profile-card {
    display: grid;
    overflow: hidden;
    width: min(94vw, 920px);
    min-height: 540px;
    grid-template-columns: minmax(280px, 0.82fr) minmax(420px, 1.18fr);
    border: 1px solid rgba(255, 255, 255, 0.62);
    border-radius: 36px;
    background: rgba(255, 255, 255, var(--glass-opacity, 0.72));
    box-shadow: 0 34px 100px rgba(25, 24, 54, 0.34);
    backdrop-filter: blur(26px) saturate(1.15);
    animation: card-in 520ms ease both;
}

.glass-profile-art {
    position: relative;
    display: flex;
    min-height: 540px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 42px 28px 110px;
    background:
        radial-gradient(circle at 20% 18%, color-mix(in srgb, var(--anime-pink) 32%, transparent), transparent 42%),
        linear-gradient(155deg, rgba(255, 255, 255, 0.3), rgba(109, 92, 177, 0.18));
}

.glass-profile-art::before,
.glass-profile-art::after {
    position: absolute;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    content: "";
}

.glass-profile-art::before {
    top: 44px;
    left: 26px;
    width: 88px;
    height: 88px;
}

.glass-profile-art::after {
    right: -48px;
    bottom: 72px;
    width: 168px;
    height: 168px;
}

.glass-profile-image {
    position: relative;
    z-index: 1;
    width: min(72vw, 235px);
    aspect-ratio: 1;
    border: 8px solid rgba(255, 255, 255, 0.68);
    background: var(--glass-image) center / cover no-repeat;
    box-shadow:
        0 22px 55px rgba(42, 35, 82, 0.3),
        0 0 0 1px rgba(255, 255, 255, 0.42);
}

.glass-profile-image.is-circle {
    border-radius: 50%;
}

.glass-profile-image.is-rounded {
    border-radius: 34px;
}

.glass-profile-image.is-square {
    border-radius: 4px;
}

.glass-art-caption {
    position: absolute;
    right: 30px;
    bottom: 30px;
    left: 30px;
    z-index: 2;
    color: #4e4868;
}

.glass-art-caption small,
.glass-art-caption strong {
    display: block;
}

.glass-art-caption small {
    margin-bottom: 5px;
    color: #8b82a5;
    font-size: 11px;
    letter-spacing: 0.16em;
}

.glass-art-caption strong {
    font-size: 17px;
    line-height: 1.55;
}

.glass-profile-content {
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
    padding: clamp(42px, 6vw, 68px);
    color: #37334b;
}

.glass-profile-card.is-align-center .glass-profile-content {
    align-items: center;
    text-align: center;
}

.glass-profile-brand,
.neon-home-brand {
    display: flex;
    align-items: center;
    gap: 11px;
}

.glass-profile-brand span,
.neon-home-brand span {
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    border-radius: 13px;
    color: #fff;
    background: linear-gradient(135deg, var(--anime-pink), #8879d9);
    box-shadow: 0 12px 28px color-mix(in srgb, var(--anime-pink) 28%, transparent);
    font-weight: 900;
}

.glass-profile-brand strong {
    color: #68617e;
    font-size: 13px;
    letter-spacing: 0.08em;
}

.glass-profile-kicker {
    margin: 38px 0 10px;
    color: var(--anime-pink);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.18em;
}

.glass-profile-content h1 {
    margin: 0;
    font-family: "R25 ZCOOL Happy", "Microsoft YaHei", sans-serif;
    font-size: clamp(38px, 6vw, 58px);
    line-height: 1.15;
}

.glass-profile-lead {
    margin: 18px 0 0;
    color: #5e5872;
    font-size: 18px;
    font-weight: 750;
    line-height: 1.65;
}

.glass-profile-note {
    margin: 11px 0 0;
    color: #7f7891;
    font-size: 13px;
    line-height: 1.8;
}

.glass-profile-tags,
.glass-profile-actions,
.neon-home-tags,
.neon-home-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.glass-profile-tags,
.neon-home-tags {
    margin-top: 24px;
}

.glass-profile-actions,
.neon-home-actions {
    margin-top: 22px;
}

.glass-profile-card.is-align-center .glass-profile-tags,
.glass-profile-card.is-align-center .glass-profile-actions {
    justify-content: center;
}

.glass-profile-tags span {
    border: 1px solid rgba(111, 96, 157, 0.15);
    border-radius: 999px;
    padding: 7px 11px;
    color: #70688a;
    background: rgba(255, 255, 255, 0.44);
    font-size: 11px;
}

.glass-profile-meta {
    display: flex;
    width: 100%;
    align-items: center;
    gap: 10px;
    margin-top: 30px;
    color: #7d7690;
    font-size: 12px;
}

.glass-profile-meta span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.glass-profile-meta i,
.neon-home-status i {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #5ed39a;
    box-shadow: 0 0 0 5px rgba(94, 211, 154, 0.13);
}

.glass-profile-meta time {
    margin-left: auto;
}

.neon-hero-card {
    position: relative;
    display: grid;
    overflow: hidden;
    width: min(95vw, 1080px);
    min-height: 600px;
    grid-template-columns: minmax(430px, 1.04fr) minmax(360px, 0.96fr);
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 30px;
    color: #fff;
    background: rgba(8, 8, 19, var(--neon-overlay, 0.58));
    box-shadow: 0 34px 110px rgba(0, 0, 0, 0.52);
    backdrop-filter: blur(18px);
    animation: card-in 520ms ease both;
}

.neon-hero-card.has-glow {
    box-shadow:
        0 34px 110px rgba(0, 0, 0, 0.52),
        0 0 58px color-mix(in srgb, var(--anime-pink) 32%, transparent);
}

.neon-hero-copy {
    position: relative;
    z-index: 2;
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
    padding: clamp(46px, 6vw, 76px);
}

.neon-home-brand strong {
    color: rgba(255, 255, 255, 0.72);
    font-size: 13px;
    letter-spacing: 0.1em;
}

.neon-home-kicker {
    margin: 50px 0 12px;
    color: var(--anime-pink);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.28em;
    text-transform: uppercase;
}

.neon-hero-copy h1 {
    margin: 0;
    font-family: "R25 ZCOOL Happy", "Microsoft YaHei", sans-serif;
    font-size: clamp(46px, 7vw, 76px);
    line-height: 1.08;
    letter-spacing: -0.04em;
    text-shadow: 0 0 30px color-mix(in srgb, var(--anime-pink) 38%, transparent);
}

.neon-home-lead {
    margin: 20px 0 0;
    color: rgba(255, 255, 255, 0.84);
    font-size: 19px;
    font-weight: 750;
    line-height: 1.65;
}

.neon-home-note {
    margin: 11px 0 0;
    color: rgba(255, 255, 255, 0.58);
    font-size: 13px;
    line-height: 1.85;
}

.neon-home-tags span {
    border: 1px solid color-mix(in srgb, var(--anime-pink) 36%, transparent);
    border-radius: 999px;
    padding: 7px 11px;
    color: rgba(255, 255, 255, 0.78);
    background: rgba(255, 255, 255, 0.06);
    font-size: 11px;
}

.neon-home-actions .anime-home-button.is-secondary {
    border-color: rgba(255, 255, 255, 0.2);
    color: #fff;
    background: rgba(255, 255, 255, 0.08);
}

.neon-home-status {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 32px;
    color: rgba(255, 255, 255, 0.58);
    font-size: 12px;
}

.neon-hero-art {
    position: relative;
    min-height: 600px;
    background: var(--neon-image) var(--neon-image-position, right) center / cover no-repeat;
}

.neon-hero-art::after {
    position: absolute;
    inset: 0;
    content: "";
    background: linear-gradient(90deg, rgba(8, 8, 19, 0.98), transparent 46%, rgba(8, 8, 19, 0.08));
}

.neon-art-caption {
    position: absolute;
    right: 28px;
    bottom: 28px;
    left: 28px;
    z-index: 1;
    text-align: right;
}

.neon-art-caption small,
.neon-art-caption strong {
    display: block;
}

.neon-art-caption small {
    margin-bottom: 6px;
    color: rgba(255, 255, 255, 0.55);
    font-size: 11px;
    letter-spacing: 0.18em;
}

.neon-art-caption strong {
    font-size: 18px;
    line-height: 1.5;
    text-shadow: 0 3px 18px rgba(0, 0, 0, 0.6);
}

/* R25.9.2 homepage polish */
.anime-home-atmosphere {
    position: fixed;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}

.anime-home-atmosphere i {
    position: absolute;
    display: block;
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 42% 58% 64% 36% / 38% 36% 64% 62%;
    background: linear-gradient(145deg, color-mix(in srgb, var(--anime-pink) 28%, transparent), rgba(255, 255, 255, 0.08));
    box-shadow: inset 0 0 38px rgba(255, 255, 255, 0.08);
    opacity: 0.6;
    animation: home-orbit 16s ease-in-out infinite alternate;
}

.anime-home-atmosphere i:nth-child(1) {
    top: 7%;
    left: 5%;
    width: 180px;
    height: 180px;
}

.anime-home-atmosphere i:nth-child(2) {
    right: 3%;
    bottom: 8%;
    width: 240px;
    height: 240px;
    animation-delay: -6s;
}

.anime-home-atmosphere i:nth-child(3) {
    top: 18%;
    right: 20%;
    width: 72px;
    height: 72px;
    opacity: 0.36;
    animation-delay: -10s;
}

.anime-home-shell {
    position: relative;
    z-index: 1;
}

.anime-home-card,
.glass-profile-card,
.neon-hero-card {
    isolation: isolate;
}

.anime-home-card::before,
.glass-profile-card::before,
.neon-hero-card::before {
    position: absolute;
    top: 0;
    right: 12%;
    left: 12%;
    z-index: 4;
    height: 3px;
    border-radius: 0 0 999px 999px;
    background: linear-gradient(90deg, transparent, var(--anime-pink), #ffffff, var(--anime-purple), transparent);
    box-shadow: 0 0 18px color-mix(in srgb, var(--anime-pink) 38%, transparent);
    content: "";
    pointer-events: none;
}

.anime-home-card {
    border-color: rgba(255, 255, 255, 0.76);
    box-shadow: 0 36px 110px rgba(24, 24, 47, 0.38), 0 0 0 1px color-mix(in srgb, var(--anime-pink) 10%, transparent), inset 0 1px 0 #fff;
}

.anime-home-visual {
    border-right: 1px solid rgba(255, 255, 255, 0.52);
}

.anime-home-visual::after {
    background: linear-gradient(180deg, rgba(26, 24, 48, 0.02) 34%, rgba(29, 27, 51, 0.86) 100%);
}

.anime-home-content {
    background: radial-gradient(circle at 100% 0, color-mix(in srgb, var(--anime-pink) 11%, transparent), transparent 42%);
}

.anime-home-kicker,
.glass-profile-kicker,
.neon-home-kicker {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    gap: 8px;
}

.anime-home-kicker::before,
.glass-profile-kicker::before,
.neon-home-kicker::before {
    width: 20px;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
    content: "";
    opacity: 0.68;
}

.anime-home-tags span,
.glass-profile-tags span,
.neon-home-tags span {
    backdrop-filter: blur(10px);
    transition: border-color 160ms ease, transform 160ms ease, background 160ms ease;
}

.anime-home-tags span:hover,
.glass-profile-tags span:hover,
.neon-home-tags span:hover {
    border-color: color-mix(in srgb, var(--anime-pink) 52%, transparent);
    transform: translateY(-1px);
}

.anime-home-button {
    min-height: 44px;
    border-radius: 14px;
    padding-inline: 20px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.24);
}

.anime-home-button.is-primary {
    background: linear-gradient(125deg, var(--anime-pink), color-mix(in srgb, var(--anime-purple) 88%, #7dd3fc));
}

.anime-home-button:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--anime-pink) 36%, transparent);
    outline-offset: 3px;
}

.anime-home-status,
.glass-profile-meta,
.neon-home-status {
    width: fit-content;
    min-height: 34px;
    border: 1px solid rgba(136, 121, 217, 0.12);
    border-radius: 999px;
    padding: 7px 12px;
    background: rgba(255, 255, 255, 0.34);
    backdrop-filter: blur(10px);
}

.glass-profile-card {
    border-color: rgba(255, 255, 255, 0.76);
    box-shadow: 0 36px 110px rgba(25, 24, 54, 0.38), 0 0 0 1px color-mix(in srgb, var(--anime-pink) 10%, transparent);
}

.glass-profile-art {
    border-right: 1px solid rgba(255, 255, 255, 0.45);
}

.neon-hero-card {
    border-color: color-mix(in srgb, var(--anime-pink) 30%, rgba(255, 255, 255, 0.13));
}

.neon-hero-copy {
    background: radial-gradient(circle at 0 0, color-mix(in srgb, var(--anime-pink) 13%, transparent), transparent 48%);
}

.neon-home-status {
    border-color: rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.06);
}

@keyframes home-orbit {
    from { transform: translate3d(0, 0, 0) rotate(0deg); }
    to { transform: translate3d(18px, -22px, 0) rotate(12deg); }
}

@media (max-width: 760px) {
    .anime-home-atmosphere i:nth-child(1) { left: -72px; }
    .anime-home-atmosphere i:nth-child(2) { right: -110px; }
    .anime-home-status,
    .glass-profile-meta,
    .neon-home-status { width: 100%; }
    .anime-home-button { flex: 1 1 140px; }
}

@media (prefers-reduced-motion: reduce) {
    .anime-home-atmosphere i { animation: none; }
}

.template-settings-breadcrumb {
    position: sticky;
    top: 10px;
    z-index: 8;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    border: 1px solid #e6e8f1;
    border-radius: 14px;
    padding: 10px 13px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 8px 26px rgba(42, 45, 72, 0.08);
    backdrop-filter: blur(14px);
}

.template-settings-breadcrumb a {
    border-radius: 8px;
    padding: 6px 9px;
    color: #6d6880;
    text-decoration: none;
    font-size: 12px;
    font-weight: 750;
}

.template-settings-breadcrumb a:hover,
.template-settings-breadcrumb a.is-active {
    color: #5d45d8;
    background: #f0edff;
}

.template-settings-breadcrumb span {
    color: #b5b1c1;
}

.home-template-picker {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.home-template-choice {
    position: relative;
    display: flex;
    cursor: pointer;
    flex-direction: column;
    gap: 6px;
    border: 1px solid #e3e5ee;
    border-radius: 16px;
    padding: 12px;
    background: #fff;
    transition: 160ms ease;
}

.home-template-choice:has(input:checked) {
    border-color: #8c75eb;
    box-shadow: 0 0 0 3px rgba(140, 117, 235, 0.12);
}

.home-template-choice input {
    position: absolute;
    top: 12px;
    right: 12px;
}

.home-template-choice strong {
    color: #39364b;
    font-size: 14px;
}

.home-template-choice small {
    color: #777386;
    line-height: 1.55;
}

.home-template-choice em {
    color: #9a95a8;
    font-size: 10px;
    font-style: normal;
}

.home-template-preview {
    position: relative;
    display: block;
    overflow: hidden;
    height: 88px;
    border-radius: 11px;
    background: #ebeaf2;
}

.home-template-preview i,
.home-template-preview b {
    position: absolute;
    display: block;
}

.home-template-preview.is-split-card i {
    inset: 10px 50% 10px 10px;
    border-radius: 8px 0 0 8px;
    background: linear-gradient(145deg, #bda9e8, #6e6096);
}

.home-template-preview.is-split-card b {
    inset: 10px 10px 10px 50%;
    border-radius: 0 8px 8px 0;
    background: #fff;
}

.home-template-preview.is-glass-profile {
    background: linear-gradient(145deg, #f4b6cf, #8b80c9);
}

.home-template-preview.is-glass-profile i {
    inset: 13px 20px;
    border: 1px solid rgba(255, 255, 255, 0.7);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.58);
}

.home-template-preview.is-glass-profile b {
    top: 28px;
    left: calc(50% - 16px);
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #fff;
}

.home-template-preview.is-neon-hero {
    background: linear-gradient(145deg, #11101d, #27203d);
}

.home-template-preview.is-neon-hero i {
    top: 20px;
    right: 18px;
    bottom: 12px;
    width: 34%;
    border-radius: 30px 30px 8px 8px;
    background: linear-gradient(180deg, #f18bb7, #7a64d2);
    box-shadow: 0 0 20px rgba(241, 139, 183, 0.48);
}

.home-template-preview.is-neon-hero b {
    top: 27px;
    left: 17px;
    width: 38%;
    height: 9px;
    border-radius: 99px;
    background: #fff;
    box-shadow: 0 17px 0 rgba(255, 255, 255, 0.35);
}

.template-settings-panel[hidden] {
    display: none;
}

.compact-switch-field {
    align-self: end;
    min-height: 44px;
}

@media (max-width: 760px) {
    .glass-home-shell,
    .neon-home-shell {
        padding: 22px 14px 70px;
    }

    .glass-profile-card,
    .neon-hero-card {
        width: min(100%, 620px);
        min-height: 0;
        grid-template-columns: 1fr;
        border-radius: 25px;
    }

    .glass-profile-art {
        min-height: 310px;
        padding: 32px 24px 86px;
    }

    .glass-profile-image {
        width: 190px;
    }

    .glass-profile-content,
    .neon-hero-copy {
        padding: 34px 27px 38px;
    }

    .glass-profile-kicker,
    .neon-home-kicker {
        margin-top: 30px;
    }

    .neon-hero-art {
        order: -1;
        min-height: 300px;
    }

    .neon-hero-art::after {
        background: linear-gradient(180deg, transparent 45%, rgba(8, 8, 19, 0.96));
    }

    .home-template-picker {
        grid-template-columns: 1fr;
    }

    .template-settings-breadcrumb {
        position: static;
    }
}

.qr-frame {
    position: relative;
    overflow: hidden;
    width: min(100%, 338px);
    margin: 8px auto 22px;
    border-radius: 22px;
    padding: 9px;
    background: #fff;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.45), 0 0 30px rgba(255, 255, 255, 0.17);
}

.qr-hover-protected {
    outline: none;
    cursor: help;
}

.qr-hover-overlay {
    position: absolute;
    inset: 9px;
    z-index: 3;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 14px;
    padding: 26px;
    color: #fff;
    background: var(--qr-overlay-background, #111827e0);
    opacity: 0;
    transform: scale(0.96);
    pointer-events: none;
    transition: opacity 180ms ease, transform 220ms ease;
}

.qr-hover-overlay strong {
    position: relative;
    z-index: 2;
    max-width: 260px;
    text-align: center;
    text-wrap: balance;
    line-height: 1.7;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.66);
}

.qr-hover-protected:hover .qr-hover-overlay,
.qr-hover-protected:focus-visible .qr-hover-overlay {
    opacity: 1;
    transform: scale(1);
}

.qr-overlay-decoration,
.qr-overlay-decoration::before,
.qr-overlay-decoration::after {
    position: absolute;
    content: "";
    pointer-events: none;
}

.qr-overlay-scan .qr-overlay-decoration {
    inset: -35% 0 auto;
    height: 30%;
    background: linear-gradient(180deg, transparent, rgba(255, 255, 255, 0.64), transparent);
    animation: qr-overlay-scan var(--qr-overlay-speed, 3s) linear infinite;
}

.qr-overlay-shimmer .qr-overlay-decoration {
    inset: -35%;
    width: 36%;
    transform: rotate(18deg);
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.65), transparent);
    animation: qr-overlay-shimmer var(--qr-overlay-speed, 3s) ease-in-out infinite;
}

.qr-overlay-pulse .qr-overlay-decoration {
    width: 78%;
    aspect-ratio: 1;
    border: 3px solid rgba(255, 255, 255, 0.58);
    border-radius: 50%;
    animation: qr-overlay-pulse var(--qr-overlay-speed, 3s) ease-out infinite;
}

.qr-overlay-grid .qr-overlay-decoration {
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.2) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.2) 1px, transparent 1px);
    background-size: 22px 22px;
    animation: qr-overlay-grid var(--qr-overlay-speed, 3s) linear infinite;
}

#qr-canvas {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 14px;
    animation: qr-pulse 1.8s ease-in-out infinite;
}

.qr-card .lead {
    margin: 0 0 7px;
    font-size: 17px;
    font-weight: 700;
}

.muted-light,
.tiny-light {
    color: rgba(255, 255, 255, 0.72);
    line-height: 1.65;
}

.muted-light {
    margin: 0 auto;
    max-width: 490px;
}

.qr-countdown {
    margin-top: 5px;
}

.qr-countdown strong,
.js-auto-seconds {
    color: var(--qr-accent, #7dd3fc);
}

.tiny-light {
    margin: 12px 0 0;
    font-size: 12px;
}

.handoff-status {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin: 20px 0 0;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 999px;
    padding: 9px 14px;
    color: rgba(255, 255, 255, 0.88);
    background: rgba(255, 255, 255, 0.08);
    font-size: 13px;
}

.handoff-status-neumorph {
    border: 0;
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.08);
    box-shadow:
        7px 7px 16px rgba(0, 0, 0, 0.28),
        -5px -5px 14px rgba(255, 255, 255, 0.08),
        inset 1px 1px 0 rgba(255, 255, 255, 0.1);
}

.handoff-status-outline {
    border-color: var(--qr-accent, #7dd3fc);
    border-radius: 10px;
    background: transparent;
}

.qr-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 18px;
}

.qr-actions .btn {
    min-width: 116px;
}

.qr-custom-blocks {
    display: grid;
    width: min(100%, 520px);
    gap: 10px;
    margin: 17px auto 0;
}

.qr-custom-block {
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 16px;
    color: rgba(255, 255, 255, 0.9);
}

.qr-neumorph,
.qr-tip {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px;
    text-align: left;
}

.qr-neumorph {
    background: rgba(255, 255, 255, 0.08);
    box-shadow:
        8px 8px 18px rgba(0, 0, 0, 0.24),
        -5px -5px 15px rgba(255, 255, 255, 0.07),
        inset 1px 1px 0 rgba(255, 255, 255, 0.1);
}

.qr-tip {
    border-left: 3px solid var(--qr-accent, #7dd3fc);
    background: rgba(4, 8, 18, 0.44);
}

.qr-custom-block-icon {
    display: grid;
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.09);
    font-size: 17px;
}

.qr-custom-block strong {
    display: block;
    margin: 1px 0 4px;
    font-size: 13px;
}

.qr-custom-block p {
    margin: 0;
    color: rgba(255, 255, 255, 0.7);
    font-size: 12px;
    line-height: 1.65;
}

.qr-block-style-accent {
    border-color: color-mix(in srgb, var(--qr-accent, #7dd3fc) 60%, transparent);
    background: color-mix(in srgb, var(--qr-accent, #7dd3fc) 18%, rgba(5, 9, 18, 0.7));
}

.qr-block-style-dark {
    border-color: rgba(255, 255, 255, 0.09);
    background: rgba(0, 0, 0, 0.46);
}

.qr-ticker {
    overflow: hidden;
    padding: 10px 0;
    white-space: nowrap;
}

.qr-ticker-track {
    display: flex;
    width: max-content;
    min-width: 200%;
    animation: qr-ticker-scroll var(--qr-ticker-duration, 18s) linear infinite;
}

.qr-ticker-track span {
    min-width: 50%;
    padding: 0 26px;
    font-size: 12px;
}

.qr-ticker:hover .qr-ticker-track {
    animation-play-state: paused;
}

.qr-button-secondary {
    border-color: rgba(255, 255, 255, 0.24);
    color: #fff;
    background: rgba(255, 255, 255, 0.08);
}

.qr-button-secondary:hover {
    border-color: var(--qr-accent, #7dd3fc);
    background: rgba(255, 255, 255, 0.14);
}

.status-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #7dd3fc;
    box-shadow: 0 0 0 5px rgba(125, 211, 252, 0.12);
    animation: status-pulse 1.2s ease-in-out infinite;
}

.handoff-status.is-complete .status-dot {
    background: #6ee7b7;
    box-shadow: 0 0 0 5px rgba(110, 231, 183, 0.12);
    animation: none;
}

.handoff-status.is-error .status-dot {
    background: #fca5a5;
    box-shadow: 0 0 0 5px rgba(252, 165, 165, 0.12);
    animation: none;
}

.public-footer {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 13px;
    text-align: center;
    color: rgba(255, 255, 255, 0.52);
    background: rgba(0, 0, 0, 0.24);
    font-size: 12px;
    backdrop-filter: blur(10px);
}

.loading-card {
    width: min(90vw, 460px);
    padding: 42px 30px;
}

.loading-gif {
    width: 132px;
    height: 132px;
    margin: 0 0 22px;
    border-radius: 24px;
    object-fit: cover;
    box-shadow: 0 0 28px rgba(255, 255, 255, 0.2);
    animation: qr-pulse 1.6s ease-in-out infinite;
}

.loading-card h1 {
    margin-bottom: 8px;
}

.loading-card p {
    color: rgba(255, 255, 255, 0.78);
}

.loading-dots {
    display: flex;
    justify-content: center;
    gap: 7px;
    margin-top: 20px;
}

.loading-dots span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #fff;
    animation: loading-bounce 1s ease-in-out infinite;
}

.loading-dots span:nth-child(2) {
    animation-delay: 120ms;
}

.loading-dots span:nth-child(3) {
    animation-delay: 240ms;
}

.error-card {
    width: min(90vw, 560px);
    padding: 44px 34px;
}

.device-anomaly-card {
    width: min(92vw, var(--anomaly-width, 560px));
    border: 1px solid color-mix(in srgb, var(--anomaly-accent, #fb7185) 36%, transparent);
    border-radius: var(--anomaly-radius, 26px);
    background: var(--anomaly-card-bg, #111827e0);
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.36);
    overflow: hidden;
}

.device-anomaly-background {
    background-position: var(--anomaly-bg-position, center);
    background-size: var(--anomaly-bg-size, cover);
}

.qr-expired-card {
    width: min(92vw, 580px);
}

.qr-expired-icon {
    display: grid;
    width: 74px;
    height: 74px;
    margin: 0 auto 18px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, 0.42);
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.12);
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.18);
    font-size: 34px;
}

.qr-expired-message {
    margin-bottom: 10px;
}

.qr-expired-help {
    color: rgba(255, 255, 255, 0.7);
    font-size: 14px;
}

.qr-expired-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 24px;
}

.device-anomaly-icon {
    display: grid;
    width: 76px;
    height: 76px;
    margin: 0 auto 18px;
    place-items: center;
    border: 2px solid rgba(255, 255, 255, 0.72);
    border-radius: 50%;
    color: #fff;
    background: color-mix(in srgb, var(--anomaly-accent, #fb7185) 22%, transparent);
    box-shadow: 0 0 32px color-mix(in srgb, var(--anomaly-accent, #fb7185) 30%, transparent);
    font-size: 38px;
    font-weight: 900;
}

.device-anomaly-image {
    display: block;
    width: var(--anomaly-image-size, 112px);
    height: var(--anomaly-image-size, 112px);
    margin: 0 auto 20px;
    border: 3px solid color-mix(in srgb, var(--anomaly-accent, #fb7185) 45%, white);
    object-fit: cover;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.26);
}

.device-anomaly-image.anomaly-image-circle {
    border-radius: 50%;
}

.device-anomaly-image.anomaly-image-rounded {
    border-radius: 22px;
}

.device-anomaly-image.anomaly-image-banner {
    width: min(100%, calc(var(--anomaly-image-size, 112px) * 2.4));
    height: var(--anomaly-image-size, 112px);
    border-radius: 20px;
}

.device-anomaly-message {
    margin-bottom: 10px !important;
}

.device-anomaly-help {
    margin-top: 8px;
    color: rgba(255, 255, 255, 0.68) !important;
    font-size: 12px;
}

.device-anomaly-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 18px;
}

.device-anomaly-actions .btn {
    min-width: 132px;
    margin: 0;
}

.anomaly-primary-button {
    border-color: var(--anomaly-accent, #fb7185);
}

.anomaly-button-solid {
    color: #fff;
    background: var(--anomaly-accent, #fb7185);
}

.anomaly-button-outline {
    color: var(--anomaly-accent, #fb7185);
    background: transparent;
}

.anomaly-button-soft {
    color: #fff;
    background: color-mix(in srgb, var(--anomaly-accent, #fb7185) 24%, transparent);
}

.anomaly-secondary-button {
    border-color: rgba(255, 255, 255, 0.28);
    color: rgba(255, 255, 255, 0.88);
    background: rgba(255, 255, 255, 0.08);
}

.anomaly-template-soft-card .device-anomaly-card {
    border-color: rgba(255, 255, 255, 0.52);
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.22), transparent), var(--anomaly-card-bg, #475569e8);
    box-shadow: 22px 22px 55px rgba(15, 23, 42, 0.34), -12px -12px 36px rgba(255, 255, 255, 0.16);
}

.anomaly-template-neon-warning .device-anomaly-card {
    border-color: var(--anomaly-accent, #fb7185);
    background: color-mix(in srgb, var(--anomaly-card-bg, #111827e8) 62%, black);
    box-shadow:
        0 0 0 1px color-mix(in srgb, var(--anomaly-accent, #fb7185) 35%, transparent),
        0 0 36px color-mix(in srgb, var(--anomaly-accent, #fb7185) 28%, transparent),
        0 28px 80px rgba(0, 0, 0, 0.58);
}

.anomaly-template-neon-warning .device-anomaly-icon {
    border-radius: 18px;
}

.anomaly-template-minimal-light .device-anomaly-card {
    border-color: color-mix(in srgb, var(--anomaly-accent, #fb7185) 18%, #d0d5dd);
    color: #1d2939;
    background: color-mix(in srgb, var(--anomaly-card-bg, #111827e8) 10%, rgba(255, 255, 255, 0.96));
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.2);
}

.anomaly-template-minimal-light .device-anomaly-card h1,
.anomaly-template-minimal-light .device-anomaly-card .eyebrow,
.anomaly-template-minimal-light .device-anomaly-card > p {
    color: #1d2939 !important;
    text-shadow: none;
}

.anomaly-template-minimal-light .anomaly-secondary-button {
    border-color: #d0d5dd;
    color: #344054;
    background: #fff;
}

.device-anomaly-page.anomaly-font-system {
    font-family: Inter, "Segoe UI", "Microsoft YaHei", sans-serif;
}

.device-anomaly-page.anomaly-font-zhanku {
    font-family: "R25 ZCOOL Happy", "Microsoft YaHei", sans-serif;
}

.device-anomaly-page.anomaly-font-round {
    font-family: YouYuan, "幼圆", "Microsoft YaHei UI", sans-serif;
}

.device-anomaly-page.anomaly-font-display {
    font-family: "R25 ZCOOL Happy", "Microsoft YaHei", sans-serif;
}

.device-anomaly-page.anomaly-font-serif {
    font-family: "Songti SC", SimSun, Georgia, serif;
}

.device-anomaly-page.anomaly-font-mono {
    font-family: Consolas, "SFMono-Regular", "Microsoft YaHei", monospace;
}

.device-anomaly-page .device-anomaly-card h1,
.device-anomaly-page .device-anomaly-card .btn {
    font-family: inherit;
}

.error-code {
    margin-bottom: 4px;
    color: rgba(255, 255, 255, 0.14);
    font-size: clamp(70px, 20vw, 120px);
    font-weight: 900;
    line-height: 0.9;
    letter-spacing: -0.08em;
}

.error-card > p:not(.eyebrow) {
    margin: 0 auto 24px;
    max-width: 440px;
    color: rgba(255, 255, 255, 0.75);
    line-height: 1.75;
}

/* 后台 */
.admin-header {
    position: sticky;
    top: 0;
    z-index: 20;
    display: flex;
    min-height: 72px;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid rgba(228, 231, 236, 0.9);
    padding: 12px clamp(18px, 4vw, 56px);
    background: rgba(255, 255, 255, 0.88);
    backdrop-filter: blur(18px);
}

.admin-title {
    display: inline-flex;
    align-items: baseline;
    gap: 9px;
    color: #1d2939;
    text-decoration: none;
}

.admin-title strong {
    font-size: 16px;
    letter-spacing: -0.02em;
}

.admin-title small {
    color: var(--muted);
    font-size: 11px;
}

.admin-account {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #475467;
    font-size: 13px;
}

.admin-nav {
    display: flex;
    align-items: center;
    gap: 6px;
}

.admin-nav a {
    border-radius: 10px;
    padding: 8px 12px;
    color: #667085;
    text-decoration: none;
    font-size: 13px;
    font-weight: 700;
}

.admin-nav a:hover,
.admin-nav a.is-active {
    color: var(--primary);
    background: rgba(91, 92, 226, 0.09);
}

.admin-main {
    width: min(1480px, calc(100% - 36px));
    margin: 28px auto 60px;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

.stat-card {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 20px;
    background: var(--panel);
    box-shadow: 0 10px 30px rgba(16, 24, 40, 0.04);
}

.stat-card::after {
    position: absolute;
    top: -20px;
    right: -20px;
    width: 74px;
    height: 74px;
    border-radius: 50%;
    content: "";
    background: rgba(91, 92, 226, 0.07);
}

.stat-card > span,
.stat-card > small {
    display: block;
    color: var(--muted);
}

.stat-card > span {
    font-size: 13px;
    font-weight: 700;
}

.stat-card > strong {
    display: block;
    margin: 9px 0 4px;
    font-size: 29px;
    letter-spacing: -0.04em;
}

.stat-card > small {
    font-size: 11px;
}

.stat-card.accent {
    color: #fff;
    border-color: transparent;
    background: linear-gradient(135deg, #6869ed, #4f46c8);
}

.stat-card.accent > span,
.stat-card.accent > small {
    color: rgba(255, 255, 255, 0.72);
}

.analytics-panel {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 24px 30px;
}

.analytics-copy h2 {
    margin: 0 0 8px;
    font-size: 23px;
}

.analytics-copy > p:not(.eyebrow) {
    max-width: 720px;
    margin: 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.7;
}

.chart-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: 16px;
    color: #475467;
    font-size: 12px;
    font-weight: 700;
}

.chart-legend span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.stats-clear-controls {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.stats-clear-controls small,
.stats-clear-schedule p {
    color: var(--muted);
    font-size: 12px;
    line-height: 1.6;
}

.stats-clear-schedule {
    max-width: 760px;
    margin-top: 12px;
    padding: 12px 14px;
    border: 1px solid #e4e7ec;
    border-radius: 12px;
    background: #fafbff;
}

.stats-clear-schedule summary {
    cursor: pointer;
    color: #475467;
    font-size: 13px;
    font-weight: 800;
}

.stats-clear-schedule p {
    margin: 9px 0;
}

.stats-clear-schedule .cron-command {
    width: 100%;
}

.legend-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
}

.legend-converted {
    background: #5b5ce2;
}

.legend-pending {
    background: #e4e7ec;
}

.conversion-chart {
    display: grid;
    flex: 0 0 auto;
    width: 148px;
    height: 148px;
    place-items: center;
    border-radius: 50%;
    background: conic-gradient(#5b5ce2 0 var(--conversion-angle), #e4e7ec var(--conversion-angle) 360deg);
    box-shadow: inset 0 0 0 1px rgba(91, 92, 226, 0.08);
}

.conversion-chart > div {
    display: grid;
    width: 102px;
    height: 102px;
    place-content: center;
    border-radius: 50%;
    text-align: center;
    background: #fff;
    box-shadow: 0 5px 18px rgba(16, 24, 40, 0.09);
}

.conversion-chart strong,
.conversion-chart span {
    display: block;
}

.conversion-chart strong {
    font-size: 24px;
    letter-spacing: -0.04em;
}

.conversion-chart span {
    margin-top: 3px;
    color: var(--muted);
    font-size: 11px;
}

.health-automation-panel {
    padding: 24px;
}

.panel-description {
    max-width: 720px;
    margin: 7px 0 0;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.65;
}

.health-automation-grid {
    display: grid;
    grid-template-columns: minmax(280px, 0.72fr) minmax(420px, 1.28fr);
    gap: 16px;
}

.schedule-form,
.health-run-card {
    display: grid;
    gap: 16px;
    border: 1px solid #eaecf0;
    border-radius: 14px;
    padding: 18px;
    background: #fcfcfd;
}

.schedule-form .btn {
    justify-self: start;
}

.health-run-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

.health-run-heading span,
.health-run-heading strong {
    display: block;
}

.health-run-heading span {
    margin-bottom: 5px;
    color: var(--muted);
    font-size: 11px;
}

.health-run-heading strong {
    font-size: 14px;
}

.health-run-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.health-run-stats a {
    border-radius: 10px;
    padding: 11px 9px;
    color: var(--muted);
    background: #f2f4f7;
    font-size: 11px;
    text-align: center;
    text-decoration: none;
    transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.health-run-stats a:hover,
.health-run-stats a:focus-visible {
    color: #344054;
    background: #fff;
    box-shadow: 0 8px 22px rgba(16, 24, 40, 0.12);
    transform: translateY(-2px);
}

.health-run-stats strong {
    display: block;
    margin-top: 4px;
    color: #344054;
    font-size: 18px;
}

.health-last-message {
    margin: 0;
    color: var(--muted);
    font-size: 11px;
}

.cron-setup {
    display: grid;
    align-items: center;
    grid-template-columns: minmax(240px, 0.7fr) minmax(360px, 1.3fr);
    gap: 16px;
    margin-top: 16px;
    border: 1px dashed #d0d5dd;
    border-radius: 14px;
    padding: 16px 18px;
    background: #f9fafb;
}

.cron-setup strong {
    font-size: 13px;
}

.cron-setup p {
    margin: 5px 0 0;
    color: var(--muted);
    font-size: 11px;
    line-height: 1.55;
}

.cron-command {
    overflow: hidden;
    border: 1px solid #d0d5dd;
    border-radius: 10px;
    padding: 11px 13px;
    color: #344054;
    background: #fff;
    font-family: Consolas, "SFMono-Regular", monospace;
    font-size: 11px;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
}

.panel {
    margin-bottom: 20px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: #fff;
    box-shadow: var(--shadow);
}

.create-panel {
    padding: 24px;
}

.settings-panel {
    padding: 24px;
}

.settings-form {
    display: grid;
    gap: 18px;
}

.ui-settings-tabs {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    border: 1px solid #e4e7ec;
    border-radius: 14px;
    padding: 6px;
    background: #f8fafc;
}

.anomaly-template-picker {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.anomaly-template-choice {
    display: grid;
    gap: 7px;
    border: 1px solid #e4e7ec;
    border-radius: 14px;
    padding: 12px;
    background: #fff;
    cursor: pointer;
}

.anomaly-template-choice:has(input:checked) {
    border-color: var(--primary);
    box-shadow: 0 0 0 3px rgba(91, 92, 226, 0.12);
}

.anomaly-template-choice input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.anomaly-template-choice strong,
.anomaly-template-choice small {
    display: block;
}

.anomaly-template-choice small {
    color: var(--muted);
    line-height: 1.5;
}

.anomaly-template-preview {
    position: relative;
    display: block;
    height: 76px;
    overflow: hidden;
    border-radius: 10px;
    background: #111827;
}

.anomaly-template-preview::before {
    position: absolute;
    inset: 16px 26px;
    border: 1px solid rgba(255, 255, 255, 0.38);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.09);
    content: "";
}

.anomaly-template-preview i,
.anomaly-template-preview b {
    position: absolute;
    z-index: 1;
    display: block;
    border-radius: 999px;
    background: #fb7185;
}

.anomaly-template-preview i {
    top: 25px;
    left: 42px;
    width: 17px;
    height: 17px;
}

.anomaly-template-preview b {
    top: 29px;
    right: 42px;
    width: 48px;
    height: 8px;
}

.anomaly-template-preview.is-soft-card {
    background: linear-gradient(135deg, #94a3b8, #c4b5fd);
}

.anomaly-template-preview.is-neon-warning {
    background: #08040f;
    box-shadow: inset 0 0 22px rgba(236, 72, 153, 0.44);
}

.anomaly-template-preview.is-neon-warning::before {
    border-color: #f472b6;
    box-shadow: 0 0 12px rgba(244, 114, 182, 0.62);
}

.anomaly-template-preview.is-minimal-light {
    border: 1px solid #e4e7ec;
    background: #f8fafc;
}

.anomaly-template-preview.is-minimal-light::before {
    border-color: #d0d5dd;
    background: #fff;
}

.ui-settings-tabs button {
    min-height: 42px;
    border: 0;
    border-radius: 10px;
    padding: 9px 12px;
    color: #667085;
    background: transparent;
    font-weight: 700;
    cursor: pointer;
}

.ui-settings-tabs button:hover {
    color: #344054;
    background: #fff;
}

.ui-settings-tabs button.is-active {
    color: #fff;
    background: linear-gradient(135deg, var(--primary), #7f56d9);
    box-shadow: 0 8px 18px rgba(91, 92, 226, 0.22);
}

.settings-tab-panel {
    display: grid;
    gap: 18px;
}

.settings-tab-panel[hidden] {
    display: none;
}

.settings-group {
    display: grid;
    gap: 16px;
    border: 1px solid #eaecf0;
    border-radius: 14px;
    padding: 18px;
    background: #fcfcfd;
}

.settings-group-heading h3 {
    margin: 0 0 5px;
    font-size: 16px;
}

.settings-group-heading p {
    margin: 0;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.6;
}

.settings-subtitle {
    margin: 6px 0 -2px;
    color: #344054;
    font-size: 13px;
}

.settings-stack {
    display: grid;
    gap: 12px;
}

.qr-block-editor {
    display: grid;
    gap: 14px;
    border: 1px dashed #cbd5e1;
    border-radius: 14px;
    padding: 15px;
    background: #f8fafc;
}

.qr-block-editor-heading,
.qr-block-item-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

.qr-block-editor-heading p {
    margin: 0;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.6;
}

.qr-block-list {
    display: grid;
    gap: 12px;
}

.qr-block-editor-item {
    display: grid;
    gap: 13px;
    border: 1px solid #e4e7ec;
    border-radius: 13px;
    padding: 15px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(16, 24, 40, 0.05);
}

.qr-block-item-toolbar strong {
    color: #344054;
    font-size: 13px;
}

.qr-block-item-toolbar > div {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.field-help {
    color: var(--muted);
    font-size: 11px;
    line-height: 1.5;
}

.blur-field input[type="range"] {
    padding: 0;
    accent-color: var(--primary);
}

.settings-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.settings-grid-three {
    grid-template-columns: minmax(0, 2fr) minmax(160px, 0.55fr);
}

.settings-grid-three-equal {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.color-field input[type="color"] {
    min-height: 44px;
    padding: 5px;
    cursor: pointer;
}

.settings-option {
    display: grid;
    gap: 13px;
    border-top: 1px dashed #d0d5dd;
    padding-top: 16px;
}

.switch-field {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
}

.switch-field input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
}

.switch-control {
    position: relative;
    width: 42px;
    height: 24px;
    border-radius: 999px;
    background: #d0d5dd;
    transition: 160ms ease;
}

.switch-control::after {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    content: "";
    background: #fff;
    box-shadow: 0 2px 6px rgba(16, 24, 40, 0.24);
    transition: 160ms ease;
}

.switch-field input:checked + .switch-control {
    background: var(--primary);
}

.switch-field input:checked + .switch-control::after {
    transform: translateX(18px);
}

.switch-field input:focus-visible + .switch-control {
    outline: 3px solid rgba(91, 92, 226, 0.22);
    outline-offset: 2px;
}

.switch-field strong {
    font-size: 13px;
}

.settings-actions {
    display: flex;
    justify-content: flex-end;
}

.panel-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;
}

.panel-heading h1 {
    margin: 0;
    font-size: 23px;
    letter-spacing: -0.03em;
}

.domain-pill,
.category-badge,
.status-badge {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 5px 9px;
    white-space: nowrap;
    font-size: 11px;
    font-weight: 700;
}

.domain-pill {
    color: #5925dc;
    background: #f4f3ff;
}

.create-grid {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(240px, 1fr) auto;
    gap: 14px;
    align-items: end;
}

.create-action {
    padding-bottom: 1px;
}

.toolbar {
    display: grid;
    gap: 15px;
    border-bottom: 1px solid var(--line);
    padding: 20px;
}

.search-form {
    display: flex;
    gap: 10px;
}

.search-form input {
    max-width: 520px;
}

.filter-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.health-filter-row {
    align-items: center;
    padding-top: 2px;
}

.filter-label {
    margin-right: 2px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
}

.filter-chip {
    border: 1px solid var(--line);
    border-radius: 999px;
    padding: 7px 11px;
    color: #475467;
    background: #fff;
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
}

.filter-chip.active {
    color: #fff;
    border-color: var(--primary);
    background: var(--primary);
}

.batch-bar {
    display: flex;
    align-items: center;
    gap: 9px;
    border-bottom: 1px solid var(--line);
    padding: 12px 20px;
    background: #fafbfc;
}

.batch-bar strong {
    margin-right: 6px;
    white-space: nowrap;
    font-size: 12px;
}

.batch-bar select,
.batch-bar input {
    width: auto;
    min-height: 36px;
    padding: 7px 9px;
    font-size: 12px;
}

.batch-bar input {
    min-width: 200px;
}

.gallery-map-dialog {
    width: min(760px, calc(100vw - 28px));
    max-height: min(88vh, 860px);
    overflow: hidden;
    border: 0;
    border-radius: 22px;
    padding: 0;
    color: #1d2939;
    background: #fff;
    box-shadow: 0 36px 120px rgba(16, 24, 40, 0.3);
}

.gallery-map-dialog::backdrop {
    background: rgba(15, 23, 42, 0.64);
    backdrop-filter: blur(7px);
}

.gallery-map-dialog-inner {
    max-height: min(88vh, 860px);
    overflow-y: auto;
    padding: 26px;
}

.gallery-map-dialog-heading,
.gallery-map-actions,
.gallery-batch-appids {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
}

.gallery-map-dialog-heading {
    align-items: flex-start;
    margin-bottom: 18px;
}

.gallery-map-dialog-heading h3 {
    margin: 4px 0 6px;
    font-size: 23px;
}

.gallery-map-dialog-heading p,
.gallery-batch-appids p {
    margin: 0;
    color: var(--muted);
}

.dialog-close {
    flex: 0 0 auto;
    border: 0;
    padding: 0 5px;
    color: #667085;
    background: transparent;
    font-size: 30px;
    line-height: 1;
}

.gallery-batch-appids {
    align-items: end;
    border: 1px solid #e4e7ec;
    border-radius: 14px;
    padding: 14px;
    background: #f8fafc;
}

.gallery-batch-appids .field {
    flex: 1;
}

.gallery-map-list {
    display: grid;
    gap: 9px;
    margin: 18px 0;
}

.gallery-map-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 180px;
    align-items: center;
    gap: 14px;
    border: 1px solid #e4e7ec;
    border-radius: 12px;
    padding: 10px 12px;
}

.gallery-map-identity {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 10px;
}

.gallery-map-identity b {
    display: grid;
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    place-items: center;
    border-radius: 9px;
    color: var(--primary);
    background: rgba(91, 92, 226, 0.1);
    font-size: 12px;
}

.gallery-map-identity span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
}

.gallery-map-row input {
    min-height: 38px;
}

.gallery-map-error {
    margin: 0 0 14px;
    border: 1px solid #fecdca;
    border-radius: 10px;
    padding: 10px 12px;
    color: #b42318;
    background: #fffbfa;
    font-size: 13px;
}

.gallery-map-actions {
    justify-content: flex-end;
}

.gallery-admin-main {
    display: grid;
    gap: 20px;
}

.gallery-overview {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 20px;
    padding: 28px;
}

.gallery-overview h1 {
    margin: 5px 0 8px;
    font-size: 28px;
}

.gallery-overview p {
    margin: 0;
    color: var(--muted);
    line-height: 1.7;
}

.gallery-overview-actions {
    display: flex;
    align-items: flex-start;
    gap: 9px;
}

.gallery-output-status {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
}

.gallery-output-status > div {
    border-radius: 13px;
    padding: 13px 15px;
    background: #f8fafc;
}

.gallery-output-status dt {
    color: var(--muted);
    font-size: 11px;
}

.gallery-output-status dd {
    margin: 5px 0 0;
    color: #101828;
    font-weight: 800;
}

.gallery-output-path {
    grid-column: 1 / -1;
    overflow-wrap: anywhere;
    font-size: 12px;
}

.gallery-settings-form {
    padding-top: 4px;
}

.gallery-setting-switches {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 18px;
}

.gallery-items-table {
    min-width: 940px;
}

.gallery-items-table th:first-child,
.gallery-items-table td:first-child {
    width: 150px;
}

.gallery-items-table td strong,
.gallery-items-table td small {
    display: block;
}

.gallery-items-table td small {
    margin-top: 5px;
    color: var(--muted);
}

.gallery-admin-cover {
    display: block;
    width: 126px;
    aspect-ratio: 16 / 9;
    border-radius: 9px;
    object-fit: cover;
    background: #eef2f6;
}

.gallery-items-table .row-actions form {
    margin: 0;
}

/* R24.1 gallery workspace */
.gallery-admin-page {
    background:
        radial-gradient(circle at 8% 3%, rgba(91, 92, 226, 0.08), transparent 27%),
        radial-gradient(circle at 92% 16%, rgba(244, 114, 182, 0.07), transparent 26%),
        #f5f7fb;
}

.gallery-admin-main {
    width: min(100% - 32px, 1360px);
    gap: 24px;
}

.gallery-admin-hero {
    position: relative;
    overflow: hidden;
    border-color: rgba(91, 92, 226, 0.16);
    padding: 30px;
    background:
        linear-gradient(118deg, rgba(255, 255, 255, 0.98), rgba(247, 247, 255, 0.96)),
        #fff;
}

.gallery-admin-hero::after {
    position: absolute;
    top: -95px;
    right: -55px;
    width: 270px;
    height: 270px;
    border: 44px solid rgba(91, 92, 226, 0.055);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.gallery-hero-copy,
.gallery-overview-actions,
.gallery-output-status,
.gallery-output-details {
    position: relative;
    z-index: 1;
}

.gallery-hero-copy {
    max-width: 790px;
}

.gallery-overview-actions {
    align-self: start;
}

.gallery-overview-actions form,
.gallery-admin-item-actions form {
    margin: 0;
}

.gallery-output-status {
    gap: 12px;
    margin-top: 4px;
}

.gallery-output-status > div {
    min-height: 88px;
    border: 1px solid #eaecf5;
    padding: 15px 17px;
    background: rgba(255, 255, 255, 0.8);
    box-shadow: 0 8px 24px rgba(16, 24, 40, 0.035);
}

.gallery-output-status dd {
    display: flex;
    min-height: 26px;
    align-items: center;
    gap: 7px;
    font-size: 18px;
}

.gallery-output-status dd small {
    color: var(--muted);
    font-size: 11px;
    font-weight: 650;
}

.gallery-output-status .gallery-date-value {
    font-size: 13px;
}

.gallery-status-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #f79009;
    box-shadow: 0 0 0 4px rgba(247, 144, 9, 0.12);
}

.gallery-status-dot.is-ready {
    background: #12b76a;
    box-shadow: 0 0 0 4px rgba(18, 183, 106, 0.12);
}

.gallery-output-details {
    grid-column: 1 / -1;
    width: fit-content;
    color: var(--muted);
    font-size: 12px;
}

.gallery-output-details summary {
    color: #4f46c8;
    font-weight: 750;
    cursor: pointer;
}

.gallery-output-details p {
    margin-top: 9px;
}

.gallery-output-details code,
.gallery-settings-footer code {
    overflow-wrap: anywhere;
    color: #344054;
    font-family: Consolas, "SFMono-Regular", monospace;
}

.gallery-settings-form {
    display: grid;
    gap: 16px;
    padding: 0;
}

.gallery-settings-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: 23px 25px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(16, 24, 40, 0.045);
}

.gallery-settings-heading h2,
.gallery-settings-card h3 {
    margin: 5px 0 0;
}

.gallery-settings-heading p,
.gallery-settings-card-title p {
    margin: 7px 0 0;
    color: var(--muted);
    line-height: 1.6;
}

.gallery-settings-layout {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.gallery-settings-card {
    padding: 23px;
    box-shadow: 0 12px 34px rgba(16, 24, 40, 0.045);
}

.gallery-settings-card-wide {
    grid-column: 1 / -1;
}

.gallery-settings-card-title {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    border-bottom: 1px solid #eef0f5;
    margin-bottom: 18px;
    padding-bottom: 16px;
}

.gallery-settings-card-title > span {
    display: grid;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    place-items: center;
    border-radius: 10px;
    color: #4f46c8;
    background: #f0efff;
    font-size: 11px;
    font-weight: 850;
}

.gallery-settings-card-title h3 {
    color: #101828;
    font-size: 17px;
}

.gallery-settings-card-title p {
    font-size: 12px;
}

.gallery-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.gallery-form-grid-three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gallery-field-full {
    grid-column: 1 / -1;
}

.gallery-settings-card .field {
    align-content: start;
}

.gallery-settings-card .field > span {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
}

.gallery-settings-card .field > span small {
    color: #98a2b3;
    font-size: 10px;
    font-weight: 600;
}

.gallery-settings-card input,
.gallery-settings-card select {
    background: #fbfcfe;
}

.gallery-upload-field input[type="file"] {
    border-style: dashed;
    padding: 9px;
    background: #fafaff;
}

.gallery-theme-picker {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.gallery-theme-option {
    position: relative;
    display: grid;
    min-height: 138px;
    align-content: start;
    gap: 5px;
    border: 1px solid #e4e7ec;
    border-radius: 15px;
    padding: 12px;
    background: #fff;
    cursor: pointer;
    transition: 160ms ease;
}

.gallery-theme-option:hover {
    border-color: #b9b4ff;
    transform: translateY(-2px);
}

.gallery-theme-option:has(input:checked) {
    border-color: #6d5ce8;
    box-shadow: 0 0 0 3px rgba(91, 92, 226, 0.11);
}

.gallery-theme-option input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.gallery-theme-swatch {
    position: relative;
    display: block;
    height: 63px;
    overflow: hidden;
    border-radius: 10px;
    background: linear-gradient(135deg, #f472b6, #1c1f2d 66%);
}

.gallery-theme-swatch i,
.gallery-theme-swatch b {
    position: absolute;
    display: block;
    border-radius: 7px;
    background: rgba(255, 255, 255, 0.2);
}

.gallery-theme-swatch i {
    inset: 9px 42% 9px 9px;
}

.gallery-theme-swatch b {
    top: 11px;
    right: 10px;
    width: 29%;
    height: 8px;
    box-shadow: 0 15px 0 rgba(255, 255, 255, 0.12), 0 30px 0 rgba(255, 255, 255, 0.08);
}

.gallery-theme-cyberpunk .gallery-theme-swatch { background: linear-gradient(135deg, #22d3ee, #c084fc 44%, #0a0f1b 72%); }
.gallery-theme-minimalist .gallery-theme-swatch { background: linear-gradient(135deg, #7dd3fc, #182131 69%); }
.gallery-theme-vtuber .gallery-theme-swatch { background: linear-gradient(135deg, #5eead4, #fbbf24 42%, #161e2e 72%); }

.gallery-theme-option strong {
    margin-top: 3px;
    color: #101828;
    font-size: 13px;
}

.gallery-theme-option small {
    color: var(--muted);
    font-size: 10px;
    line-height: 1.45;
}

.gallery-setting-switches {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
}

.gallery-setting-switches .switch-field {
    border: 1px solid #eaecf0;
    border-radius: 12px;
    padding: 11px 12px;
    background: #fbfcfe;
}

.gallery-setting-switches .switch-field strong {
    font-size: 12px;
}

.gallery-settings-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    border: 1px solid #dfddff;
    border-radius: 15px;
    padding: 14px 16px 14px 19px;
    color: var(--muted);
    background: #f9f8ff;
    font-size: 11px;
}

.gallery-library-panel {
    overflow: hidden;
    padding: 0;
}

.gallery-library-heading {
    margin: 0;
    padding: 23px 25px;
}

.gallery-library-heading p {
    margin-bottom: 0;
}

.gallery-empty-state {
    display: grid;
    min-height: 250px;
    place-items: center;
    align-content: center;
    gap: 8px;
    border-top: 1px solid #eef0f3;
    padding: 36px;
    text-align: center;
    background: linear-gradient(180deg, #fcfcfe, #f8f9fc);
}

.gallery-empty-state > span {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 18px;
    color: #6d5ce8;
    background: #efedff;
    font-size: 25px;
}

.gallery-empty-state p {
    max-width: 520px;
    margin: 0 0 7px;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.7;
}

.gallery-admin-items {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    border-top: 1px solid #eef0f3;
    padding: 18px;
    background: #fafbfc;
}

.gallery-admin-item {
    display: grid;
    grid-template-columns: 142px minmax(0, 1fr) auto;
    gap: 15px;
    align-items: center;
    border: 1px solid #e7e9ee;
    border-radius: 15px;
    padding: 11px;
    background: #fff;
    box-shadow: 0 8px 20px rgba(16, 24, 40, 0.035);
}

.gallery-admin-item .gallery-admin-cover {
    width: 142px;
    border-radius: 11px;
}

.gallery-admin-cover-empty {
    display: grid;
    place-items: center;
    color: #98a2b3;
    font-size: 10px;
}

.gallery-admin-item-copy {
    display: grid;
    min-width: 0;
    gap: 5px;
}

.gallery-admin-item-copy > strong {
    overflow: hidden;
    color: #101828;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
}

.gallery-admin-item-copy > span,
.gallery-admin-item-copy > small {
    overflow: hidden;
    color: var(--muted);
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 10px;
}

.gallery-admin-item-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    font-size: 11px;
}

.gallery-admin-item-actions {
    display: grid;
    gap: 7px;
}

@media (max-width: 1120px) {
    .gallery-theme-picker,
    .gallery-form-grid-three {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gallery-admin-items {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .gallery-admin-main {
        width: min(100% - 20px, 1360px);
    }

    .gallery-settings-heading,
    .gallery-settings-footer,
    .gallery-library-heading {
        align-items: stretch;
        flex-direction: column;
    }

    .gallery-settings-layout,
    .gallery-form-grid,
    .gallery-form-grid-three,
    .gallery-theme-picker,
    .gallery-setting-switches {
        grid-template-columns: 1fr;
    }

    .gallery-settings-card-wide,
    .gallery-field-full {
        grid-column: auto;
    }

    .gallery-settings-heading .btn,
    .gallery-settings-footer .btn {
        width: 100%;
    }

    .gallery-admin-item {
        grid-template-columns: 108px minmax(0, 1fr);
    }

    .gallery-admin-item .gallery-admin-cover {
        width: 108px;
    }

    .gallery-admin-item-actions {
        grid-column: 1 / -1;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gallery-admin-item-actions .btn {
        width: 100%;
    }
}

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

.links-table {
    width: 100%;
    min-width: 1340px;
    border-collapse: collapse;
    table-layout: fixed;
}

.links-table th,
.links-table td {
    border-bottom: 1px solid #eef0f3;
    padding: 13px 12px;
    text-align: left;
    vertical-align: middle;
    font-size: 12px;
}

.links-table th {
    color: #667085;
    background: #fcfcfd;
    font-size: 11px;
    letter-spacing: 0.02em;
}

.links-table th:first-child,
.links-table td:first-child {
    width: 44px;
    text-align: center;
}

.links-table th:nth-child(2) {
    width: 100px;
}

.links-table th:nth-child(3) {
    width: 260px;
}

.links-table th:nth-child(4) {
    width: 110px;
}

.links-table th:nth-child(5) {
    width: 240px;
}

.links-table th:nth-child(6) {
    width: 112px;
}

.links-table th:nth-child(7) {
    width: 142px;
}

.links-table th:nth-child(8) {
    width: 145px;
}

.links-table th:nth-child(9) {
    width: 128px;
}

.links-table tbody tr:hover {
    background: #fafbff;
}

.links-table tbody tr.row-invalid {
    background: #fff8f7;
}

.links-table tbody tr.row-invalid:hover {
    background: #fff1f0;
}

.links-table input[type="checkbox"] {
    width: 16px;
    height: 16px;
    accent-color: var(--primary);
}

.table-link-copy {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 7px;
}

.table-hyperlink {
    min-width: 0;
    color: #4f46c8;
    font-weight: 750;
    text-decoration: none;
}

.table-hyperlink:hover,
.table-hyperlink:focus-visible {
    color: #3730a3;
    text-decoration: underline;
}

.target-link-copy .table-hyperlink {
    max-width: 320px;
}

.table-copy-action {
    flex: 0 0 auto;
    border: 1px solid #d9d6fe;
    border-radius: 999px;
    padding: 3px 7px;
    color: #4f46c8;
    background: #f4f3ff;
    font-size: 10px;
    font-weight: 800;
    cursor: pointer;
}

.table-copy-action:hover,
.table-copy-action:focus-visible {
    border-color: #9b8afb;
    background: #ebe9fe;
}

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

.category-badge {
    color: #344054;
    background: #f2f4f7;
}

.status-badge.is-active {
    color: #027a48;
    background: #ecfdf3;
}

.status-badge.is-disabled {
    color: #b42318;
    background: #fef3f2;
}

.cell-actions {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 6px;
}

.inline-action {
    border: 0;
    padding: 0;
    color: #4f46c8;
    background: transparent;
    font-size: 11px;
    font-weight: 800;
    cursor: pointer;
}

.inline-action:hover {
    text-decoration: underline;
}

.health-badge {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 5px 8px;
    white-space: nowrap;
    font-size: 11px;
    font-weight: 700;
}

.health-ok {
    color: #027a48;
    background: #ecfdf3;
}

.health-bad {
    color: #b42318;
    background: #fef3f2;
}

.health-warn {
    color: #b54708;
    background: #fffaeb;
}

.health-muted {
    color: #475467;
    background: #f2f4f7;
}

.health-time {
    color: #98a2b3;
    font-size: 9px;
    white-space: nowrap;
}

.health-code {
    color: #667085;
    font-family: Consolas, "SFMono-Regular", monospace;
    font-size: 9px;
    overflow-wrap: anywhere;
}

.row-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.empty-cell {
    padding: 48px !important;
    text-align: center !important;
    color: var(--muted);
}

.pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 20px;
    color: var(--muted);
    font-size: 12px;
}

.pagination > div {
    display: flex;
    gap: 8px;
}

.modal {
    width: min(92vw, 620px);
    border: 0;
    border-radius: 20px;
    padding: 0;
    color: var(--ink);
    background: transparent;
}

.modal::backdrop {
    background: rgba(16, 24, 40, 0.58);
    backdrop-filter: blur(3px);
}

.modal-card {
    display: grid;
    gap: 17px;
    border-radius: 20px;
    padding: 25px;
    background: #fff;
    box-shadow: 0 30px 90px rgba(16, 24, 40, 0.26);
}

.modal-heading,
.modal-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.modal-heading h2 {
    margin: 0;
}

.modal-close {
    display: grid;
    width: 36px;
    height: 36px;
    place-items: center;
    border: 1px solid var(--line);
    border-radius: 9px;
    color: #667085;
    background: #fff;
    font-size: 22px;
    cursor: pointer;
}

.modal-actions {
    justify-content: flex-end;
    margin-top: 4px;
}

.copy-toast {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 50;
    border-radius: 10px;
    padding: 11px 15px;
    color: #fff;
    background: #101828;
    box-shadow: 0 12px 30px rgba(16, 24, 40, 0.24);
    opacity: 0;
    transform: translateY(10px);
    pointer-events: none;
    transition: 180ms ease;
    font-size: 12px;
}

.copy-toast.show {
    opacity: 1;
    transform: translateY(0);
}

@keyframes card-in {
    from { opacity: 0; transform: translateY(20px) scale(0.98); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes qr-pulse {
    0%, 100% { transform: scale(1); opacity: 0.92; }
    50% { transform: scale(1.018); opacity: 1; }
}

@keyframes qr-overlay-scan {
    from { transform: translateY(-10%); }
    to { transform: translateY(470%); }
}

@keyframes qr-overlay-shimmer {
    0% { transform: translateX(-220%) rotate(18deg); }
    100% { transform: translateX(520%) rotate(18deg); }
}

@keyframes qr-overlay-pulse {
    0% { opacity: 0; transform: scale(0.25); }
    35% { opacity: 0.9; }
    100% { opacity: 0; transform: scale(1.7); }
}

@keyframes qr-overlay-grid {
    from { background-position: 0 0, 0 0; }
    to { background-position: 22px 22px, 22px 22px; }
}

@keyframes status-pulse {
    0%, 100% { opacity: 0.55; }
    50% { opacity: 1; }
}

@keyframes loading-bounce {
    0%, 100% { transform: translateY(0); opacity: 0.45; }
    50% { transform: translateY(-7px); opacity: 1; }
}

@keyframes anime-float {
    0%, 100% { transform: translateY(0) rotate(0); }
    50% { transform: translateY(-10px) rotate(8deg); }
}

@keyframes qr-ticker-scroll {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

@media (max-width: 980px) {
    .stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .create-grid {
        grid-template-columns: 1fr 1fr;
    }

    .settings-grid,
    .settings-grid-three,
    .settings-grid-three-equal,
    .health-automation-grid,
    .cron-setup {
        grid-template-columns: 1fr;
    }

    .create-action {
        grid-column: 1 / -1;
    }

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

@media (max-width: 640px) {
    .auth-card {
        padding: 28px 22px;
    }

    .qr-card,
    .loading-card,
    .error-card,
    .home-card {
        border-radius: 21px;
        padding: 27px 20px;
    }

    .anime-home-shell {
        padding: 22px 14px 70px;
    }

    .anime-home-card {
        width: min(100%, 620px);
        min-height: 0;
        grid-template-columns: 1fr;
        border-radius: 25px;
    }

    .anime-home-visual {
        min-height: 285px;
    }

    .anime-home-content {
        padding: 34px 27px 36px;
    }

    .anime-home-copy {
        margin-top: 34px;
    }

    .anime-home-copy h1 {
        font-size: clamp(35px, 11vw, 49px);
    }

    .anime-visual-caption {
        right: 24px;
        bottom: 23px;
        left: 24px;
    }

    .qr-frame {
        width: min(100%, 290px);
    }

    .admin-header {
        padding: 10px 14px;
    }

    .admin-title small,
    .admin-account > span {
        display: none;
    }

    .admin-nav {
        gap: 2px;
    }

    .admin-nav a {
        padding: 7px 8px;
        font-size: 11px;
    }

    .admin-main {
        width: min(100% - 20px, 1480px);
        margin-top: 14px;
    }

    .anomaly-template-picker {
        grid-template-columns: 1fr;
    }

    .table-link-copy {
        align-items: flex-start;
        flex-direction: column;
    }

    .stats-grid {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .analytics-panel {
        align-items: flex-start;
        flex-direction: column;
        padding: 20px;
    }

    .health-automation-panel {
        padding: 17px;
    }

    .health-run-heading {
        align-items: flex-start;
        flex-direction: column;
    }

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

    .cron-command {
        width: 100%;
    }

    .invalid-summary {
        align-items: flex-start;
        flex-direction: column;
    }

    .invalid-code-list {
        justify-content: flex-start;
    }

    .conversion-chart {
        align-self: center;
    }

    .stat-card {
        padding: 15px;
    }

    .stat-card > strong {
        font-size: 23px;
    }

    .create-panel {
        padding: 17px;
    }

    .settings-panel {
        padding: 17px;
    }

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

    .qr-block-editor-heading,
    .qr-block-item-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .qr-block-editor-heading .btn {
        width: 100%;
    }

    .panel-heading {
        display: block;
    }

    .domain-pill {
        margin-top: 12px;
    }

    .create-grid {
        grid-template-columns: 1fr;
    }

    .create-action {
        grid-column: auto;
    }

    .create-action .btn {
        width: 100%;
    }

    .search-form {
        display: grid;
        grid-template-columns: 1fr auto;
    }

    .batch-bar {
        align-items: stretch;
        flex-direction: column;
    }

    .batch-bar select,
    .batch-bar input {
        width: 100%;
    }

    .gallery-map-dialog-inner {
        padding: 18px;
    }

    .gallery-map-dialog-heading,
    .gallery-batch-appids,
    .gallery-map-actions,
    .gallery-overview,
    .gallery-overview-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .gallery-map-row {
        grid-template-columns: 1fr;
    }

    .gallery-overview {
        display: flex;
        padding: 20px;
    }

    .gallery-overview-actions .btn,
    .gallery-overview-actions form,
    .gallery-overview-actions form .btn {
        width: 100%;
    }

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

    .gallery-setting-switches {
        align-items: stretch;
        flex-direction: column;
    }

    .pagination {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* R25.3 画廊字体、颜色与特效编辑器 */
.gallery-form-grid-four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.gallery-style-editor {
    overflow: hidden;
}

.gallery-font-status-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 18px;
}

.gallery-font-status {
    display: grid;
    gap: 4px;
    border: 1px solid #e4e7ec;
    border-radius: 12px;
    padding: 12px;
    color: #475467;
    background: #f9fafb;
}

.gallery-font-status strong {
    color: #344054;
    font-size: 13px;
}

.gallery-font-status span {
    font-size: 11px;
    line-height: 1.55;
}

.gallery-font-status.is-installed {
    border-color: #abefc6;
    color: #067647;
    background: #ecfdf3;
}

.gallery-font-upload-box {
    margin: 18px 0;
    border: 1px dashed #cfd4dc;
    border-radius: 14px;
    padding: 13px 15px;
    background: #fafbfc;
}

.gallery-font-upload-box summary {
    color: #344054;
    font-weight: 800;
    cursor: pointer;
}

.gallery-font-upload-box > p {
    margin: 8px 0 14px;
    color: #667085;
    font-size: 12px;
    line-height: 1.65;
}

.gallery-color-section {
    margin-top: 18px;
    border-top: 1px solid #eaecf0;
    padding-top: 18px;
}

.gallery-color-section h4 {
    margin: 0 0 14px;
    color: #344054;
    font-size: 14px;
}

.gallery-color-control {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 8px;
}

.gallery-color-control input[type="color"] {
    width: 48px;
    height: 44px;
    border: 1px solid #d0d5dd;
    border-radius: 10px;
    padding: 4px;
    cursor: pointer;
}

.gallery-color-control input[type="text"],
.gallery-color-control input:not([type]) {
    min-width: 0;
    font-family: Consolas, "SFMono-Regular", monospace;
    text-transform: lowercase;
}

.gallery-effect-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 18px;
}

.gallery-effect-card {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    min-width: 0;
    border: 1px solid #e4e7ec;
    border-radius: 14px;
    padding: 15px;
    background: #fcfcfd;
}

.gallery-effect-card legend {
    padding: 0 8px;
    color: #344054;
    font-size: 13px;
    font-weight: 800;
}

.gallery-effect-card .switch-field {
    align-self: end;
}

.gallery-style-preview {
    position: relative;
    min-height: 300px;
    overflow: hidden;
    margin-top: 20px;
    border: 1px solid #d0d5dd;
    border-radius: 18px;
    color: var(--preview-page-text, #fff);
    background: #101828;
}

.gallery-style-preview-background,
.gallery-style-preview-overlay {
    position: absolute;
    inset: 0;
}

.gallery-style-preview-background {
    background:
        radial-gradient(circle at 20% 18%, color-mix(in srgb, var(--preview-accent, #f472b6) 35%, transparent), transparent 35%),
        linear-gradient(135deg, #182230, #344054);
    background-position: var(--preview-background-position, center);
    background-size: cover;
}

.gallery-style-preview-overlay {
    background: color-mix(in srgb, var(--preview-overlay, #020617) var(--preview-overlay-opacity, 0%), transparent);
}

.gallery-style-preview-content {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    gap: 10px;
    min-height: 300px;
    padding: 24px;
    text-align: center;
    font-family: var(--preview-body-font, sans-serif);
}

.gallery-style-preview-content > h4 {
    margin: 0;
    color: var(--preview-title-color, #fff);
    font-family: var(--preview-title-font, sans-serif);
    font-size: clamp(28px, 6vw, 48px);
    font-weight: 500;
    text-shadow: var(--preview-title-shadow, none);
    -webkit-text-stroke: var(--preview-title-stroke, 0 transparent);
}

.gallery-style-preview-content > p {
    margin: 0;
    color: var(--preview-subtitle-color, #dbe4f0);
}

.gallery-style-preview-content article {
    display: grid;
    width: min(100%, 360px);
    gap: 10px;
    border: 1px solid var(--preview-border, rgba(244, 114, 182, .48));
    border-radius: 16px;
    padding: 18px;
    color: var(--preview-card-text, #d6dbe6);
    background: var(--preview-card-background, rgba(28, 31, 45, .93));
    font-family: var(--preview-card-font, sans-serif);
    backdrop-filter: blur(10px);
}

.gallery-style-preview-content article strong {
    color: var(--preview-card-title-color, #fff);
    font-family: var(--preview-card-title-font, sans-serif);
    font-size: 20px;
    text-shadow: var(--preview-card-title-shadow, none);
    -webkit-text-stroke: var(--preview-card-title-stroke, 0 transparent);
}

.gallery-style-preview-content article span {
    font-size: 13px;
}

.gallery-style-preview-content article button {
    min-height: 38px;
    border: 0;
    border-radius: 10px;
    color: #101828;
    background: linear-gradient(135deg, var(--preview-accent, #f472b6), var(--preview-accent2, #f9a8d4));
    font-family: inherit;
    font-weight: 800;
}

@media (max-width: 980px) {
    .gallery-form-grid-four,
    .gallery-font-status-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .gallery-form-grid-four,
    .gallery-font-status-grid,
    .gallery-effect-grid,
    .gallery-effect-card {
        grid-template-columns: 1fr;
    }
}

/* R25.4 画廊方案、动画、按钮、页脚与 SEO */
.gallery-preset-manager {
    margin: 0 0 18px;
    border: 1px solid #d6dbe4;
    border-radius: 16px;
    padding: 16px;
    background: linear-gradient(135deg, #f8f9fc, #fff);
}

.gallery-preset-actions {
    display: flex;
    align-items: end;
    flex-wrap: wrap;
    gap: 8px;
    padding-top: 23px;
}

.gallery-help {
    margin: 10px 0 0;
    color: #667085;
    font-size: 12px;
    line-height: 1.65;
}

.gallery-motion-button-grid,
.gallery-seo-layout {
    display: grid;
    gap: 16px;
    margin-top: 18px;
}

.gallery-motion-button-grid {
    grid-template-columns: minmax(280px, .62fr) minmax(0, 1.38fr);
}

.gallery-seo-layout {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gallery-motion-button-grid .gallery-effect-card,
.gallery-seo-layout .gallery-effect-card {
    align-content: start;
}

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

.gallery-button-style-samples {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin-top: 4px;
}

.gallery-button-sample {
    min-height: 36px;
    border: 1px solid #d0d5dd;
    border-radius: 10px;
    padding: 7px 8px;
    color: #344054;
    background: #fff;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

.button-sample-gradient { border: 0; color: #101828; background: linear-gradient(135deg, #f472b6, #c084fc); }
.button-sample-glass { color: #fff; background: rgba(71,84,103,.72); backdrop-filter: blur(8px); }
.button-sample-outline { color: #5b5ce2; border-color: #5b5ce2; background: transparent; }
.button-sample-neon { color: #fff; border-color: #22d3ee; background: #07111f; box-shadow: 0 0 10px rgba(34,211,238,.45); }
.button-sample-pill { border: 0; border-radius: 999px; color: #101828; background: linear-gradient(135deg, #5eead4, #fbbf24); }
.button-sample-soft { border: 0; color: #175cd3; background: #eff8ff; }
.button-sample-pixel { border: 2px solid #7f56d9; border-radius: 2px; color: #fff; background: #101828; box-shadow: 3px 3px 0 #7f56d9; }
.button-sample-aurora { border: 0; color: #101828; background: linear-gradient(115deg, #67e8f9, #c084fc, #bef264); box-shadow: 0 7px 18px rgba(126, 87, 230, .24); }
.button-sample-candy { border-color: #fff; color: #4a235a; background: linear-gradient(180deg, #fff 0 8%, #f9a8d4 12% 58%, #93c5fd); box-shadow: 0 4px 0 #9d68b1; }
.button-sample-comic { border: 3px solid #111827; color: #111827; background: #fff7b2; box-shadow: 4px 4px 0 #111827; }
.button-sample-metal { border-color: #d0d5dd; color: #101828; background: linear-gradient(180deg, #fff, #aeb9c6 48%, #667085 51%, #e4e7ec); box-shadow: inset 0 1px #fff, 0 4px 8px rgba(16, 24, 40, .22); }
.button-sample-liquid { border-color: rgba(255,255,255,.7); color: #fff; background: linear-gradient(135deg, rgba(94,234,212,.68), rgba(168,85,247,.62)); backdrop-filter: blur(12px); box-shadow: inset 0 1px rgba(255,255,255,.6), 0 7px 16px rgba(71,84,103,.25); }

.gallery-key-control {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
}

.gallery-key-control input {
    min-width: 0;
    font-family: Consolas, "SFMono-Regular", monospace;
}

.gallery-indexnow-status {
    grid-column: 1 / -1;
    display: grid;
    gap: 5px;
    border: 1px solid #d0d5dd;
    border-radius: 12px;
    padding: 12px;
    color: #475467;
    background: #fff;
    font-size: 12px;
}

.gallery-indexnow-status code {
    overflow-wrap: anywhere;
    white-space: normal;
}

.gallery-style-preview {
    --preview-button-radius: 12px;
    --preview-hover-lift: 6px;
    --preview-hover-scale: 1.03;
    --preview-motion-duration: 520ms;
}

.gallery-style-preview-content article {
    transform-origin: center;
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.gallery-style-preview[data-enter-style="fade-up"] .gallery-style-preview-content article.is-preview-replay { animation: previewFadeUp var(--preview-motion-duration) ease-out both; }
.gallery-style-preview[data-enter-style="scale-in"] .gallery-style-preview-content article.is-preview-replay { animation: previewScaleIn var(--preview-motion-duration) ease-out both; }
.gallery-style-preview[data-enter-style="slide-left"] .gallery-style-preview-content article.is-preview-replay { animation: previewSlideLeft var(--preview-motion-duration) ease-out both; }
.gallery-style-preview[data-enter-style="flip-in"] .gallery-style-preview-content article.is-preview-replay { animation: previewFlipIn var(--preview-motion-duration) ease-out both; }

@keyframes previewFadeUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
@keyframes previewScaleIn { from { opacity: 0; transform: scale(.9); } to { opacity: 1; transform: scale(1); } }
@keyframes previewSlideLeft { from { opacity: 0; transform: translateX(32px); } to { opacity: 1; transform: none; } }
@keyframes previewFlipIn { from { opacity: 0; transform: perspective(700px) rotateX(14deg); } to { opacity: 1; transform: none; } }

.gallery-style-preview[data-hover-style="lift"] article:hover { transform: translateY(calc(-1 * var(--preview-hover-lift))); }
.gallery-style-preview[data-hover-style="lift-glow"] article:hover { transform: translateY(calc(-1 * var(--preview-hover-lift))) scale(var(--preview-hover-scale)); box-shadow: 0 18px 45px rgba(0,0,0,.35), 0 0 22px color-mix(in srgb, var(--preview-accent) 55%, transparent); }
.gallery-style-preview[data-hover-style="zoom"] article:hover { transform: scale(var(--preview-hover-scale)); }
.gallery-style-preview[data-hover-style="tilt"] article:hover { transform: translateY(calc(-.65 * var(--preview-hover-lift))) rotate(.7deg) scale(var(--preview-hover-scale)); }

.gallery-style-preview-content article button {
    border-radius: var(--preview-button-radius);
}

.gallery-style-preview[data-button-style="glass"] article button { border: 1px solid rgba(255,255,255,.3); color: #fff; background: rgba(255,255,255,.12); backdrop-filter: blur(10px); }
.gallery-style-preview[data-button-style="outline"] article button { border: 1px solid var(--preview-accent); color: var(--preview-accent); background: transparent; }
.gallery-style-preview[data-button-style="neon"] article button { border: 1px solid var(--preview-accent); color: #fff; background: #07111f; box-shadow: 0 0 14px color-mix(in srgb, var(--preview-accent) 50%, transparent); }
.gallery-style-preview[data-button-style="pill"] article button { border: 0; border-radius: 999px; color: #101828; background: linear-gradient(135deg, var(--preview-accent), var(--preview-accent2)); }
.gallery-style-preview[data-button-style="soft"] article button { border: 0; color: color-mix(in srgb, var(--preview-accent) 75%, #0f172a); background: color-mix(in srgb, var(--preview-accent) 16%, #fff); }
.gallery-style-preview[data-button-style="pixel"] article button { border: 2px solid var(--preview-accent); border-radius: 2px; color: #fff; background: #0b1020; box-shadow: 4px 4px 0 var(--preview-accent); }
.gallery-style-preview[data-button-style="aurora"] article button { border: 0; color: #101828; background: linear-gradient(115deg, var(--preview-accent), var(--preview-accent2), #bef264); box-shadow: 0 7px 18px color-mix(in srgb, var(--preview-accent) 30%, transparent); }
.gallery-style-preview[data-button-style="candy"] article button { border: 1px solid #fff; color: #4a235a; background: linear-gradient(180deg, #fff 0 8%, color-mix(in srgb,var(--preview-accent) 62%,#fbcfe8) 12% 58%, color-mix(in srgb,var(--preview-accent2) 64%,#bfdbfe)); box-shadow: 0 5px 0 color-mix(in srgb,var(--preview-accent2) 52%,#7e5a91); }
.gallery-style-preview[data-button-style="comic"] article button { border: 3px solid #111827; color: #111827; background: #fff7b2; box-shadow: 4px 4px 0 #111827; }
.gallery-style-preview[data-button-style="metal"] article button { border: 1px solid #d0d5dd; color: #101828; background: linear-gradient(180deg,#fff,#aeb9c6 48%,#667085 51%,#e4e7ec); box-shadow: inset 0 1px #fff,0 5px 12px rgba(16,24,40,.25); }
.gallery-style-preview[data-button-style="liquid"] article button { border: 1px solid rgba(255,255,255,.55); color: #fff; background: linear-gradient(135deg,color-mix(in srgb,var(--preview-accent) 42%,transparent),color-mix(in srgb,var(--preview-accent2) 36%,transparent)); backdrop-filter: blur(14px); box-shadow: inset 0 1px rgba(255,255,255,.6),0 8px 18px rgba(15,23,42,.22); }
.gallery-style-preview.is-button-glow article button { box-shadow: 0 0 18px color-mix(in srgb, var(--preview-accent) 52%, transparent); }

@media (max-width: 1100px) {
    .gallery-seo-layout { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
    .gallery-motion-button-grid,
    .gallery-form-grid-two { grid-template-columns: 1fr; }
    .gallery-button-style-samples { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .gallery-preset-actions { padding-top: 0; }
    .gallery-key-control { grid-template-columns: 1fr; }
}

/* R25.4 画廊视觉方案、卡片动画、按钮 UI、页脚与 SEO 控制 */


/* R25.5 ACG 二次元主题色卡 */
.gallery-acg-preset-section {
    margin-top: 16px;
    border-top: 1px dashed #d0d5dd;
    padding-top: 14px;
}
.gallery-acg-preset-heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}
.gallery-acg-preset-heading strong { color: #344054; font-size: 14px; }
.gallery-acg-preset-heading span { color: #667085; font-size: 12px; }
.gallery-acg-preset-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}
.gallery-acg-preset-card {
    display: grid;
    gap: 7px;
    min-width: 0;
    border: 1px solid #d0d5dd;
    border-radius: 13px;
    padding: 10px;
    text-align: left;
    color: #344054;
    background: #fff;
    cursor: pointer;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}
.gallery-acg-preset-card:hover {
    transform: translateY(-2px);
    border-color: #9b8afb;
    box-shadow: 0 10px 24px rgba(52,64,84,.12);
}
.gallery-acg-preset-card.is-active {
    border-color: #7f56d9;
    box-shadow: 0 0 0 3px rgba(127,86,217,.13), 0 10px 24px rgba(52,64,84,.12);
}
.gallery-acg-preset-card strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
}
.gallery-acg-preset-card small {
    display: -webkit-box;
    overflow: hidden;
    min-height: 34px;
    color: #667085;
    font-size: 11px;
    line-height: 1.5;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.gallery-acg-preset-swatches {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    overflow: hidden;
    height: 26px;
    border: 1px solid rgba(16,24,40,.08);
    border-radius: 8px;
}
.gallery-acg-preset-swatches i { background: var(--swatch); }
@media (max-width: 1100px) { .gallery-acg-preset-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 760px) {
    .gallery-acg-preset-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .gallery-acg-preset-heading { align-items: flex-start; flex-direction: column; gap: 3px; }
}
@media (max-width: 430px) { .gallery-acg-preset-grid { grid-template-columns: 1fr; } }


/* R25.6 独立卡片视觉主题 */
.gallery-card-visual-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:14px}
.gallery-card-visual-option{position:relative;display:grid;grid-template-columns:92px 1fr;gap:13px;align-items:center;min-height:118px;border:1px solid var(--border);border-radius:17px;padding:13px;background:rgba(255,255,255,.035);cursor:pointer;transition:.18s}
.gallery-card-visual-option:hover{border-color:rgba(103,232,249,.55);transform:translateY(-2px)}
.gallery-card-visual-option:has(input:checked){border-color:#67e8f9;background:rgba(103,232,249,.08);box-shadow:0 0 0 2px rgba(103,232,249,.12)}
.gallery-card-visual-option input{position:absolute;opacity:0;pointer-events:none}
.gallery-card-visual-preview{position:relative;display:block;width:86px;height:88px;overflow:hidden;border:2px solid #70d8ff;border-radius:16px;background:linear-gradient(145deg,#19253a,#0e1525);box-shadow:0 12px 24px rgba(0,0,0,.3)}
.gallery-card-visual-preview i{display:block;height:42px;margin:7px;border-radius:9px;background:linear-gradient(135deg,#f472b6,#67e8f9)}
.gallery-card-visual-preview b,.gallery-card-visual-preview em{display:block;height:5px;margin:7px 10px;border-radius:99px;background:rgba(255,255,255,.72)}
.gallery-card-visual-preview em{width:58%;background:rgba(255,255,255,.35)}
.gallery-card-visual-copy{display:grid;gap:5px}.gallery-card-visual-copy strong{font-size:.98rem}.gallery-card-visual-copy small{color:var(--muted);line-height:1.45}.gallery-card-visual-copy mark{justify-self:start;border-radius:999px;padding:3px 8px;color:#b9efff;background:rgba(34,211,238,.1);font-size:.7rem}
.visual-cyberpunk .gallery-card-visual-preview{border-radius:0;clip-path:polygon(0 10px,10px 0,75% 0,100% 20px,100% 100%,15px 100%,0 82%);box-shadow:0 0 18px rgba(34,211,238,.45)}
.visual-minimalist .gallery-card-visual-preview{border-width:1px;border-radius:9px;background:#f8fafc;box-shadow:0 8px 16px rgba(15,23,42,.15)}.visual-minimalist .gallery-card-visual-preview b,.visual-minimalist .gallery-card-visual-preview em{background:#64748b}
.visual-vtuber .gallery-card-visual-preview{border-radius:14px 14px 24px 24px;border-color:#5eead4}.visual-vtuber .gallery-card-visual-preview::after{content:"✦";position:absolute;right:7px;bottom:4px;color:#fbbf24}
.visual-manga .gallery-card-visual-preview{border:3px solid #111;border-radius:4px;background-image:radial-gradient(#fff 1px,transparent 1px);background-size:6px 6px;box-shadow:5px 5px 0 #f472b6}
.visual-hologram .gallery-card-visual-preview{border-color:transparent;background:linear-gradient(#101827,#101827) padding-box,linear-gradient(135deg,#22d3ee,#c084fc,#f472b6) border-box;box-shadow:0 0 22px rgba(34,211,238,.35)}
.visual-poster .gallery-card-visual-preview i{height:54px;margin:0;border-radius:0}.visual-poster .gallery-card-visual-preview{padding-top:0}
.visual-polaroid .gallery-card-visual-preview{border:7px solid #fff;border-bottom-width:17px;border-radius:3px;background:#fff;transform:rotate(-1deg)}
.visual-ticket .gallery-card-visual-preview{border-style:dashed}.visual-ticket .gallery-card-visual-preview::before,.visual-ticket .gallery-card-visual-preview::after{content:"";position:absolute;top:50%;width:13px;height:13px;border-radius:50%;background:#0f172a}.visual-ticket .gallery-card-visual-preview::before{left:-8px}.visual-ticket .gallery-card-visual-preview::after{right:-8px}
.visual-mecha .gallery-card-visual-preview{border-radius:0;clip-path:polygon(0 12px,12px 0,76% 0,100% 18px,100% 84%,84% 100%,0 100%)}
.visual-idol .gallery-card-visual-preview{border-color:#fff;box-shadow:0 0 20px rgba(244,114,182,.48)}.visual-idol .gallery-card-visual-preview::after{content:"✦✧";position:absolute;top:3px;right:6px;color:#fff}
.visual-retro .gallery-card-visual-preview{border:4px solid #111;border-radius:3px;box-shadow:5px 5px 0 #fbbf24;image-rendering:pixelated}

/* 后台实时预览：卡片视觉与颜色方案相互独立 */
.gallery-style-preview[data-card-visual="cyberpunk"] article{border-radius:0;clip-path:polygon(0 12px,12px 0,80% 0,100% 18px,100% 100%,14px 100%,0 82%)}
.gallery-style-preview[data-card-visual="minimalist"] article{border-radius:10px;box-shadow:0 10px 25px rgba(15,23,42,.18);backdrop-filter:none}
.gallery-style-preview[data-card-visual="vtuber"] article{border-radius:16px 16px 25px 25px;box-shadow:0 0 0 4px color-mix(in srgb,var(--preview-accent) 10%,transparent)}
.gallery-style-preview[data-card-visual="manga"] article{border:3px solid var(--preview-accent);border-radius:5px;box-shadow:7px 7px 0 var(--preview-accent2)}
.gallery-style-preview[data-card-visual="hologram"] article{border-color:transparent;background:linear-gradient(var(--preview-card-background),var(--preview-card-background)) padding-box,linear-gradient(135deg,var(--preview-accent),var(--preview-accent2)) border-box}
.gallery-style-preview[data-card-visual="poster"] article{border-radius:22px 22px 10px 10px;box-shadow:0 22px 50px rgba(0,0,0,.45)}
.gallery-style-preview[data-card-visual="polaroid"] article{border:8px solid rgba(255,255,255,.9);border-bottom-width:24px;border-radius:4px;transform:rotate(-.6deg)}
.gallery-style-preview[data-card-visual="ticket"] article{border-style:dashed;border-width:2px}
.gallery-style-preview[data-card-visual="mecha"] article{border-radius:0;clip-path:polygon(0 14px,14px 0,76% 0,100% 18px,100% 86%,86% 100%,0 100%)}
.gallery-style-preview[data-card-visual="idol"] article{border:1px solid transparent;background:linear-gradient(var(--preview-card-background),var(--preview-card-background)) padding-box,linear-gradient(135deg,var(--preview-accent),#fff,var(--preview-accent2)) border-box;box-shadow:0 0 22px color-mix(in srgb,var(--preview-accent) 25%,transparent)}
.gallery-style-preview[data-card-visual="retro"] article{border:4px solid var(--preview-accent);border-radius:3px;box-shadow:6px 6px 0 var(--preview-accent2)}
@media(max-width:720px){.gallery-card-visual-picker{grid-template-columns:1fr}}

/* R25.7：后台卡片主题可读性与整套主题方案 */
.gallery-card-visual-group-title{
    grid-column:1/-1;
    margin:4px 0 0;
    padding:9px 12px;
    border-left:4px solid #0ea5e9;
    border-radius:8px;
    background:#f0f9ff;
    color:#0f172a;
    font-size:.92rem;
    font-weight:800;
    letter-spacing:.02em;
}
.gallery-card-visual-option{
    border-color:#d8e1ec;
    background:#ffffff;
    box-shadow:0 8px 22px rgba(15,23,42,.06);
}
.gallery-card-visual-option:hover{
    border-color:#38bdf8;
    background:#f8fcff;
    box-shadow:0 13px 30px rgba(14,165,233,.13);
}
.gallery-card-visual-option:has(input:checked){
    border-color:#0891b2;
    background:#ecfeff;
    box-shadow:0 0 0 3px rgba(6,182,212,.16),0 14px 32px rgba(8,145,178,.14);
}
.gallery-card-visual-copy strong{
    color:#0b172a;
    font-size:1rem;
    font-weight:800;
    line-height:1.3;
    text-shadow:none;
}
.gallery-card-visual-copy small{
    color:#475467;
    font-size:.83rem;
    font-weight:500;
    line-height:1.55;
    text-shadow:none;
}
.gallery-card-visual-copy mark{
    color:#075985;
    background:#e0f2fe;
    border:1px solid #bae6fd;
    font-weight:700;
}
.gallery-card-visual-option:has(input:checked) .gallery-card-visual-copy mark{
    color:#155e75;
    background:#cffafe;
    border-color:#67e8f9;
}

.gallery-full-theme-section{overflow:hidden}
.gallery-full-theme-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin-bottom:18px;
}
.gallery-full-theme-card{
    display:grid;
    grid-template-columns:88px minmax(0,1fr);
    gap:12px;
    align-items:center;
    min-height:132px;
    padding:13px;
    border:1px solid #d8e1ec;
    border-radius:18px;
    background:#fff;
    color:#101828;
    text-align:left;
    cursor:pointer;
    box-shadow:0 8px 22px rgba(15,23,42,.06);
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.gallery-full-theme-card:hover{
    transform:translateY(-2px);
    border-color:#60a5fa;
    background:#f8fbff;
    box-shadow:0 15px 34px rgba(37,99,235,.13);
}
.gallery-full-theme-card.is-active{
    border-color:#2563eb;
    background:#eff6ff;
    box-shadow:0 0 0 3px rgba(37,99,235,.14),0 16px 34px rgba(37,99,235,.13);
}
.gallery-full-theme-card-preview{display:grid;gap:8px;justify-items:center}
.gallery-full-theme-mini-card{
    position:relative;
    display:block;
    width:78px;
    height:78px;
    overflow:hidden;
    border:2px solid #60a5fa;
    border-radius:15px;
    background:linear-gradient(145deg,#172033,#0b1220);
    box-shadow:0 10px 20px rgba(15,23,42,.22);
}
.gallery-full-theme-mini-card i{display:block;height:36px;margin:6px;border-radius:8px;background:linear-gradient(135deg,#f472b6,#67e8f9)}
.gallery-full-theme-mini-card b,.gallery-full-theme-mini-card em{display:block;height:4px;margin:6px 9px;border-radius:999px;background:rgba(255,255,255,.76)}
.gallery-full-theme-mini-card em{width:55%;background:rgba(255,255,255,.38)}
.gallery-full-theme-swatches{display:grid;grid-template-columns:repeat(4,1fr);width:78px;height:12px;overflow:hidden;border:1px solid #d0d5dd;border-radius:999px}
.gallery-full-theme-swatches i{background:var(--swatch)}
.gallery-full-theme-copy{display:grid;gap:5px;min-width:0}
.gallery-full-theme-copy strong{color:#101828;font-size:.96rem;font-weight:800;line-height:1.3}
.gallery-full-theme-copy small{color:#475467;font-size:.78rem;font-weight:500;line-height:1.5}
.gallery-full-theme-copy mark{justify-self:start;padding:3px 8px;border:1px solid #c7d7fe;border-radius:999px;background:#eef4ff;color:#3538cd;font-size:.68rem;font-weight:700}
.gallery-full-theme-manager-row{
    display:grid;
    grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;
    gap:14px;
    align-items:end;
    padding:16px;
    border:1px dashed #b8c4d3;
    border-radius:16px;
    background:#f8fafc;
}
.gallery-full-theme-manager-row .field{margin:0}
.gallery-full-theme-actions{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:1px}

.gallery-full-theme-card.visual-cyberpunk .gallery-full-theme-mini-card,
.gallery-full-theme-card.visual-mecha .gallery-full-theme-mini-card{border-radius:0;clip-path:polygon(0 10px,10px 0,75% 0,100% 18px,100% 84%,84% 100%,0 100%)}
.gallery-full-theme-card.visual-hologram .gallery-full-theme-mini-card{border-color:transparent;background:linear-gradient(#101827,#101827) padding-box,linear-gradient(135deg,#22d3ee,#c084fc,#f472b6) border-box;box-shadow:0 0 20px rgba(34,211,238,.35)}
.gallery-full-theme-card.visual-manga .gallery-full-theme-mini-card{border:3px solid #111;border-radius:4px;box-shadow:5px 5px 0 #f472b6}
.gallery-full-theme-card.visual-polaroid .gallery-full-theme-mini-card{border:6px solid #fff;border-bottom-width:14px;border-radius:3px;background:#fff;transform:rotate(-1deg)}
.gallery-full-theme-card.visual-ticket .gallery-full-theme-mini-card{border-style:dashed}
.gallery-full-theme-card.visual-idol .gallery-full-theme-mini-card{border-color:#fff;box-shadow:0 0 18px rgba(244,114,182,.45)}
.gallery-full-theme-card.visual-retro .gallery-full-theme-mini-card{border:4px solid #111;border-radius:3px;box-shadow:5px 5px 0 #fbbf24}

@media(max-width:1250px){.gallery-full-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.gallery-full-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-full-theme-manager-row{grid-template-columns:1fr 1fr}.gallery-full-theme-actions{grid-column:1/-1}}
@media(max-width:600px){.gallery-full-theme-grid{grid-template-columns:1fr}.gallery-full-theme-card{grid-template-columns:82px minmax(0,1fr)}.gallery-full-theme-manager-row{grid-template-columns:1fr}}

/* R25.9.2.1 private routes, admin polish, ACG home templates and QR presets */
.admin-page{background:linear-gradient(145deg,#f6f7ff 0,#eef4ff 48%,#f9f5ff 100%);background-attachment:fixed}
.admin-header{position:sticky;top:0;z-index:80;border-bottom:1px solid rgba(91,78,220,.12);background:rgba(255,255,255,.86);box-shadow:0 10px 34px rgba(32,41,89,.07);backdrop-filter:blur(18px) saturate(1.25)}
.admin-title strong{background:linear-gradient(135deg,#5b4ede,#a855f7);background-clip:text;color:transparent}
.admin-nav{padding:5px;border:1px solid #e7e8f5;border-radius:14px;background:#f8f8ff}
.admin-nav a{border-radius:10px;padding:9px 14px;transition:.18s ease}
.admin-nav a:hover,.admin-nav a.is-active{background:#fff;color:#5548d9;box-shadow:0 6px 18px rgba(85,72,217,.13)}
.admin-main>.panel{border-color:rgba(91,78,220,.12);box-shadow:0 18px 50px rgba(35,42,91,.075)}
.admin-console-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:26px;overflow:hidden;margin-bottom:20px;border:1px solid rgba(255,255,255,.7);border-radius:24px;padding:30px 32px;color:#fff;background:radial-gradient(circle at 85% 15%,rgba(255,255,255,.22),transparent 30%),linear-gradient(135deg,#5548d9,#7657e8 55%,#ad5bd8);box-shadow:0 22px 54px rgba(85,72,217,.24)}
.admin-console-intro h1{margin:7px 0 5px;font-size:clamp(1.65rem,3vw,2.35rem)}
.admin-console-intro p{margin:0;color:rgba(255,255,255,.78)}
.admin-console-intro .section-kicker{color:#efeaff}
.admin-quick-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.admin-quick-links a{border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:9px 13px;color:#fff;background:rgba(255,255,255,.1);font-size:.78rem;text-decoration:none;backdrop-filter:blur(8px)}
.admin-quick-links a:hover{background:rgba(255,255,255,.2)}
.section-kicker{color:#695be4;font-size:.7rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.private-route-panel{overflow:hidden;background:linear-gradient(135deg,#fff 0,#fbfaff 62%,#f2eeff 100%)}
.private-route-heading{align-items:flex-start}
.route-source-badge{border:1px solid #dcd7ff;border-radius:999px;padding:7px 11px;color:#5b4ede;background:#f3f1ff;font-size:.72rem;font-weight:750}
.private-route-form{display:grid;gap:17px}
.route-current-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.route-current-grid>div{display:grid;gap:6px;min-width:0;border:1px solid #e8e8f4;border-radius:15px;padding:13px;background:rgba(255,255,255,.72)}
.route-current-grid small{color:#737b91;font-weight:700}
.route-copy{overflow:hidden;border:0;padding:0;color:#4f46c9;background:transparent;font:700 .76rem/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}
.route-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.route-form-footer{display:flex;align-items:center;justify-content:space-between;gap:16px}
.route-recovery-note{margin:0;border-left:3px solid #8b7cf6;border-radius:0 12px 12px 0;padding:11px 13px;color:#5f6678;background:#f5f3ff;font-size:.78rem;line-height:1.7}
.cron-guide{border-color:#cbc5ff;background:linear-gradient(135deg,#faf9ff,#f1efff)}
.cron-guide-copy{display:grid;gap:5px}.cron-guide-copy b{color:#5548d9}.cron-guide-copy small{color:#737b91;line-height:1.6}

.home-template-picker{grid-template-columns:repeat(3,minmax(0,1fr))}
.home-template-preview.is-sakura-postcard{background:linear-gradient(145deg,#fff8fb,#ffe6f0)}
.home-template-preview.is-sakura-postcard::after{position:absolute;right:9px;bottom:8px;width:28px;height:35px;border-radius:50% 50% 42% 58%;background:linear-gradient(#fda4c7,#f9c7dd);content:"";transform:rotate(-8deg)}
.home-template-preview.is-pixel-arcade{border:3px solid #2a245c;border-radius:2px;background:repeating-linear-gradient(0deg,#16143a 0 4px,#1e1b4b 4px 8px);box-shadow:4px 4px 0 #facc15}
.home-template-preview.is-pixel-arcade i,.home-template-preview.is-pixel-arcade b{border-radius:0;background:#67e8f9;box-shadow:2px 2px 0 #ec4899}
.home-template-preview.is-starlight-idol{background:radial-gradient(circle at 50% 16%,#fff 0 3px,transparent 4px),linear-gradient(145deg,#312e81,#7c3aed 55%,#ec4899)}
.home-template-preview.is-starlight-idol::after{position:absolute;inset:10px 34px;background:linear-gradient(165deg,rgba(255,255,255,.55),transparent 48%);clip-path:polygon(45% 0,65% 0,100% 100%,0 100%);content:""}

.sakura-home-shell,.pixel-home-shell,.idol-home-shell{position:relative;z-index:1;display:grid;min-height:calc(100vh - 58px);place-items:center;padding:48px 24px}
.sakura-postcard-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.82fr);width:min(1080px,100%);overflow:hidden;border:1px solid rgba(225,143,174,.36);border-radius:30px;background:rgba(255,250,252,var(--sakura-paper-opacity));box-shadow:0 32px 80px rgba(91,50,73,.18),inset 0 0 0 8px rgba(255,255,255,.4);backdrop-filter:blur(16px)}
.sakura-postcard-copy{position:relative;display:flex;flex-direction:column;justify-content:center;padding:clamp(38px,6vw,76px)}
.sakura-postcard-copy::before{position:absolute;top:30px;right:34px;width:78px;height:78px;border:3px double color-mix(in srgb,var(--anime-pink) 62%,#b04a73);border-radius:50%;color:#b54f77;content:"ACG\A POST";font:800 10px/1.25 ui-monospace,monospace;letter-spacing:.12em;white-space:pre;display:grid;place-items:center;text-align:center;transform:rotate(9deg);opacity:.56}
.sakura-brand,.idol-brand{display:flex;align-items:center;gap:10px}.sakura-brand span,.idol-brand span{display:grid;width:38px;height:38px;place-items:center;border-radius:13px;color:#fff;background:linear-gradient(135deg,var(--anime-pink),#a78bfa)}
.sakura-kicker,.idol-kicker{margin:25px 0 10px;color:var(--anime-pink);font-size:.78rem;font-weight:800;letter-spacing:.12em}.sakura-postcard-copy h1,.idol-stage-copy h1{margin:0;color:#30253a;font-size:clamp(2.3rem,5vw,4.8rem);line-height:1.05}.sakura-lead,.idol-lead{margin:18px 0 0;color:#56475f;font-size:clamp(1rem,1.6vw,1.22rem);font-weight:700;line-height:1.75}.sakura-note,.idol-note{color:#74677a;line-height:1.85}.sakura-tags,.sakura-actions,.idol-tags,.idol-actions,.pixel-tags,.pixel-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.sakura-tags span,.idol-tags span{border:1px solid color-mix(in srgb,var(--anime-pink) 40%,#fff);border-radius:999px;padding:7px 11px;color:#77576b;background:#fff9fc;font-size:.72rem}.sakura-status,.idol-status{display:flex;align-items:center;gap:8px;margin-top:22px;color:#796a77;font-size:.76rem}.sakura-status i,.idol-status i{width:8px;height:8px;border-radius:50%;background:#6ee7b7;box-shadow:0 0 0 5px rgba(110,231,183,.17)}
.sakura-postcard-art{position:relative;min-height:620px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(113,55,83,.15)),var(--sakura-image) var(--sakura-image-position)/cover no-repeat}.sakura-caption,.idol-caption{position:absolute;right:24px;bottom:24px;display:grid;gap:4px;max-width:75%;border-radius:16px;padding:13px 16px;color:#fff;background:rgba(48,30,47,.58);backdrop-filter:blur(12px)}.sakura-caption small,.idol-caption small{opacity:.72}.sakura-petal{position:absolute;z-index:2;width:18px;height:12px;border-radius:100% 0 100% 0;background:#ffc1d8;box-shadow:0 4px 8px rgba(128,55,82,.16);animation:sakuraDrift 7s ease-in-out infinite}.sakura-petal.p1{top:12%;left:12%}.sakura-petal.p2{top:34%;right:9%;animation-delay:-2.3s}.sakura-petal.p3{bottom:18%;left:18%;animation-delay:-4.6s}@keyframes sakuraDrift{50%{transform:translate(12px,22px) rotate(120deg)}}

.pixel-home-shell{font-family:ui-monospace,"Cascadia Mono",Consolas,monospace}.pixel-arcade-card{width:min(1040px,100%);overflow:hidden;border:4px solid #1f1b4c;border-radius:4px;background:#17153a;box-shadow:10px 10px 0 color-mix(in srgb,var(--anime-pink) 70%,#facc15),20px 20px 60px rgba(13,11,42,.35);image-rendering:pixelated}.pixel-window-bar{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;border-bottom:4px solid #1f1b4c;padding:12px 16px;color:#221d4f;background:#facc15}.pixel-window-bar em{font-style:normal}.pixel-arcade-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.86fr)}.pixel-arcade-copy{display:flex;min-height:540px;flex-direction:column;justify-content:center;padding:clamp(32px,5vw,66px);color:#f5f3ff}.pixel-kicker{color:#67e8f9}.pixel-arcade-copy h1{margin:7px 0;color:#fff;font-size:clamp(2rem,4.8vw,4.4rem);line-height:1.06;text-shadow:4px 4px 0 #7c3aed}.pixel-lead{color:#fde68a;font-weight:800;line-height:1.7}.pixel-note{color:#c4b5fd;line-height:1.8}.pixel-tags span{border:2px solid #67e8f9;padding:6px 9px;color:#67e8f9;background:#0f1734;font-size:.7rem}.pixel-actions .anime-home-button{border:3px solid #11132f!important;border-radius:2px!important;box-shadow:4px 4px 0 #facc15}.pixel-status{margin-top:22px;color:#86efac;font-size:.75rem}.pixel-arcade-art{position:relative;min-height:540px;border-left:4px solid #1f1b4c;background:linear-gradient(rgba(23,21,58,.05),rgba(23,21,58,.32)),var(--pixel-image) center var(--pixel-image-position)/cover no-repeat}.pixel-arcade-art span{position:absolute;right:18px;bottom:18px;padding:8px 11px;color:#1f1b4c;background:#facc15;font-size:.72rem;font-weight:900;animation:pixelBlink 1.1s steps(2,end) infinite}.pixel-home-shell.has-scanlines::after{position:absolute;inset:0;z-index:2;background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(10,8,32,.12) 3px 5px);content:"";pointer-events:none}@keyframes pixelBlink{50%{opacity:.32}}

.idol-home-shell{overflow:hidden}.idol-home-shell::before,.idol-home-shell::after{position:absolute;top:-20%;width:32vw;height:130%;background:linear-gradient(180deg,rgba(255,255,255,.34),transparent 64%);clip-path:polygon(40% 0,60% 0,100% 100%,0 100%);content:"";filter:blur(8px);opacity:.42;pointer-events:none}.idol-home-shell::before{left:2%;transform:rotate(-14deg)}.idol-home-shell::after{right:2%;transform:rotate(14deg)}.idol-stage-card{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);width:min(1160px,100%);overflow:hidden;border:1px solid rgba(255,255,255,.24);border-radius:34px;color:#fff;background:linear-gradient(135deg,rgba(25,23,72,.94),rgba(92,40,130,.9) 58%,rgba(179,63,129,.86));box-shadow:0 36px 100px rgba(38,23,88,.48),0 0 0 6px rgba(255,255,255,.06);backdrop-filter:blur(16px)}.idol-stage-card.has-spotlight::after{position:absolute;inset:0;background:radial-gradient(circle at 78% 15%,rgba(255,255,255,.28),transparent 25%),radial-gradient(circle at 15% 80%,color-mix(in srgb,var(--anime-pink) 32%,transparent),transparent 30%);content:"";pointer-events:none}.idol-stage-copy{position:relative;z-index:2;display:flex;min-height:620px;flex-direction:column;justify-content:center;padding:clamp(38px,6vw,78px)}.idol-stage-copy h1{color:#fff;text-shadow:0 0 30px color-mix(in srgb,var(--anime-pink) 72%,transparent)}.idol-lead{color:#f5eaff}.idol-note{color:#d9d0ea}.idol-tags span{color:#fff;background:rgba(255,255,255,.09)}.idol-actions .anime-home-button.is-primary{box-shadow:0 0 28px color-mix(in srgb,var(--anime-pink) 52%,transparent)}.idol-status{color:#e8ddf4}.idol-stage-art{position:relative;z-index:1;min-height:620px;background:linear-gradient(90deg,rgba(47,29,88,.26),transparent),var(--idol-image) var(--idol-image-position)/cover no-repeat}.idol-star{position:absolute;color:#fff;text-shadow:0 0 14px #fff,0 0 28px var(--anime-pink);animation:idolTwinkle 2.4s ease-in-out infinite}.idol-star.s1{top:14%;left:12%;font-size:2rem}.idol-star.s2{top:32%;right:10%;font-size:1.4rem;animation-delay:-.8s}.idol-star.s3{bottom:17%;left:20%;font-size:1.6rem;animation-delay:-1.6s}@keyframes idolTwinkle{50%{transform:scale(1.35) rotate(18deg);opacity:.45}}

.qr-card.qr-style-sakura{border:1px solid rgba(255,190,213,.72);color:#4c3041;background:linear-gradient(145deg,rgba(255,250,252,var(--qr-card-opacity)),rgba(255,225,238,var(--qr-card-opacity)));box-shadow:0 30px 78px rgba(115,57,83,calc(var(--qr-shadow-alpha)*.34))}.qr-style-sakura .lead,.qr-style-sakura .muted-light,.qr-style-sakura h1{color:#5d3a4d}.qr-style-sakura .qr-frame{border-color:#f9a8c6;box-shadow:0 0 0 8px rgba(255,255,255,.52)}
.qr-card.qr-style-cyber{border:1px solid var(--qr-accent);border-radius:4px;clip-path:polygon(0 22px,22px 0,82% 0,100% 18%,100% calc(100% - 20px),calc(100% - 20px) 100%,0 100%);background:linear-gradient(145deg,rgba(5,12,28,var(--qr-card-opacity)),rgba(29,10,54,var(--qr-card-opacity)));box-shadow:0 0 32px color-mix(in srgb,var(--qr-accent) 24%,transparent),0 30px 80px rgba(0,0,0,.48)}.qr-style-cyber::before{background:repeating-linear-gradient(0deg,transparent 0 5px,rgba(103,232,249,.045) 5px 7px)}.qr-style-cyber h1{text-transform:uppercase;letter-spacing:.06em}.qr-style-cyber .qr-frame{border-color:var(--qr-accent);border-radius:3px}
.qr-card.qr-style-ticket{border:2px dashed color-mix(in srgb,var(--qr-accent) 75%,#fff);background:linear-gradient(90deg,rgba(20,24,46,var(--qr-card-opacity)),rgba(42,35,78,var(--qr-card-opacity)));box-shadow:0 26px 68px rgba(12,15,35,.46)}.qr-style-ticket::after{position:absolute;inset:0;background:radial-gradient(circle at 0 50%,#eef2ff 0 13px,transparent 14px),radial-gradient(circle at 100% 50%,#eef2ff 0 13px,transparent 14px);content:"";pointer-events:none}.qr-style-ticket .qr-frame{border-style:dashed}
.qr-card.qr-style-hologram{border:1px solid transparent;background:linear-gradient(rgba(12,18,38,var(--qr-card-opacity)),rgba(12,18,38,var(--qr-card-opacity))) padding-box,linear-gradient(135deg,#67e8f9,#c084fc,#fb7185,#67e8f9) border-box;box-shadow:0 30px 82px rgba(20,28,68,.55),0 0 40px rgba(103,232,249,.24)}.qr-style-hologram::before{background:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.13) 48%,transparent 68%);animation:holoSweep 5s ease-in-out infinite}@keyframes holoSweep{50%{transform:translateX(35%)}}
.qr-enter-fade-up{animation:qrEnterFadeUp var(--qr-enter-duration) cubic-bezier(.2,.75,.25,1) both}.qr-enter-scale-pop{animation:qrEnterScalePop var(--qr-enter-duration) cubic-bezier(.18,.9,.25,1.18) both}.qr-enter-slide-in{animation:qrEnterSlideIn var(--qr-enter-duration) cubic-bezier(.2,.78,.25,1) both}.qr-enter-flip-card{animation:qrEnterFlip var(--qr-enter-duration) cubic-bezier(.22,.7,.2,1) both;transform-origin:center}.qr-enter-none{animation:none}@keyframes qrEnterFadeUp{from{opacity:0;transform:translateY(28px);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}@keyframes qrEnterScalePop{from{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}@keyframes qrEnterSlideIn{from{opacity:0;transform:translateX(-54px)}to{opacity:1;transform:none}}@keyframes qrEnterFlip{from{opacity:0;transform:perspective(1000px) rotateY(-26deg) scale(.92)}to{opacity:1;transform:perspective(1000px) rotateY(0) scale(1)}}
.qr-card-preset-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.qr-card-preset-choice{position:relative;display:grid;grid-template-columns:64px 1fr;gap:4px 11px;align-items:center;border:1px solid #e2e5ef;border-radius:15px;padding:11px;background:#fff;cursor:pointer;transition:.18s}.qr-card-preset-choice:hover{transform:translateY(-2px);border-color:#a99cf7}.qr-card-preset-choice:has(input:checked){border-color:#6658e6;background:#f4f2ff;box-shadow:0 0 0 3px rgba(102,88,230,.12)}.qr-card-preset-choice input{position:absolute;opacity:0}.qr-card-preset-choice strong{color:#252b3a;font-size:.82rem}.qr-card-preset-choice small{color:#7a8193;font-size:.68rem;line-height:1.35}.qr-card-preset-preview{grid-row:1/3;position:relative;display:block;width:64px;height:50px;border:1px solid #aeb8ca;border-radius:12px;background:linear-gradient(145deg,#1e293b,#334155)}.qr-card-preset-preview i{position:absolute;top:8px;left:9px;width:26px;height:26px;border:4px solid #fff;background:#fff}.qr-card-preset-preview b{position:absolute;right:8px;bottom:9px;width:17px;height:4px;border-radius:4px;background:#7dd3fc}.qr-card-preset-preview.is-neumorph{background:#e9edf5;box-shadow:inset 3px 3px 6px #c8ced9,inset -3px -3px 6px #fff}.qr-card-preset-preview.is-minimal{border-style:dashed;background:#fff}.qr-card-preset-preview.is-sakura{background:linear-gradient(145deg,#fff7fb,#ffcfe1)}.qr-card-preset-preview.is-cyber{border-color:#22d3ee;border-radius:0;clip-path:polygon(0 8px,8px 0,85% 0,100% 13px,100% 100%,0 100%);background:#081226;box-shadow:0 0 9px #22d3ee}.qr-card-preset-preview.is-ticket{border-style:dashed;background:#25254a}.qr-card-preset-preview.is-hologram{border-color:transparent;background:linear-gradient(#12182b,#12182b) padding-box,linear-gradient(135deg,#22d3ee,#c084fc,#fb7185) border-box}

@media(max-width:1050px){.route-current-grid{grid-template-columns:1fr}.qr-card-preset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sakura-postcard-card,.idol-stage-card,.pixel-arcade-layout{grid-template-columns:1fr}.sakura-postcard-art,.idol-stage-art,.pixel-arcade-art{min-height:430px}.pixel-arcade-art{border-top:4px solid #1f1b4c;border-left:0}.sakura-postcard-copy,.idol-stage-copy,.pixel-arcade-copy{min-height:auto}.home-template-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.admin-console-intro,.route-form-footer{align-items:stretch;flex-direction:column}.admin-quick-links{justify-content:flex-start}.route-edit-grid,.home-template-picker,.qr-card-preset-grid{grid-template-columns:1fr}.sakura-home-shell,.pixel-home-shell,.idol-home-shell{padding:24px 12px}.sakura-postcard-card,.idol-stage-card{border-radius:22px}.sakura-postcard-copy,.idol-stage-copy,.pixel-arcade-copy{padding:34px 25px}.sakura-postcard-art,.idol-stage-art,.pixel-arcade-art{min-height:360px}.sakura-postcard-copy::before{display:none}}
@media(prefers-reduced-motion:reduce){.sakura-petal,.idol-star,.pixel-arcade-art span,.qr-enter-fade-up,.qr-enter-scale-pop,.qr-enter-slide-in,.qr-enter-flip-card,.qr-style-hologram::before{animation:none!important}}

/* R25.9.3 multi-page admin navigation and expanded button system */
.admin-page{--admin-ink:#172033;--admin-muted:#6e7890;--admin-line:#e3e7f0;--admin-surface:rgba(255,255,255,.92)}
.admin-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;min-height:76px;padding:12px clamp(18px,3vw,46px)}
.admin-title{align-items:center;gap:10px;white-space:nowrap}
.admin-title>span:last-child{display:grid;gap:1px}
.admin-logo-badge{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(145deg,#5447dc,#9d60ea 65%,#ec78bd);box-shadow:0 9px 22px rgba(91,78,220,.28);font-size:17px;font-weight:950}
.admin-title strong{font-size:15px}.admin-title small{font-size:9px;font-weight:800;letter-spacing:.16em}
.admin-nav{min-width:0;justify-content:center;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;white-space:nowrap}
.admin-nav::-webkit-scrollbar{display:none}.admin-nav a{flex:0 0 auto;padding:9px 11px;font-size:12px}
.admin-account{white-space:nowrap}.admin-account .btn{min-height:36px}
.admin-main{margin-top:22px}.admin-page-overview .admin-main,.admin-page-health .admin-main,.admin-page-system .admin-main{width:min(1240px,calc(100% - 36px))}.admin-page-appearance .admin-main,.admin-page-qr .admin-main{width:min(1360px,calc(100% - 36px))}
.admin-console-intro{min-height:148px;align-items:center;margin-bottom:22px;border-radius:25px;padding:26px 30px;background:radial-gradient(circle at 92% 12%,rgba(255,255,255,.24),transparent 28%),radial-gradient(circle at 72% 110%,rgba(236,114,188,.27),transparent 34%),linear-gradient(125deg,#4d43d9,#7555e7 58%,#bc6bdb)}
.admin-console-intro h1{margin:6px 0 4px;font-size:clamp(1.75rem,3vw,2.55rem)}
.admin-page-context{display:grid;gap:3px;min-width:170px;border:1px solid rgba(255,255,255,.25);border-radius:17px;padding:12px 15px;color:#fff;background:rgba(255,255,255,.1);text-align:right;backdrop-filter:blur(10px)}.admin-page-context span{font-weight:850}.admin-page-context small{max-width:220px;overflow:hidden;color:rgba(255,255,255,.68);text-overflow:ellipsis}
.admin-main>.panel,.admin-main>.stats-grid+.panel{border:1px solid rgba(99,91,190,.12);border-radius:21px;background:var(--admin-surface);box-shadow:0 15px 42px rgba(33,43,88,.065)}
.admin-page-system .private-route-panel,.admin-page-health .health-automation-panel{padding:28px}
.admin-page-appearance .settings-panel,.admin-page-qr .settings-panel{padding:25px 27px 30px}
.ui-settings-tabs{position:sticky;top:91px;z-index:12;grid-template-columns:repeat(3,minmax(130px,1fr));margin:0 0 22px;border:1px solid #e5e6f2;border-radius:16px;padding:5px;background:rgba(248,249,255,.92);box-shadow:0 8px 24px rgba(29,39,78,.07);backdrop-filter:blur(15px)}
.admin-page-qr .ui-settings-tabs{grid-template-columns:repeat(2,minmax(160px,1fr))}
.ui-settings-tabs button{min-height:44px;border-radius:11px;font-weight:800}.ui-settings-tabs button.is-active{color:#fff;background:linear-gradient(135deg,#594cdc,#8860e9);box-shadow:0 8px 18px rgba(89,76,220,.24)}
.settings-tab-panel{animation:adminPanelIn .28s ease both}@keyframes adminPanelIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.settings-group{border:1px solid #e5e8f0;border-radius:18px;padding:22px;background:#fcfcff;box-shadow:none}.settings-group+.settings-group{margin-top:16px}.settings-group-heading{margin-bottom:17px}.settings-group-heading h3{color:var(--admin-ink);font-size:17px}.settings-group-heading p{max-width:850px;color:var(--admin-muted)}
.settings-form .field>span{color:#344054;font-size:12px;font-weight:800}.settings-form input,.settings-form select,.settings-form textarea{border-color:#d8deea;background:#fff}.settings-form input:focus,.settings-form select:focus,.settings-form textarea:focus{border-color:#7465e8;box-shadow:0 0 0 4px rgba(116,101,232,.11)}
.settings-actions{position:sticky;right:0;bottom:14px;z-index:15;display:flex;justify-content:flex-end;margin-top:22px;pointer-events:none}.settings-actions .btn{min-width:170px;min-height:47px;pointer-events:auto;box-shadow:0 12px 30px rgba(83,70,211,.28)}
.admin-module-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:20px}.admin-module-card{position:relative;display:grid;min-height:158px;align-content:start;gap:7px;overflow:hidden;border:1px solid rgba(95,87,186,.14);border-radius:20px;padding:18px;color:var(--admin-ink);background:rgba(255,255,255,.9);box-shadow:0 13px 34px rgba(33,43,88,.06);text-decoration:none;transition:.2s ease}.admin-module-card::after{position:absolute;right:-25px;bottom:-34px;width:110px;height:110px;border-radius:50%;background:color-mix(in srgb,var(--module-accent,#6658e6) 12%,transparent);content:""}.admin-module-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--module-accent,#6658e6) 35%,#fff);box-shadow:0 20px 42px rgba(33,43,88,.11)}.admin-module-card>span{display:grid;width:45px;height:45px;place-items:center;border-radius:14px;color:#fff;background:var(--module-accent,#6658e6);font-size:11px;font-weight:950;letter-spacing:.04em}.admin-module-card strong{font-size:16px}.admin-module-card small{color:var(--admin-muted);line-height:1.55}.admin-module-card i{position:absolute;right:17px;top:18px;color:var(--module-accent,#6658e6);font-size:20px;font-style:normal}.admin-module-card.is-health{--module-accent:#0ea5a7}.admin-module-card.is-appearance{--module-accent:#ec4899}.admin-module-card.is-qr{--module-accent:#7c3aed}.admin-module-card.is-system{--module-accent:#475467}
.admin-page-links .create-panel{margin-bottom:18px;padding:24px}.admin-page-links #link-list{padding:22px}.admin-page-links .toolbar{border:1px solid #e6e9f1;border-radius:16px;padding:15px;background:#fafbff}.admin-page-links .batch-bar{position:sticky;top:88px;z-index:10;border:1px solid #dedff0;border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 8px 25px rgba(29,39,78,.07);backdrop-filter:blur(14px)}
@media(max-width:1180px){.admin-header{grid-template-columns:auto minmax(0,1fr)}.admin-account{display:none}.admin-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.admin-header{display:flex;gap:10px;overflow:hidden}.admin-title>span:last-child{display:none}.admin-logo-badge{width:36px;height:36px}.admin-nav{justify-content:flex-start}.admin-main,.admin-page-overview .admin-main,.admin-page-health .admin-main,.admin-page-system .admin-main,.admin-page-appearance .admin-main,.admin-page-qr .admin-main{width:min(100% - 18px,1480px)}.admin-console-intro{min-height:0;align-items:flex-start;padding:22px}.admin-page-context{min-width:0;text-align:left}.admin-module-grid{grid-template-columns:1fr}.admin-module-card{min-height:126px}.ui-settings-tabs{top:66px;grid-template-columns:1fr!important}.admin-page-system .private-route-panel,.admin-page-health .health-automation-panel,.admin-page-appearance .settings-panel,.admin-page-qr .settings-panel{padding:17px}.settings-group{padding:17px}}
@media(prefers-reduced-motion:reduce){.settings-tab-panel,.admin-module-card,.button-style-aurora .btn{animation:none!important;transition:none!important}}

/* R25.9.4 reusable per-button presets for every public customizable action. */
.ui-button-preset{--ui-btn-accent:#7c3aed;--ui-btn-accent2:#22d3ee;position:relative;isolation:isolate;overflow:hidden;border:1px solid transparent!important;color:#fff!important;background:#111827;box-shadow:none;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background-position .35s ease!important}
.anime-home-button.ui-button-preset{--ui-btn-accent:var(--anime-pink,#f18bb7);--ui-btn-accent2:var(--anime-purple,#8b5cf6)}
.qr-actions .ui-button-preset,.qr-expired-actions .ui-button-preset{--ui-btn-accent:var(--qr-accent,#7dd3fc);--ui-btn-accent2:#c084fc}
.device-anomaly-actions .ui-button-preset{--ui-btn-accent:var(--anomaly-accent,#fb7185);--ui-btn-accent2:#fbbf24}
.ui-btn-gradient{background:linear-gradient(135deg,var(--ui-btn-accent),var(--ui-btn-accent2))!important;color:#08111f!important;box-shadow:0 10px 24px color-mix(in srgb,var(--ui-btn-accent) 26%,transparent)!important}
.ui-btn-glass{border-color:rgba(255,255,255,.35)!important;background:rgba(255,255,255,.12)!important;color:#fff!important;box-shadow:inset 0 1px rgba(255,255,255,.3),0 10px 28px rgba(15,23,42,.18)!important;backdrop-filter:blur(14px) saturate(145%)}
.ui-btn-outline{border-color:var(--ui-btn-accent)!important;background:transparent!important;color:var(--ui-btn-accent)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ui-btn-accent) 26%,transparent)!important}
.ui-btn-neon{border-color:var(--ui-btn-accent)!important;background:#050914!important;color:#fff!important;box-shadow:inset 0 0 14px color-mix(in srgb,var(--ui-btn-accent) 24%,transparent),0 0 16px color-mix(in srgb,var(--ui-btn-accent) 52%,transparent)!important;text-shadow:0 0 8px #fff}
.ui-btn-pill{border-radius:999px!important;background:linear-gradient(135deg,var(--ui-btn-accent),var(--ui-btn-accent2))!important;color:#07111f!important}
.ui-btn-soft{border-color:color-mix(in srgb,var(--ui-btn-accent) 22%,transparent)!important;background:color-mix(in srgb,var(--ui-btn-accent) 16%,#fff)!important;color:color-mix(in srgb,var(--ui-btn-accent) 78%,#0f172a)!important;box-shadow:0 7px 18px rgba(15,23,42,.12)!important}
.ui-btn-pixel{border:2px solid var(--ui-btn-accent)!important;border-radius:2px!important;background:#0b1020!important;color:#fff!important;box-shadow:4px 4px 0 color-mix(in srgb,var(--ui-btn-accent) 68%,#020617)!important;letter-spacing:.05em}
.ui-btn-aurora{background:linear-gradient(115deg,var(--ui-btn-accent),var(--ui-btn-accent2),#bef264,var(--ui-btn-accent))!important;background-size:240% 240%!important;color:#07111f!important;box-shadow:0 10px 27px color-mix(in srgb,var(--ui-btn-accent) 32%,transparent)!important;animation:r2594ButtonAurora 6s ease infinite}
.ui-btn-candy{border-color:#fff!important;background:linear-gradient(180deg,#fff 0 8%,color-mix(in srgb,var(--ui-btn-accent) 62%,#fbcfe8) 11% 58%,color-mix(in srgb,var(--ui-btn-accent2) 68%,#bfdbfe))!important;color:#44224e!important;box-shadow:inset 0 2px #fff,0 6px 0 color-mix(in srgb,var(--ui-btn-accent2) 48%,#6b4d7a),0 12px 22px rgba(50,30,70,.2)!important}
.ui-btn-comic{border:3px solid #111827!important;border-radius:8px!important;background:#fff7b2!important;color:#111827!important;box-shadow:5px 5px 0 #111827!important;font-weight:900!important}
.ui-btn-metal{border-color:#d0d5dd!important;background:linear-gradient(180deg,#fff,#aeb9c6 48%,#667085 51%,#e4e7ec)!important;color:#101828!important;box-shadow:inset 0 1px #fff,inset 0 -1px #475467,0 7px 16px rgba(16,24,40,.27)!important;text-shadow:0 1px rgba(255,255,255,.58)}
.ui-btn-liquid{border-color:rgba(255,255,255,.5)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--ui-btn-accent) 42%,transparent),color-mix(in srgb,var(--ui-btn-accent2) 38%,transparent))!important;color:#fff!important;box-shadow:inset 0 1px rgba(255,255,255,.62),inset 0 -14px 28px rgba(255,255,255,.06),0 12px 28px rgba(2,6,23,.24)!important;backdrop-filter:blur(18px) saturate(155%)}
.ui-btn-slide-reveal{border-color:var(--ui-btn-accent)!important;background:#111827!important;color:#fff!important}.ui-btn-slide-reveal::after{position:absolute;inset:0;z-index:2;display:grid;place-items:center;background:var(--ui-btn-accent);color:#07111f;content:attr(data-label);transform:translateY(102%);transition:transform .22s ease}.ui-btn-slide-reveal:hover::after{transform:none}
.ui-btn-border-snake{border:2px solid transparent!important;background:linear-gradient(#111827,#111827) padding-box,linear-gradient(90deg,var(--ui-btn-accent),transparent,var(--ui-btn-accent2),transparent,var(--ui-btn-accent)) border-box!important;background-size:100% 100%,260% 100%!important;color:#fff!important;animation:r2594BorderSnake 3s linear infinite}
.ui-btn-rotate-3d{border-color:var(--ui-btn-accent)!important;background:linear-gradient(135deg,#111827,#222a42)!important;color:#fff!important;box-shadow:0 7px 0 color-mix(in srgb,var(--ui-btn-accent) 52%,#111827)!important;transform-style:preserve-3d;transform-origin:center bottom}.ui-btn-rotate-3d:hover{transform:perspective(600px) rotateX(-12deg) translateY(-2px)!important}
.ui-btn-marquee{border-color:color-mix(in srgb,var(--ui-btn-accent) 70%,#fff)!important;background:#0b1020!important;color:#fff!important}.ui-btn-marquee::after{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--ui-btn-accent) 35%,transparent),transparent);content:attr(data-label);transform:translateX(-105%);transition:transform .38s ease}.ui-btn-marquee:hover::after{transform:translateX(0)}
.ui-btn-ink-sweep{border-color:var(--ui-btn-accent)!important;background:color-mix(in srgb,var(--ui-btn-accent) 8%,#111827)!important;color:#fff!important}.ui-btn-ink-sweep::before{position:absolute;inset:-80% -20%;z-index:-1;border-radius:45%;background:linear-gradient(135deg,var(--ui-btn-accent),var(--ui-btn-accent2));content:"";transform:translateX(-110%) rotate(8deg);transition:transform .34s cubic-bezier(.2,.8,.25,1)}.ui-btn-ink-sweep:hover::before{transform:translateX(0) rotate(0)}
.ui-button-preset:hover{transform:translateY(-2px)}.ui-btn-pixel:hover,.ui-btn-comic:hover{transform:translate(2px,2px)!important;box-shadow:2px 2px 0 #111827!important}
@keyframes r2594ButtonAurora{50%{background-position:100% 50%}}@keyframes r2594BorderSnake{to{background-position:0 0,260% 0}}
@media(prefers-reduced-motion:reduce){.ui-button-preset,.ui-button-preset::before,.ui-button-preset::after{animation:none!important;transition:none!important}.ui-btn-slide-reveal::after,.ui-btn-marquee::after{display:none}}

/* R25.9.4 gallery card-frame and per-role button previews. */
.button-sample-slide-reveal{border-color:#7c3aed;color:#fff;background:linear-gradient(0deg,#7c3aed 0 48%,#111827 49%)}
.button-sample-border-snake{border:2px solid transparent;color:#fff;background:linear-gradient(#111827,#111827) padding-box,linear-gradient(90deg,#22d3ee,#c084fc,#bef264) border-box}
.button-sample-rotate-3d{border-color:#c084fc;color:#fff;background:#1f2937;box-shadow:0 5px 0 #6d28d9;transform:perspective(400px) rotateX(-6deg)}
.button-sample-marquee{border-color:#67e8f9;color:#fff;background:linear-gradient(90deg,#0b1020,#164e63,#0b1020)}
.button-sample-ink-sweep{border-color:#f472b6;color:#fff;background:linear-gradient(135deg,#111827 0 42%,#f472b6 43% 58%,#7c3aed 59%)}
.gallery-button-role-grid{margin:10px 0}.gallery-role-button-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gallery-role-button-preview button{position:relative;overflow:hidden;min-width:0;padding:8px!important}
.gallery-role-button-preview [class*="button-sample-"]{border-radius:var(--preview-button-radius)!important;font-family:inherit;font-weight:800}

/* R25.9.5 page-specific fonts with global inheritance. */
body{font-family:var(--global-font-family,Inter,"Segoe UI","Microsoft YaHei UI",sans-serif)}
.public-page{font-family:var(--page-body-font,var(--global-font-family,Inter,"Segoe UI","Microsoft YaHei UI",sans-serif))!important}
.home-page :is(.anime-home-brand,.glass-profile-brand,.neon-home-brand,.sakura-brand,.pixel-window-bar,.idol-brand){font-family:var(--home-brand-font,var(--page-body-font))!important}
.home-page :is(h1,.anime-home-copy h1,.glass-profile-content h1,.neon-hero-copy h1,.sakura-postcard-copy h1,.pixel-arcade-copy h1,.idol-stage-copy h1){font-family:var(--page-title-font,var(--page-body-font))!important}
.home-page :is(.anime-home-copy,.glass-profile-content,.neon-hero-copy,.sakura-postcard-copy,.pixel-arcade-copy,.idol-stage-copy,.anime-home-tags,.neon-home-tags,.glass-profile-meta,.sakura-status,.pixel-status,.idol-status,.anime-home-status){font-family:var(--page-text-font,var(--page-body-font))!important}
.home-page :is(.anime-visual-caption,.glass-art-caption,.neon-art-caption,.sakura-caption,.idol-caption){font-family:var(--home-visual-font,var(--page-body-font))!important}
.home-page .anime-home-button{font-family:var(--page-button-font,var(--page-body-font))!important}
.desktop-handoff .qr-card h1{font-family:var(--page-title-font,var(--page-body-font))!important}
.desktop-handoff :is(.lead,.muted-light,.handoff-status,.qr-countdown,.qr-helper,.qr-custom-block,.qr-copyright){font-family:var(--page-text-font,var(--page-body-font))!important}
.desktop-handoff .qr-actions .btn{font-family:var(--page-button-font,var(--page-body-font))!important}
.mobile-loading .loading-card h1{font-family:var(--page-title-font,var(--page-body-font))!important}
.mobile-loading .loading-card :is(p,.loading-dots){font-family:var(--page-text-font,var(--page-body-font))!important}
.error-page .error-card h1{font-family:var(--page-title-font,var(--page-body-font))!important}
.error-page .error-card :is(p,.eyebrow,.error-code,.qr-expired-icon,.device-anomaly-icon){font-family:var(--page-text-font,var(--page-body-font))!important}
.error-page .error-card .btn{font-family:var(--page-button-font,var(--page-body-font))!important}
.settings-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.font-library-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin:14px 0 18px}
.font-library-item{display:flex;align-items:center;gap:11px;border:1px solid #d8deea;border-radius:13px;padding:12px;background:#fff;cursor:pointer}
.font-library-item input{width:18px;height:18px;flex:0 0 auto}
.font-library-item span{display:grid;min-width:0;gap:3px}.font-library-item strong,.font-library-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.font-library-item small{color:#667085}.font-library-item em{margin-left:auto;color:#b42318;font-size:11px;font-style:normal}
@media(max-width:980px){.settings-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.settings-grid-four{grid-template-columns:1fr}.font-library-item{align-items:flex-start;flex-wrap:wrap}.font-library-item em{width:100%;margin-left:29px}}
.visual-crystal .gallery-card-visual-preview{border-color:transparent;background:linear-gradient(#111827,#111827) padding-box,conic-gradient(#67e8f9,#fff,#c084fc,#67e8f9) border-box;box-shadow:0 0 18px rgba(103,232,249,.35)}
.visual-ribbon .gallery-card-visual-preview::after{content:"ACG";position:absolute;right:-6px;top:8px;padding:4px 10px;color:#fff;background:linear-gradient(90deg,#f472b6,#8b5cf6);font-size:8px;font-weight:900;clip-path:polygon(0 0,100% 0,84% 50%,100% 100%,0 100%)}
.visual-window .gallery-card-visual-preview{padding-top:12px;border-radius:10px}.visual-window .gallery-card-visual-preview::before{content:"● ● ●";position:absolute;inset:0 0 auto;height:12px;padding-left:6px;color:#67e8f9;background:#344054;font-size:6px;line-height:12px}
.visual-shrine .gallery-card-visual-preview{border:2px solid #ef4444;border-radius:10px 10px 16px 16px;box-shadow:inset 0 0 0 3px rgba(244,114,182,.12)}.visual-shrine .gallery-card-visual-preview::after{content:"◇";position:absolute;top:2px;left:50%;color:#fbbf24;transform:translateX(-50%)}
.gallery-full-theme-card.visual-crystal .gallery-full-theme-mini-card{border-color:transparent;background:linear-gradient(#101827,#101827) padding-box,conic-gradient(#67e8f9,#fff,#c084fc,#67e8f9) border-box}
.gallery-full-theme-card.visual-ribbon .gallery-full-theme-mini-card{border-top:5px solid #f472b6}.gallery-full-theme-card.visual-window .gallery-full-theme-mini-card{border-top:10px solid #344054}.gallery-full-theme-card.visual-shrine .gallery-full-theme-mini-card{border:2px solid #ef4444;border-radius:10px 10px 18px 18px}
@media(max-width:680px){.gallery-role-button-preview{grid-template-columns:1fr}.gallery-button-role-grid{grid-template-columns:1fr}}


/* R25.9.6 shortlink SEO admin */
.shortlink-seo-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:14px 0}.shortlink-seo-summary span{display:grid;gap:3px;padding:11px 12px;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.045);color:var(--muted);font-size:.78rem}.shortlink-seo-summary strong{color:var(--text);font-size:1.12rem}.shortlink-seo-actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.shortlink-seo-help{margin-top:10px;color:var(--muted);font-size:.84rem;line-height:1.7}


/* R25.9.7 PC QR dynamic custom button manager. */
.qr-button-editor{display:grid;gap:15px;border:1px dashed #c9cde0;border-radius:17px;padding:17px;background:linear-gradient(145deg,#fbfbff,#f6f8ff)}
.qr-button-editor-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.qr-button-editor-heading>div{display:grid;gap:4px}.qr-button-editor-heading strong{color:#252b45;font-size:14px}.qr-button-editor-heading p{margin:0;max-width:900px;color:#667085;font-size:12px;line-height:1.65}
.qr-button-editor-list{display:grid;gap:13px}.qr-button-editor-item{display:grid;gap:13px;border:1px solid #e0e4ee;border-radius:15px;padding:16px;background:#fff;box-shadow:0 8px 24px rgba(25,35,70,.05)}
.qr-button-item-title{display:flex;align-items:center;gap:9px}.qr-button-item-title strong{color:#2f3650}.qr-button-item-title span{border-radius:999px;padding:3px 8px;color:#475467;background:#f2f4f7;font-size:10px;font-weight:800}.qr-button-enabled-field{align-self:end;margin-bottom:3px}.qr-button-option-row{display:grid;grid-template-columns:auto auto minmax(230px,1fr);gap:12px;align-items:center}.qr-button-live-preview{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0;border-radius:12px;padding:9px 11px;background:#171a2d}.qr-button-live-preview>span{color:#aeb6ce;font-size:10px;font-weight:800}.qr-button-live-preview .btn{min-width:120px}.qr-button-live-preview .ui-button-preset{--ui-btn-accent:#7dd3fc;--ui-btn-accent2:#c084fc}
.qr-custom-button-icon{display:inline-grid;margin-right:6px;place-items:center;font-style:normal}.qr-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:2px}
@media(max-width:1180px){.qr-button-option-row{grid-template-columns:1fr 1fr}.qr-button-live-preview{grid-column:1/-1;justify-content:center}}
@media(max-width:720px){.qr-button-editor-heading{flex-direction:column}.qr-button-editor-heading>.btn{width:100%}.qr-button-option-row{grid-template-columns:1fr}.qr-button-live-preview{grid-column:auto;flex-direction:column}.qr-button-live-preview .btn{width:100%}}


/* R25.9.7.2 旧字体兼容与安全清理 */
.legacy-font-cleanup{margin-top:18px;border:1px solid #d8e4ef;border-radius:16px;padding:16px;background:linear-gradient(145deg,#f8fbff,#fff)}
.legacy-font-cleanup-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.legacy-font-cleanup-heading>div{display:grid;gap:4px}.legacy-font-cleanup-heading strong{font-size:.96rem;color:#14213d}.legacy-font-cleanup-heading span{max-width:760px;color:#596579;font-size:.82rem;line-height:1.55}.legacy-font-cleanup-heading mark{flex:0 0 auto;border-radius:999px;padding:5px 9px;background:#e6f7ef;color:#087443;font-size:.72rem}
.legacy-font-list{display:grid;gap:9px}.legacy-font-item{display:grid;grid-template-columns:auto minmax(160px,1fr) minmax(220px,1.4fr);gap:11px;align-items:center;border:1px solid #dde4ed;border-radius:12px;padding:11px 12px;background:#fff}.legacy-font-item input{width:18px;height:18px}.legacy-font-item span{display:grid;gap:2px;min-width:0}.legacy-font-item strong{color:#172033}.legacy-font-item small{overflow:hidden;color:#6c7788;text-overflow:ellipsis;white-space:nowrap}.legacy-font-item em{justify-self:end;color:#526173;font-size:.76rem;font-style:normal;text-align:right}.legacy-font-item.is-safe{border-color:#bde8d1;background:#f6fffa}.legacy-font-item.is-safe em{color:#087443}.legacy-font-item.is-in-use{background:#fffaf1;border-color:#f2d8a2}.legacy-font-item.is-in-use em{color:#9a5b08}.legacy-font-clean{color:#087443!important}
@media(max-width:760px){.legacy-font-cleanup-heading{display:grid}.legacy-font-cleanup-heading mark{justify-self:start}.legacy-font-item{grid-template-columns:auto 1fr}.legacy-font-item em{grid-column:2;justify-self:start;text-align:left}}

/* R25.9.7.4 · 全局 PC 二维码背景 + 统一按钮分类交互 */
.qr-page-background{
    background-position:var(--qr-bg-position,center)!important;
    background-size:var(--qr-bg-size,cover)!important;
    filter:blur(var(--background-blur,0px)) brightness(var(--qr-bg-brightness,1)) saturate(var(--qr-bg-saturation,1))!important;
    transform:scale(var(--qr-bg-scale,1.03))!important;
}
.public-background-mask{position:fixed;inset:0;z-index:-1;pointer-events:none;background:var(--qr-bg-mask,#0f172a);opacity:var(--qr-bg-mask-opacity,0)}

.button-style-picker{display:grid;gap:14px;margin-top:16px;border:1px solid #dfe3ee;border-radius:18px;padding:16px;background:linear-gradient(145deg,#fff,#f8f9ff);box-shadow:0 12px 28px rgba(31,41,78,.055)}
.button-style-picker-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.button-style-picker-heading>div:first-child{display:grid;gap:4px}.button-style-picker-heading strong{color:#202944;font-size:14px}.button-style-picker-heading p{margin:0;max-width:850px;color:#667085;font-size:12px;line-height:1.6}
.button-style-picker-current{display:grid;min-width:140px;gap:2px;border:1px solid #e4e5f2;border-radius:12px;padding:9px 12px;background:#fff;text-align:right}.button-style-picker-current span{color:#8b93a7;font-size:10px;font-weight:800}.button-style-picker-current strong{overflow:hidden;max-width:220px;color:#5b50d6;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.button-style-target-bar{display:flex;align-items:stretch;gap:8px;overflow-x:auto;padding:2px 0 5px}.button-style-target-caption{display:flex;align-items:center;flex:0 0 auto;color:#667085;font-size:11px;font-weight:900}.button-style-target,.button-style-inherit-action{display:grid;min-width:125px;gap:2px;border:1px solid #dfe3ed;border-radius:12px;padding:9px 11px;color:#344054;background:#fff;text-align:left;cursor:pointer;transition:.18s ease}.button-style-target strong{font-size:12px}.button-style-target small{color:#8b93a7;font-size:10px}.button-style-target:hover,.button-style-target.is-active{border-color:#7465e8;background:#f4f2ff;box-shadow:0 6px 16px rgba(101,87,212,.12)}.button-style-target.is-active strong{color:#594cdc}.button-style-inherit-action{display:flex;align-items:center;justify-content:center;min-width:145px;color:#5b50d6;font-size:11px;font-weight:850}.button-style-inherit-action.is-active{border-color:#7465e8;background:#f4f2ff}
.button-style-category-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;border-radius:14px;padding:6px;background:#eef1f7}.button-style-category-tab{display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:center;min-height:48px;border:1px solid transparent;border-radius:10px;padding:8px 10px;color:#525e72;background:transparent;text-align:left;cursor:pointer}.button-style-category-tab>span{display:grid;min-width:34px;height:25px;place-items:center;border-radius:8px;color:#5c55bf;background:#dedcf8;font-size:9px;font-weight:950;letter-spacing:.04em}.button-style-category-tab strong{font-size:12px}.button-style-category-tab em{border-radius:999px;padding:2px 6px;color:#7a8497;background:rgba(255,255,255,.72);font-size:9px;font-style:normal;font-weight:900}.button-style-category-tab:hover{background:rgba(255,255,255,.7)}.button-style-category-tab.is-active{border-color:#d8d5fb;color:#4d44c8;background:#fff;box-shadow:0 5px 14px rgba(44,51,93,.09)}.button-style-category-tab.is-active>span{color:#fff;background:linear-gradient(135deg,#5e52db,#8a63ef)}
.button-style-category-panel{display:grid;gap:12px}.button-style-category-panel-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.button-style-category-panel-heading>div{display:grid;gap:3px}.button-style-category-panel-heading strong{color:#25304a;font-size:13px}.button-style-category-panel-heading span,.button-style-category-panel-heading small{color:#7a8497;font-size:11px;line-height:1.5}.button-style-category-panel-heading>small{flex:0 0 auto}
.button-style-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.button-style-choice{position:relative;display:grid;gap:9px;min-width:0;border:1px solid #e0e4ed;border-radius:14px;padding:10px;color:#344054;background:#fff;text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.button-style-choice:hover{transform:translateY(-2px);border-color:#bbb5f3;box-shadow:0 10px 20px rgba(51,55,93,.1)}.button-style-choice.is-selected{border-color:#6f61e5;box-shadow:0 0 0 3px rgba(111,97,229,.11),0 10px 20px rgba(51,55,93,.08)}.button-style-choice>i{position:absolute;right:8px;top:8px;display:none;width:20px;height:20px;place-items:center;border-radius:50%;color:#fff;background:#6558dc;font-size:11px;font-style:normal;font-weight:900}.button-style-choice.is-selected>i{display:grid}
.button-style-choice-demo{display:flex;min-height:42px;align-items:center;justify-content:center;border-radius:10px;padding:8px 10px;font-size:11px;font-weight:900;text-align:center;pointer-events:none;--ui-btn-accent:#67e8f9;--ui-btn-accent2:#c084fc}.button-style-choice-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.button-style-choice-foot strong{overflow:hidden;color:#29324a;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.button-style-choice-foot small{flex:0 0 auto;color:#8b93a7;font-size:9px}
.qr-button-editor-item.is-style-target{border-color:#7465e8!important;box-shadow:0 0 0 3px rgba(116,101,232,.12)!important}.qr-button-style-readout strong{display:flex;min-height:42px;align-items:center;border:1px solid #d8deea;border-radius:10px;padding:0 12px;color:#5b50d6;background:#f8f7ff;font-size:12px}.qr-button-style-readout small{color:#8b93a7;font-size:10px}.qr-button-style-picker{margin-top:0}
.home-button-config-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.home-button-config-item{margin:0!important;border:1px solid #e2e5ee!important;border-radius:14px!important;background:#fff!important}.home-button-config-item:hover{border-color:#cfcaf9!important}.anomaly-secondary-button-box{margin:0!important}
.gallery-button-ui-card{min-width:0}.gallery-button-ui-card .button-style-picker{margin-top:10px}.gallery-button-ui-card .button-style-choice-grid{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}.gallery-button-tuning-grid{margin-top:12px}.gallery-palette-quick-section{display:grid;gap:10px;margin-top:15px;border-top:1px dashed #d9deea;padding-top:15px}.gallery-palette-quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:9px}.gallery-palette-quick-card{display:grid;gap:7px;border:1px solid #dfe4ed;border-radius:13px;padding:10px;background:#fff;text-align:left;cursor:pointer;transition:.16s ease}.gallery-palette-quick-card:hover,.gallery-palette-quick-card.is-active{transform:translateY(-2px);border-color:#7465e8;box-shadow:0 8px 18px rgba(73,66,155,.1)}.gallery-palette-quick-card strong{color:#2f3650;font-size:12px}.gallery-palette-quick-card small{color:#8b93a7;font-size:9px}.gallery-palette-quick-swatches{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;height:18px;border-radius:7px}.gallery-palette-quick-swatches i{background:var(--swatch)}
@media(max-width:1050px){.button-style-category-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.home-button-config-list{grid-template-columns:1fr}.gallery-motion-button-grid{grid-template-columns:1fr}}
@media(max-width:720px){.button-style-picker-heading,.button-style-category-panel-heading{display:grid}.button-style-picker-current{text-align:left}.button-style-category-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.button-style-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.button-style-target{min-width:112px}.button-style-category-panel-heading>small{justify-self:start}}
@media(max-width:480px){.button-style-category-tabs,.button-style-choice-grid{grid-template-columns:1fr}}

/* 新增基础质感 */
.ui-btn-solid-3d{background:linear-gradient(180deg,color-mix(in srgb,var(--ui-btn-accent) 78%,#fff),var(--ui-btn-accent))!important;color:#07111f!important;box-shadow:0 6px 0 color-mix(in srgb,var(--ui-btn-accent) 58%,#111827),0 12px 22px rgba(15,23,42,.24)!important}.ui-btn-solid-3d:active{transform:translateY(4px)!important;box-shadow:0 2px 0 color-mix(in srgb,var(--ui-btn-accent) 58%,#111827)!important}
.ui-btn-shadow-lift{border-color:color-mix(in srgb,var(--ui-btn-accent) 25%,#fff)!important;background:#fff!important;color:#172033!important;box-shadow:0 8px 20px rgba(15,23,42,.16)!important}.ui-btn-shadow-lift:hover{transform:translateY(-5px)!important;box-shadow:0 18px 34px color-mix(in srgb,var(--ui-btn-accent) 22%,rgba(15,23,42,.2))!important}
.ui-btn-bevel{border-color:color-mix(in srgb,var(--ui-btn-accent) 50%,#fff)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--ui-btn-accent) 42%,#fff),color-mix(in srgb,var(--ui-btn-accent2) 62%,#111827))!important;color:#fff!important;box-shadow:inset 0 2px 0 rgba(255,255,255,.55),inset 0 -3px 0 rgba(15,23,42,.25),0 8px 18px rgba(15,23,42,.2)!important;text-shadow:0 1px 2px rgba(0,0,0,.34)}
.ui-btn-frosted-edge{border:2px solid transparent!important;background:linear-gradient(rgba(15,23,42,.72),rgba(15,23,42,.72)) padding-box,linear-gradient(135deg,#fff,var(--ui-btn-accent),var(--ui-btn-accent2),#fff) border-box!important;color:#fff!important;box-shadow:inset 0 0 18px rgba(255,255,255,.08),0 8px 26px rgba(15,23,42,.2)!important;backdrop-filter:blur(14px)}
/* 新增发光 / 流光 */
.ui-btn-shine{background:linear-gradient(135deg,var(--ui-btn-accent),var(--ui-btn-accent2))!important;color:#08111f!important}.ui-btn-shine::before{position:absolute;inset:-60% auto -60% -34%;width:24%;background:rgba(255,255,255,.75);filter:blur(4px);content:"";transform:skewX(-18deg);transition:transform .55s ease}.ui-btn-shine:hover::before{transform:translateX(610%) skewX(-18deg)}
.ui-btn-glow-pulse{border-color:var(--ui-btn-accent)!important;background:#090d18!important;color:#fff!important;animation:r25973GlowPulse 1.9s ease-in-out infinite alternate}
.ui-btn-laser{border:1px solid transparent!important;background:linear-gradient(#0b1020,#0b1020) padding-box,linear-gradient(90deg,transparent,var(--ui-btn-accent),var(--ui-btn-accent2),transparent) border-box!important;color:#fff!important;box-shadow:0 0 16px color-mix(in srgb,var(--ui-btn-accent) 28%,transparent)!important}.ui-btn-laser::after{position:absolute;left:8%;right:8%;bottom:2px;height:1px;background:linear-gradient(90deg,transparent,#fff,var(--ui-btn-accent2),transparent);box-shadow:0 0 8px var(--ui-btn-accent2);content:""}
/* 新增填充 / 悬停 */
.ui-btn-fill-left,.ui-btn-fill-center,.ui-btn-split-fill,.ui-btn-ripple{border-color:var(--ui-btn-accent)!important;background:#0f172a!important;color:#fff!important}.ui-btn-fill-left::before,.ui-btn-fill-center::before,.ui-btn-split-fill::before,.ui-btn-split-fill::after,.ui-btn-ripple::before{position:absolute;z-index:-1;background:linear-gradient(135deg,var(--ui-btn-accent),var(--ui-btn-accent2));content:"";transition:transform .28s ease}.ui-btn-fill-left::before{inset:0;transform:scaleX(0);transform-origin:left}.ui-btn-fill-left:hover::before{transform:scaleX(1)}.ui-btn-fill-center::before{inset:0;transform:scaleX(0);transform-origin:center}.ui-btn-fill-center:hover::before{transform:scaleX(1)}.ui-btn-split-fill::before{inset:0 50% 0 0;transform:translateX(-102%)}.ui-btn-split-fill::after{inset:0 0 0 50%;transform:translateX(102%)}.ui-btn-split-fill:hover::before,.ui-btn-split-fill:hover::after{transform:none}.ui-btn-ripple::before{left:50%;top:50%;width:38px;height:38px;border-radius:50%;transform:translate(-50%,-50%) scale(0);opacity:.95}.ui-btn-ripple:hover::before{transform:translate(-50%,-50%) scale(6);opacity:0}
/* 新增动态 / 弹性 */
.ui-btn-jelly{background:linear-gradient(135deg,var(--ui-btn-accent),var(--ui-btn-accent2))!important;color:#07111f!important}.ui-btn-jelly:hover{animation:r25973Jelly .52s ease both}
.ui-btn-bounce{background:#111827!important;border-color:var(--ui-btn-accent)!important;color:#fff!important}.ui-btn-bounce:hover{animation:r25973Bounce .48s ease both}
.ui-btn-arrow-slide{padding-right:40px!important;border-color:var(--ui-btn-accent)!important;background:#111827!important;color:#fff!important}.ui-btn-arrow-slide::after{position:absolute;right:17px;content:"→";transition:transform .2s ease}.ui-btn-arrow-slide:hover::after{transform:translateX(6px)}
/* 新增 ACG / 特色 */
.ui-btn-sakura{border-color:#ffd1e2!important;background:linear-gradient(135deg,#fff7fb,#f9a8d4 48%,#c4b5fd)!important;color:#5b2143!important;box-shadow:0 9px 24px rgba(244,114,182,.26)!important}.ui-btn-sakura::after{content:"✿";margin-left:7px;color:#db2777}
.ui-btn-mecha{border:2px solid var(--ui-btn-accent)!important;border-radius:2px!important;clip-path:polygon(0 8px,8px 0,84% 0,100% 14px,100% 100%,14px 100%,0 84%);background:repeating-linear-gradient(135deg,#0f172a 0 12px,#1f2937 12px 24px)!important;color:#fef08a!important;box-shadow:inset 4px 0 var(--ui-btn-accent2)!important;letter-spacing:.06em}
.ui-btn-holo{border:1px solid rgba(255,255,255,.65)!important;background:linear-gradient(120deg,rgba(34,211,238,.34),rgba(192,132,252,.36),rgba(244,114,182,.34))!important;background-size:220% 220%!important;color:#fff!important;box-shadow:inset 0 0 22px rgba(255,255,255,.12),0 0 22px rgba(34,211,238,.22)!important;backdrop-filter:blur(14px);animation:r25973Holo 4s ease infinite}.ui-btn-holo::after{position:absolute;inset:0;background:repeating-linear-gradient(180deg,transparent 0 5px,rgba(255,255,255,.08) 6px);content:"";pointer-events:none}
@keyframes r25973GlowPulse{from{box-shadow:0 0 8px color-mix(in srgb,var(--ui-btn-accent) 35%,transparent)}to{box-shadow:0 0 25px color-mix(in srgb,var(--ui-btn-accent) 75%,transparent),0 0 44px color-mix(in srgb,var(--ui-btn-accent2) 28%,transparent)}}
@keyframes r25973Jelly{30%{transform:scale(1.08,.92)}50%{transform:scale(.96,1.04)}75%{transform:scale(1.03,.98)}100%{transform:none}}
@keyframes r25973Bounce{35%{transform:translateY(-7px)}65%{transform:translateY(2px)}100%{transform:none}}
@keyframes r25973Holo{50%{background-position:100% 50%}}

/* 后台按钮样式缩略图 */
.button-sample-solid-3d{border:0;color:#07111f;background:#67e8f9;box-shadow:0 5px 0 #155e75}.button-sample-shadow-lift{color:#172033;background:#fff;box-shadow:0 8px 18px rgba(15,23,42,.2)}.button-sample-bevel{color:#fff;background:linear-gradient(#a78bfa,#5b21b6);box-shadow:inset 0 2px #ddd6fe,inset 0 -3px #3b0764}.button-sample-frosted-edge{border:2px solid #67e8f9;color:#fff;background:#334155}
.button-sample-shine{color:#07111f;background:linear-gradient(120deg,#67e8f9,#fff 48%,#c084fc)}.button-sample-glow-pulse{border-color:#22d3ee;color:#fff;background:#090d18;box-shadow:0 0 14px #22d3ee}.button-sample-laser{border-color:#f472b6;color:#fff;background:linear-gradient(90deg,#0b1020,#164e63,#0b1020);box-shadow:inset 0 -2px #22d3ee}.button-sample-fill-left{color:#fff;background:linear-gradient(90deg,#7c3aed 0 48%,#111827 49%)}.button-sample-fill-center{color:#fff;background:linear-gradient(90deg,#111827 0 28%,#22d3ee 29% 71%,#111827 72%)}.button-sample-split-fill{color:#fff;background:linear-gradient(90deg,#c084fc 0 28%,#111827 29% 71%,#22d3ee 72%)}.button-sample-ripple{color:#fff;background:radial-gradient(circle,#67e8f9 0 20%,#111827 22%)}
.button-sample-jelly{border-radius:14px;color:#07111f;background:linear-gradient(135deg,#f9a8d4,#67e8f9)}.button-sample-bounce{border-color:#7c3aed;color:#fff;background:#111827;box-shadow:0 6px 14px rgba(124,58,237,.22)}.button-sample-arrow-slide{color:#fff;background:linear-gradient(90deg,#111827 0 75%,#7c3aed 76%)}.button-sample-sakura{border-color:#f9a8d4;color:#5b2143;background:linear-gradient(135deg,#fff7fb,#f9a8d4,#c4b5fd)}.button-sample-mecha{border:2px solid #facc15;border-radius:2px;color:#fef08a;background:repeating-linear-gradient(135deg,#111827 0 8px,#334155 8px 16px);clip-path:polygon(0 7px,7px 0,86% 0,100% 12px,100% 100%,12px 100%,0 86%)}.button-sample-holo{border-color:#fff;color:#fff;background:linear-gradient(120deg,#0891b2,#7c3aed,#db2777)}
@media(prefers-reduced-motion:reduce){.ui-btn-glow-pulse,.ui-btn-jelly,.ui-btn-bounce,.ui-btn-holo,.ui-btn-shine::before,.ui-btn-fill-left::before,.ui-btn-fill-center::before,.ui-btn-split-fill::before,.ui-btn-split-fill::after,.ui-btn-ripple::before{animation:none!important;transition:none!important}}

/* R25.9.8 hierarchical global button library */
.button-library-picker{overflow:hidden}.button-library-tree{display:grid;gap:9px}.button-library-root{overflow:hidden;border:1px solid #e2e6ef;border-radius:14px;background:#fff}.button-library-root-toggle,.button-library-sub-toggle{width:100%;border:0;background:transparent;cursor:pointer}.button-library-root-toggle{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:9px;padding:13px 14px;color:#27314d;text-align:left}.button-library-root-toggle:hover,.button-library-root.is-open>.button-library-root-toggle{background:linear-gradient(90deg,#f6f5ff,#fbfcff)}.button-library-root-toggle strong{font-size:13px}.button-library-root-toggle small{border-radius:999px;padding:3px 8px;color:#7465e8;background:#f2f0ff;font-size:10px}.button-library-folder-icon{display:grid;width:22px;height:22px;place-items:center;border-radius:7px;color:#7465e8;background:#f0efff;transition:.18s}.button-library-root.is-open>.button-library-root-toggle .button-library-folder-icon{transform:rotate(90deg)}.button-library-root-panel{display:grid;gap:7px;border-top:1px solid #edf0f5;padding:9px;background:#f9fafe}.button-library-sub{overflow:hidden;border:1px solid #e5e8f0;border-radius:11px;background:#fff}.button-library-sub-toggle{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:7px;padding:10px 12px;color:#46506a;text-align:left}.button-library-sub-toggle:hover,.button-library-sub.is-open>.button-library-sub-toggle{color:#5b50d6;background:#f8f7ff}.button-library-sub-toggle span{transition:.18s}.button-library-sub.is-open>.button-library-sub-toggle span{transform:rotate(90deg)}.button-library-sub-toggle small{color:#98a0b2;font-size:9px}.button-library-sub-panel{border-top:1px dashed #e3e6ef;padding:12px}.button-library-empty{margin:0;color:#98a0b2;font-size:11px}.button-library-manage-link{display:flex;justify-content:flex-end;padding-top:2px}.button-library-manage-link a{color:#6558d9;font-size:11px;font-weight:800;text-decoration:none}.button-library-manage-link a:hover{text-decoration:underline}.button-style-choice-demo .ui-button-label,.button-style-choice-demo .ui-button-icon{position:relative;z-index:1}.ui-button-icon{display:inline-flex;margin-right:.35em}.ui-button-label{display:inline-flex;align-items:center}.button-style-choice-demo .ui-button-icon{margin-right:.25em}

.button-library-admin-main{display:grid;gap:18px}.button-library-hero{align-items:center}.button-library-stats{display:flex;gap:8px;flex-wrap:wrap}.button-library-stats span{display:grid;min-width:76px;gap:2px;border:1px solid #e2e4ed;border-radius:13px;padding:9px 11px;background:#fff;color:#737b90;font-size:10px;text-align:center}.button-library-stats b{color:#5b50d6;font-size:19px}.button-library-import-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.button-library-import-card{display:grid;gap:11px;border:1px solid #e2e5ee;border-radius:15px;padding:14px;background:linear-gradient(145deg,#fff,#fafaff)}.button-library-import-card h3{margin:0;color:#28324c;font-size:14px}.button-library-scope-row{display:flex;flex-wrap:wrap;gap:7px}.button-library-scope-row label{display:inline-flex;align-items:center;gap:5px;border:1px solid #e1e4ed;border-radius:999px;padding:5px 8px;color:#687087;background:#fff;font-size:10px}.button-pack-example pre{overflow:auto;border-radius:10px;padding:10px;color:#d8def4;background:#171a2d;font-size:10px}.button-category-create-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.button-category-create-card{display:grid;grid-template-columns:minmax(120px,1fr) minmax(110px,.8fr) 100px auto;align-items:end;gap:8px;border:1px solid #e1e4ed;border-radius:13px;padding:11px;background:#fafbff}.button-category-create-card strong{grid-column:1/-1;color:#46506a;font-size:12px}.button-category-create-card input,.button-category-create-card select{min-width:0}.button-category-admin-tree,.button-library-admin-tree{display:grid;gap:10px;margin-top:14px}.button-category-admin-root,.button-library-admin-root,.button-library-admin-sub{overflow:hidden;border:1px solid #e1e5ee;border-radius:13px;background:#fff}.button-category-admin-root>summary,.button-library-admin-root>summary,.button-library-admin-sub>summary{display:flex;align-items:center;gap:8px;padding:11px 13px;color:#36405a;cursor:pointer;list-style:none}.button-category-admin-root>summary small,.button-library-admin-sub>summary small{margin-left:auto;color:#8a92a6;font-size:9px}.button-category-admin-children{display:flex;flex-wrap:wrap;gap:7px;border-top:1px solid #edf0f4;padding:10px}.button-category-admin-child{display:flex;gap:7px;border:1px solid #e4e7ee;border-radius:999px;padding:6px 9px;color:#596179;background:#fafbff;font-size:10px}.button-category-admin-child small{color:#9aa1b2}.button-library-admin-root{padding-bottom:8px}.button-library-admin-sub{margin:0 9px 9px;background:#fafbff}.button-library-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px;border-top:1px solid #edf0f4;padding:10px}.button-library-admin-card{min-width:0;border:1px solid #dfe3eb;border-radius:13px;padding:11px;background:#fff;box-shadow:0 7px 18px rgba(31,41,78,.04)}.button-library-admin-card.is-deleted{opacity:.64}.button-library-admin-preview{display:grid;min-height:78px;place-items:center;border-radius:11px;padding:12px;background:linear-gradient(135deg,#161a2d,#222844)}.button-library-admin-preview .btn{width:min(210px,100%);justify-content:center}.button-library-admin-meta{display:flex;justify-content:space-between;gap:8px;margin-top:10px}.button-library-admin-meta>div{display:grid;gap:2px;min-width:0}.button-library-admin-meta strong{overflow:hidden;color:#313a53;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.button-library-admin-meta small{overflow:hidden;color:#9299aa;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.status-pill{align-self:start;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800}.status-pill.is-ok{color:#0f766e;background:#ccfbf1}.status-pill.is-warn{color:#9a3412;background:#ffedd5}.button-library-style-editor{margin-top:9px;border-top:1px dashed #e2e5ed;padding-top:8px}.button-library-style-editor>summary{color:#6558d9;font-size:10px;font-weight:800;cursor:pointer}.button-style-edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:9px}.button-style-edit-form .field-full{grid-column:1/-1}.button-library-card-actions,.button-library-danger-row{display:flex;gap:8px;justify-content:flex-end}.button-library-card-actions{grid-column:1/-1}.button-library-danger-row{margin-top:8px}.btn-danger{border-color:#fecaca!important;color:#b91c1c!important;background:#fff1f2!important}.btn-danger:hover{background:#ffe4e6!important}
@media(max-width:860px){.button-library-import-grid,.button-category-create-grid{grid-template-columns:1fr}.button-category-create-card{grid-template-columns:1fr 1fr}.button-category-create-card strong{grid-column:1/-1}.button-library-admin-grid{grid-template-columns:1fr}}@media(max-width:640px){.button-style-edit-form{grid-template-columns:1fr}.button-style-edit-form .field-full{grid-column:auto}.button-category-create-card{grid-template-columns:1fr}.button-library-root-toggle{grid-template-columns:22px 1fr auto}}
.button-category-edit-row{display:grid;grid-template-columns:minmax(130px,1fr) minmax(110px,.8fr) 90px auto auto;gap:7px;align-items:center;border-top:1px solid #edf0f4;padding:9px 10px;background:#fcfcff}.button-category-edit-row.is-child{grid-template-columns:minmax(120px,.9fr) minmax(120px,1fr) minmax(100px,.8fr) 80px auto auto;border:0;padding:0;background:transparent}.button-category-edit-row label{display:inline-flex;align-items:center;gap:4px;color:#657087;font-size:10px;white-space:nowrap}.button-category-admin-child-edit{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;width:100%;border:1px solid #e5e8ef;border-radius:11px;padding:8px;background:#fff}.button-category-admin-child-edit>small{color:#98a0b2;font-size:9px;white-space:nowrap}.button-category-root-danger{display:flex;justify-content:flex-end;padding:0 10px 10px}.button-category-admin-children{display:grid!important}.button-category-admin-child{display:none}.button-category-edit-row input,.button-category-edit-row select{min-width:0}@media(max-width:980px){.button-category-edit-row,.button-category-edit-row.is-child{grid-template-columns:1fr 1fr}.button-category-admin-child-edit{grid-template-columns:1fr}.button-category-edit-row button{width:100%}}@media(max-width:640px){.button-category-edit-row,.button-category-edit-row.is-child{grid-template-columns:1fr}}

/* R25.9.8.1 · 按钮资源库与画廊按钮排版优化 */
.button-library-admin-main{max-width:1320px;margin-left:auto;margin-right:auto;gap:16px}
.button-library-hero{padding-top:18px!important;padding-bottom:18px!important}.button-library-hero h1{margin:.2rem 0 .35rem}.button-library-hero p{max-width:820px}
.button-library-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.button-library-guide>a{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center;border:1px solid #e0e4ee;border-radius:15px;padding:12px 14px;color:#303950;background:#fff;text-decoration:none;transition:.16s ease}.button-library-guide>a:hover{transform:translateY(-2px);border-color:#c9c3fb;background:#fbfaff;box-shadow:0 8px 20px rgba(52,54,92,.07)}.button-library-guide b{display:grid;width:34px;height:34px;place-items:center;border-radius:11px;color:#fff;background:linear-gradient(135deg,#6558dc,#9c72ef);font-size:13px}.button-library-guide span{display:grid;gap:3px;min-width:0}.button-library-guide strong{font-size:12px}.button-library-guide small{color:#7b8497;font-size:10px;line-height:1.45}
.button-library-jumpbar{display:flex;gap:7px;flex-wrap:wrap}.button-library-jumpbar a{border:1px solid #e0e4ed;border-radius:999px;padding:7px 12px;color:#5d6478;background:#fff;font-size:11px;font-weight:800;text-decoration:none}.button-library-jumpbar a:hover{border-color:#bdb6f8;color:#5c50d8;background:#f7f5ff}
.button-library-section-heading{align-items:end}.button-library-filterbar{display:grid;grid-template-columns:minmax(180px,1fr) 140px;gap:8px;min-width:min(420px,100%)}.button-library-filterbar label{display:grid;gap:4px}.button-library-filterbar label>span{color:#7b8497;font-size:9px;font-weight:850}.button-library-filterbar input,.button-library-filterbar select{min-width:0;height:38px;border:1px solid #dce1ea;border-radius:10px;padding:0 11px;background:#fff;color:#344054}
.button-library-admin-root>summary,.button-library-admin-sub>summary,.button-category-admin-root>summary{user-select:none}.button-library-summary-arrow{display:grid;width:22px;height:22px;place-items:center;border-radius:7px;color:#6659dc;background:#f1efff;transition:.16s ease}.button-library-admin-root[open]>summary .button-library-summary-arrow,.button-library-admin-sub[open]>summary .button-library-summary-arrow,.button-category-admin-root[open]>summary .button-library-summary-arrow{transform:rotate(90deg)}
.button-library-admin-root{padding-bottom:0}.button-library-admin-root>summary{min-height:48px;padding:11px 14px}.button-library-admin-root[open]>summary{border-bottom:1px solid #eceff5;background:#fbfaff}.button-library-admin-sub{margin:9px;background:#fafbff}.button-library-admin-sub>summary{min-height:44px}.button-library-admin-sub[open]>summary{border-bottom:1px solid #eaedf3;background:#fff}.button-library-admin-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;border-top:0;padding:11px}.button-library-admin-card{display:grid;align-content:start;padding:10px}.button-library-admin-preview{min-height:64px;padding:9px}.button-library-admin-preview .btn{width:min(180px,100%);min-height:36px}.button-library-style-editor>summary{display:flex;justify-content:space-between;gap:8px;padding:7px 0}.button-library-style-editor>summary span{color:#9aa1b2;font-size:9px;font-weight:700}.button-library-no-results{margin:12px 0 0;border:1px dashed #d9deea;border-radius:12px;padding:16px;color:#7a8496;background:#fafbff;text-align:center;font-size:11px}
.button-library-import-workspace{display:grid;gap:10px}.button-library-tool-card{overflow:hidden;border:1px solid #dfe4ed;border-radius:15px;background:#fff}.button-library-tool-card>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;cursor:pointer;list-style:none}.button-library-tool-card>summary>span{display:grid;grid-template-columns:42px 1fr;column-gap:10px;align-items:center}.button-library-tool-card>summary b{grid-row:1/3;display:grid;width:40px;height:40px;place-items:center;border-radius:12px;color:#6155d8;background:#f0efff;font-size:11px}.button-library-tool-card>summary strong{color:#303950;font-size:13px}.button-library-tool-card>summary small{color:#7e8799;font-size:10px}.button-library-tool-card>summary i{color:#766be0;font-style:normal;transition:.16s}.button-library-tool-card[open]>summary{border-bottom:1px solid #eceff5;background:#fbfaff}.button-library-tool-card[open]>summary i{transform:rotate(90deg)}.button-library-tool-card.is-primary>summary b{color:#fff;background:linear-gradient(135deg,#6558dc,#9870ee)}
.button-library-css-form{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(360px,1.35fr);gap:14px;padding:14px}.button-library-import-meta,.button-library-import-code{display:grid;align-content:start;gap:10px}.button-library-import-code textarea{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.button-library-scope-block{display:grid;gap:7px}.button-library-scope-block>strong{color:#596276;font-size:10px}.button-library-import-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px dashed #dfe3eb;padding-top:11px}.button-library-import-actions p{margin:0;max-width:780px;color:#7b8497;font-size:10px;line-height:1.5}.button-library-zip-form{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:end;padding:14px}.button-library-zip-form p{margin:0 0 9px;color:#687286;font-size:10px;line-height:1.6}.button-library-zip-actions{display:flex;align-items:center;gap:9px}.button-library-zip-actions .button-pack-example{position:relative}.button-library-zip-actions .button-pack-example pre{position:absolute;right:0;z-index:10;width:min(520px,80vw);max-height:320px;margin-top:8px;box-shadow:0 14px 34px rgba(18,24,47,.18)}
.button-library-management-panel{padding:0!important}.button-library-management-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;cursor:pointer;list-style:none}.button-library-management-summary>span{display:grid;gap:3px}.button-library-management-summary strong{color:#303950;font-size:14px}.button-library-management-summary small{color:#7c8598;font-size:10px}.button-library-management-summary>i{color:#7064dc;font-style:normal;transition:.16s}.button-library-management-panel[open]>.button-library-management-summary{border-bottom:1px solid #e8ebf2;background:#fbfaff}.button-library-management-panel[open]>.button-library-management-summary>i{transform:rotate(90deg)}.button-library-management-body{padding:14px 16px 16px}

/* 画廊：动画紧凑横排，按钮资源库独占整行 */
.gallery-animation-card{margin-top:18px}.gallery-animation-layout{display:grid;grid-template-columns:minmax(180px,.8fr) repeat(3,minmax(150px,1fr));gap:12px;align-items:end}.gallery-animation-switch{align-self:end;min-height:42px}.gallery-animation-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:10px}.gallery-button-ui-wide{margin-top:16px;min-width:0}.gallery-button-ui-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.gallery-button-ui-heading .gallery-help{margin:0;max-width:900px}.gallery-button-ui-wide .button-style-picker{margin-top:12px;box-shadow:none;background:#fbfcff}.gallery-button-ui-wide .button-style-target-bar{flex-wrap:wrap;overflow:visible}.gallery-button-ui-wide .button-style-target{flex:1 1 150px;min-width:140px}.gallery-button-ui-wide .button-library-root-panel{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:9px;padding:10px}.gallery-button-ui-wide .button-library-sub{margin:0}.gallery-button-ui-wide .button-library-sub-panel{padding:9px}.gallery-button-ui-wide .button-style-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gallery-button-ui-wide .button-style-choice{padding:8px}.gallery-button-ui-wide .button-style-choice-demo{min-height:38px;padding:7px;font-size:10px}.gallery-button-tuning-bar{display:grid;grid-template-columns:minmax(180px,280px) auto;gap:14px;align-items:end;margin-top:12px;border-top:1px dashed #dfe3eb;padding-top:12px}.gallery-button-tuning-bar .switch-field{min-height:42px}

@media(max-width:1180px){.button-library-admin-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-button-ui-wide .button-library-root-panel{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.button-library-guide{grid-template-columns:1fr}.button-library-section-heading{display:grid}.button-library-filterbar{min-width:0;width:100%}.button-library-css-form{grid-template-columns:1fr}.button-library-import-actions{grid-column:auto}.button-library-zip-form{grid-template-columns:1fr}.button-library-zip-actions{justify-content:space-between}.button-library-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-animation-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-animation-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.button-library-admin-main{max-width:none}.button-library-filterbar{grid-template-columns:1fr}.button-library-admin-grid{grid-template-columns:1fr}.button-library-import-actions,.gallery-button-ui-heading{display:grid}.button-library-import-actions .btn,.gallery-button-ui-heading .btn{width:100%}.button-library-zip-actions{display:grid}.gallery-animation-layout,.gallery-animation-metrics,.gallery-button-tuning-bar{grid-template-columns:1fr}.gallery-button-ui-wide .button-library-root-panel{grid-template-columns:1fr}.gallery-button-ui-wide .button-style-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.gallery-button-ui-wide .button-style-choice-grid{grid-template-columns:1fr}.button-library-tool-card>summary>span{grid-template-columns:36px 1fr}.button-library-tool-card>summary b{width:34px;height:34px}}


/* R25.9.8.2 · 按钮资源库后台视觉重构 */
.button-library-admin-main{max-width:1380px;gap:14px;padding-bottom:42px}
.button-library-hero{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;border:1px solid #e2e5ef!important;border-radius:20px!important;padding:18px 20px!important;background:linear-gradient(145deg,#fff,#f9f8ff)!important;box-shadow:0 12px 30px rgba(45,48,83,.055)!important}
.button-library-hero .section-kicker{color:#7063df}.button-library-hero h1{font-size:24px!important;line-height:1.2}.button-library-hero p{margin:0;max-width:760px;color:#70798d;font-size:12px;line-height:1.65}.button-library-stats{display:flex;gap:8px}.button-library-stats span{min-width:72px;border:1px solid #e1e3ec;border-radius:14px;padding:9px 11px;background:#fff;text-align:center;box-shadow:0 4px 12px rgba(30,34,65,.035)}.button-library-stats b{display:block;color:#5e51d8;font-size:19px;line-height:1.15}.button-library-stats span{color:#8a91a0;font-size:9px}
.button-library-commandbar{display:grid;gap:9px}.button-library-mode-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:6px;border:1px solid #e1e5ee;border-radius:18px;background:#f7f8fc}.button-library-mode-tabs>button{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;min-width:0;border:1px solid transparent;border-radius:13px;padding:10px 12px;color:#505a70;background:transparent;text-align:left;cursor:pointer;transition:.16s ease}.button-library-mode-tabs>button:hover{background:#fff;border-color:#e4e1fb}.button-library-mode-tabs>button.is-active{border-color:#cfc8ff;background:#fff;box-shadow:0 7px 18px rgba(73,65,150,.08)}.button-library-mode-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;color:#675bdc;background:#ebe9ff;font-size:15px}.button-library-mode-tabs>button.is-active .button-library-mode-icon{color:#fff;background:linear-gradient(135deg,#6658dc,#9871ef)}.button-library-mode-tabs>button>span:nth-child(2){display:grid;gap:2px;min-width:0}.button-library-mode-tabs strong{font-size:12px;color:#303950}.button-library-mode-tabs small{overflow:hidden;color:#8a92a2;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.button-library-mode-tabs em{min-width:30px;border-radius:999px;padding:4px 7px;color:#6258d5;background:#f0eeff;font-size:10px;font-style:normal;font-weight:850;text-align:center}.button-library-command-hint{display:flex;align-items:center;justify-content:center;gap:9px;color:#778095;font-size:10px}.button-library-command-hint>span{border-radius:999px;padding:3px 7px;color:#685ddd;background:#efedff;font-weight:850}.button-library-command-hint b{font-weight:700}.button-library-command-hint i{color:#b6bbc7;font-style:normal}
.button-library-tab-panel[hidden]{display:none!important}.button-library-tab-panel{animation:button-library-panel-in .18s ease both}@keyframes button-library-panel-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.button-library-list-panel,.button-library-import-panel,.button-library-category-panel{overflow:hidden;border:1px solid #e1e5ee!important;border-radius:20px!important;padding:0!important;background:#fff;box-shadow:0 12px 30px rgba(40,43,75,.045)}.button-library-list-panel>.panel-heading,.button-library-import-panel>.panel-heading,.button-library-category-panel>.panel-heading{margin:0!important;border-bottom:1px solid #eceef4;padding:16px 18px;background:linear-gradient(180deg,#fff,#fbfcff)}.button-library-section-heading h2,.button-library-import-heading h2,.button-library-category-heading h2{margin:3px 0 4px;font-size:18px}.button-library-section-heading p,.button-library-import-heading p,.button-library-category-heading p{margin:0;color:#7b8497;font-size:10px;line-height:1.55}
.button-library-filterbar{grid-template-columns:minmax(220px,1fr) 130px}.button-library-filterbar input,.button-library-filterbar select{height:40px;border-color:#dfe3eb;background:#fafbfe}.button-library-filterbar input:focus,.button-library-filterbar select:focus{border-color:#9186ee;background:#fff;box-shadow:0 0 0 3px rgba(111,95,223,.09);outline:0}
.button-library-admin-tree{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px 16px 16px;background:#f8f9fd}.button-library-admin-root{overflow:hidden;margin:0!important;border:1px solid #e0e4ed!important;border-radius:15px!important;background:#fff!important;box-shadow:none!important}.button-library-admin-root[open]{grid-column:1/-1;border-color:#cec8f6!important;box-shadow:0 9px 24px rgba(73,65,150,.06)!important}.button-library-admin-root>summary{display:grid!important;grid-template-columns:42px minmax(0,1fr) auto 24px;gap:11px;align-items:center;min-height:68px!important;padding:11px 13px!important;border:0!important;background:#fff!important;cursor:pointer;list-style:none}.button-library-admin-root>summary:hover{background:#faf9ff!important}.button-library-admin-root[open]>summary{background:linear-gradient(90deg,#f8f6ff,#fff)!important}.button-library-root-icon{display:grid;width:40px;height:40px;place-items:center;border-radius:12px;color:#6658db;background:#eeecff;font-size:17px}.button-library-admin-root:nth-child(2) .button-library-root-icon{color:#177da0;background:#e8f8ff}.button-library-admin-root:nth-child(3) .button-library-root-icon{color:#b26816;background:#fff5df}.button-library-admin-root:nth-child(4) .button-library-root-icon{color:#b14e7a;background:#fff0f7}.button-library-admin-root:nth-child(5) .button-library-root-icon{color:#6750ba;background:#f3edff}.button-library-root-copy{display:grid;gap:3px;min-width:0}.button-library-root-copy strong{color:#303950;font-size:13px}.button-library-root-copy small{overflow:hidden;color:#8991a2;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.button-library-root-count{border-radius:999px;padding:5px 8px;color:#685ed7;background:#f0eeff;font-size:9px;font-weight:850}.button-library-admin-root>summary .button-library-summary-arrow{background:transparent;color:#8f96a7}.button-library-admin-root-body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;border-top:1px solid #eeeff4;padding:11px;background:#fafbfe}.button-library-admin-sub{overflow:hidden;margin:0!important;border:1px solid #e3e6ed!important;border-radius:12px!important;background:#fff!important}.button-library-admin-sub[open]{grid-column:1/-1;border-color:#d8d2fb!important}.button-library-admin-sub>summary{display:grid!important;grid-template-columns:22px minmax(0,1fr) auto;gap:8px;align-items:center;min-height:50px!important;padding:9px 11px!important;background:#fff!important;cursor:pointer;list-style:none}.button-library-admin-sub>summary:hover{background:#fafbff!important}.button-library-sub-copy{display:grid;gap:1px;min-width:0}.button-library-sub-copy strong{color:#3b4458;font-size:11px}.button-library-sub-copy small{overflow:hidden;color:#979eac;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.button-library-sub-count{color:#766be0;font-size:9px;font-weight:850}.button-library-admin-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important;padding:10px!important;background:#f8f9fc}.button-library-admin-card{overflow:hidden;border:1px solid #e1e5ed!important;border-radius:13px!important;padding:8px!important;background:#fff!important;transition:.16s ease}.button-library-admin-card:hover{transform:translateY(-2px);border-color:#cfc8f7!important;box-shadow:0 8px 18px rgba(54,56,93,.07)!important}.button-library-admin-preview{min-height:58px!important;border:0!important;border-radius:10px!important;padding:8px!important;background:linear-gradient(145deg,#f4f6fa,#fff)!important}.button-library-admin-meta{padding:8px 2px 3px!important}.button-library-admin-meta strong{font-size:11px}.button-library-admin-meta small{font-size:8px}.button-library-style-editor{border-top:1px dashed #e3e5eb}.button-library-style-editor>summary{padding:7px 2px!important;color:#626c80;font-size:9px;cursor:pointer}.button-library-no-results{margin:0 16px 16px}
.button-library-import-heading{align-items:center!important}.button-library-import-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.button-library-import-badges span{border:1px solid #e1e4ec;border-radius:999px;padding:5px 8px;color:#687286;background:#fff;font-size:9px;font-weight:800}.button-library-import-badges span:first-child{border-color:#d8d1ff;color:#6559d8;background:#f5f3ff}.button-library-import-workspace{padding:14px 16px 16px;background:#f8f9fd}.button-library-tool-card{border-radius:14px!important}.button-library-tool-card>summary{padding:11px 13px!important}.button-library-tool-card>summary b{width:36px!important;height:36px!important;border-radius:10px!important}.button-library-css-form{grid-template-columns:minmax(260px,.72fr) minmax(420px,1.28fr)!important;gap:12px!important;padding:12px!important}.button-library-import-meta,.button-library-import-code{gap:8px!important}.button-library-css-form .field{gap:4px}.button-library-css-form .field>span,.button-library-scope-block>strong{font-size:9px!important}.button-library-css-form input,.button-library-css-form select{min-height:38px}.button-library-css-form textarea{resize:vertical}.button-library-scope-row{display:flex!important;gap:6px!important;flex-wrap:wrap}.button-library-scope-row label{margin:0!important;border:1px solid #e1e5ec;border-radius:999px;padding:6px 9px;background:#fff}.button-library-import-actions{margin-top:2px;padding-top:10px!important}.button-library-import-actions .btn{min-width:160px}.button-library-zip-form{padding:12px!important}.button-library-management-body{padding:14px 16px 18px;background:#f8f9fd}.button-category-create-grid{gap:10px}.button-category-create-card,.button-category-admin-root{border-radius:14px!important;background:#fff!important}.button-category-admin-tree{margin-top:12px}
@media(max-width:1100px){.button-library-admin-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.button-library-admin-root-body{grid-template-columns:repeat(2,minmax(0,1fr))}.button-library-css-form{grid-template-columns:1fr!important}.button-library-mode-tabs{grid-template-columns:1fr 1fr 1fr}.button-library-mode-tabs small{display:none}}
@media(max-width:820px){.button-library-hero{grid-template-columns:1fr}.button-library-stats{justify-content:flex-start}.button-library-mode-tabs{grid-template-columns:1fr}.button-library-mode-tabs small{display:block}.button-library-command-hint{display:none}.button-library-admin-tree{grid-template-columns:1fr}.button-library-admin-root[open]{grid-column:auto}.button-library-admin-root-body{grid-template-columns:1fr}.button-library-admin-sub[open]{grid-column:auto}.button-library-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.button-library-section-heading,.button-library-import-heading{display:grid!important;gap:12px}.button-library-import-badges{justify-content:flex-start}}
@media(max-width:520px){.button-library-admin-main{padding-left:10px!important;padding-right:10px!important}.button-library-hero{border-radius:16px!important;padding:15px!important}.button-library-stats{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.button-library-stats span{min-width:0}.button-library-mode-tabs>button{grid-template-columns:34px 1fr auto;padding:9px}.button-library-admin-grid{grid-template-columns:1fr!important}.button-library-root-copy small,.button-library-sub-copy small{white-space:normal}.button-library-root-count{display:none}.button-library-admin-root>summary{grid-template-columns:40px minmax(0,1fr) 24px}.button-library-import-actions{display:grid!important}.button-library-import-actions .btn{width:100%}.button-library-import-badges{display:none}}

/* R25.9.8.3 · 页面设置模块卡片 / 按钮分类折叠修复 */
.button-library-root-panel[hidden],
.button-library-sub-panel[hidden]{display:none!important}
.button-library-root-toggle,.button-library-sub-toggle{position:relative;z-index:1}
.button-library-root:not(.is-open)>.button-library-root-panel,
.button-library-sub:not(.is-open)>.button-library-sub-panel{display:none!important}

.settings-module-grid,
.settings-submodule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.settings-module-card,
.settings-submodule-card{overflow:hidden;border:1px solid #e2e6ef;border-radius:17px;background:#fff;box-shadow:0 7px 22px rgba(42,48,83,.045);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.settings-module-card[open],
.settings-submodule-card[open]{grid-column:1/-1;border-color:#cfc8f8;background:#fcfbff;box-shadow:0 13px 30px rgba(76,65,154,.075)}
.settings-module-summary,
.settings-submodule-summary{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:74px;padding:12px 14px;cursor:pointer;list-style:none;background:#fff;transition:background .18s ease}
.settings-module-summary::-webkit-details-marker,
.settings-submodule-summary::-webkit-details-marker{display:none}
.settings-module-summary:hover,
.settings-submodule-summary:hover{background:#faf9ff}
.settings-module-card[open]>.settings-module-summary,
.settings-submodule-card[open]>.settings-submodule-summary{border-bottom:1px solid #eceafb;background:linear-gradient(90deg,#f7f5ff,#fff)}
.settings-module-number{display:grid;width:38px;height:38px;place-items:center;border:1px solid #ded9ff;border-radius:12px;color:#6d5de2;background:#f2f0ff;font-size:10px;font-weight:950;letter-spacing:.05em}
.settings-module-copy{display:grid;gap:3px;min-width:0}
.settings-module-copy strong{color:#27314b;font-size:13px;font-weight:900}
.settings-module-copy small{overflow:hidden;color:#858da0;font-size:10px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}
.settings-module-state{display:flex;align-items:center;gap:7px;border:1px solid #e5e7ef;border-radius:999px;padding:5px 8px;color:#747d90;background:#fafbfe;font-size:9px;font-weight:850}
.settings-module-state em{font-style:normal}
.settings-module-state i{font-size:12px;font-style:normal;transition:transform .18s ease}
.settings-module-card[open]>.settings-module-summary .settings-module-state,
.settings-submodule-card[open]>.settings-submodule-summary .settings-module-state{border-color:#d6d0ff;color:#6354dc;background:#f2efff}
.settings-module-card[open]>.settings-module-summary .settings-module-state em,
.settings-submodule-card[open]>.settings-submodule-summary .settings-module-state em{font-size:0}
.settings-module-card[open]>.settings-module-summary .settings-module-state em::after,
.settings-submodule-card[open]>.settings-submodule-summary .settings-module-state em::after{font-size:9px;content:"收起"}
.settings-module-card[open]>.settings-module-summary .settings-module-state i,
.settings-submodule-card[open]>.settings-submodule-summary .settings-module-state i{transform:rotate(180deg)}
.settings-module-card-body,
.settings-submodule-card-body{padding:16px 17px 18px}
.settings-module-card-body>.settings-group{margin:0!important;border:0!important;border-radius:0!important;padding:0!important;background:transparent!important;box-shadow:none!important}
.settings-module-card-body>.settings-group>.settings-group-heading{display:none!important}
.settings-module-card[hidden]{display:none!important}

.settings-group-module-shell{margin:0!important;border:0!important;border-radius:0!important;padding:0!important;background:transparent!important;box-shadow:none!important}
.settings-group-module-shell>.settings-group-heading{margin:0 0 14px;padding:2px 2px 8px}
.settings-group-module-shell>.settings-group-heading h3{font-size:18px}
.settings-group-module-shell>.settings-group-heading p{margin-top:4px}
.settings-submodule-grid{margin-top:2px}
.settings-submodule-card-body>.settings-option:first-child,
.settings-submodule-card-body>.settings-grid:first-child{margin-top:0}
.settings-submodule-card-body>.button-style-picker:first-child{margin-top:0}
.settings-submodule-card-body>.qr-block-editor:first-child{margin-top:0}

/* Long QR/anomaly pages should feel like an index first, form second. */
.admin-page-qr .settings-tab-panel>.settings-group-module-shell,
.admin-page-appearance .settings-tab-panel>.settings-module-grid{width:100%}
.admin-page-qr .settings-submodule-card:nth-child(4n+1) .settings-module-number{color:#5b56d7;background:#f1efff}
.admin-page-qr .settings-submodule-card:nth-child(4n+2) .settings-module-number{border-color:#cceaf4;color:#167b97;background:#effbff}
.admin-page-qr .settings-submodule-card:nth-child(4n+3) .settings-module-number{border-color:#f2ddbf;color:#a55f15;background:#fff8e9}
.admin-page-qr .settings-submodule-card:nth-child(4n+4) .settings-module-number{border-color:#f2d1e1;color:#aa4e7c;background:#fff3f9}

@media(max-width:880px){
  .settings-module-grid,.settings-submodule-grid{grid-template-columns:1fr}
  .settings-module-card[open],.settings-submodule-card[open]{grid-column:auto}
}
@media(max-width:560px){
  .settings-module-summary,.settings-submodule-summary{grid-template-columns:36px minmax(0,1fr) auto;gap:9px;min-height:66px;padding:10px}
  .settings-module-number{width:34px;height:34px;border-radius:10px}
  .settings-module-copy small{white-space:normal}
  .settings-module-state em{display:none}
  .settings-module-state{padding:5px 7px}
  .settings-module-card-body,.settings-submodule-card-body{padding:13px}
}

/* R25.9.8.3.1 · Steam/BGM 画廊实时预览工作台 */
.gallery-live-editor-layout{display:grid;grid-template-columns:minmax(360px,.78fr) minmax(0,1.55fr);gap:18px;align-items:start;margin-top:16px}
.gallery-live-preview-rail{position:sticky;top:14px;display:grid;gap:10px;min-width:0;border:1px solid #dfe4ee;border-radius:18px;padding:13px;background:linear-gradient(145deg,#fbfcff,#f6f5ff);box-shadow:0 14px 34px rgba(33,39,75,.07);z-index:3}
.gallery-live-preview-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.gallery-live-preview-heading>div{display:grid;gap:3px}.gallery-live-preview-heading strong{color:#252d45;font-size:14px}.gallery-live-preview-heading small{color:#7c8599;font-size:9px;line-height:1.5}.gallery-live-badge,.gallery-live-unsaved{width:max-content;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:850}.gallery-live-badge{color:#6256d8;background:#eeecff}.gallery-live-unsaved{color:#087443;background:#e9f9f0}
.gallery-live-preview-readout{display:grid;grid-template-columns:auto 1fr;gap:2px 9px;align-items:center;border:1px solid #dfdcfb;border-radius:12px;padding:9px 10px;background:#fff}.gallery-live-preview-readout>span{grid-row:1/3;border-radius:8px;padding:5px 7px;color:#6257d7;background:#f0eeff;font-size:8px;font-weight:850}.gallery-live-preview-readout strong{color:#343b50;font-size:10px}.gallery-live-preview-readout small{color:#8b92a2;font-size:8px;line-height:1.45}
.gallery-live-editor-controls{min-width:0}.gallery-live-editor-controls>.gallery-preset-manager{margin-top:0}
.gallery-style-preview-live{min-height:560px;margin:0;border-color:#cfd5e0;background:#111827}.gallery-style-preview-live .gallery-style-preview-background{filter:blur(var(--preview-background-blur,0px));transform:scale(1.04);transition:filter .16s ease,background-image .16s ease,background-position .16s ease}.gallery-style-preview-live .gallery-style-preview-content{display:flex;min-height:560px;align-items:center;justify-content:flex-start;flex-direction:column;gap:9px;padding:27px 18px 20px}.gallery-style-preview-live .gallery-style-preview-content>h4{font-size:clamp(24px,4vw,34px)}.gallery-style-preview-live .gallery-style-preview-content>p{font-size:11px}.gallery-preview-page-copy{color:var(--preview-page-text,#fff);font-family:var(--preview-body-font,sans-serif);font-size:10px;opacity:.92}
.gallery-style-preview-live article{width:min(100%,330px);gap:8px;padding:12px;border-radius:14px}.gallery-preview-cover{display:grid;min-height:105px;place-items:center;overflow:hidden;border:1px solid var(--preview-border);border-radius:10px;color:rgba(255,255,255,.78);background:linear-gradient(135deg,color-mix(in srgb,var(--preview-accent) 35%,#172033),color-mix(in srgb,var(--preview-accent2) 25%,#0f172a));font-size:10px}.gallery-style-preview-live[data-preview-provider="bangumi"] .gallery-preview-cover{min-height:140px;background:linear-gradient(145deg,#f6d4e2,#f8fafc 46%,color-mix(in srgb,var(--preview-accent) 28%,#fff))}.gallery-preview-card-copy{display:block;line-height:1.55}.gallery-preview-meta{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:0;padding:0;list-style:none}.gallery-preview-meta li{display:grid;gap:2px;border:1px solid color-mix(in srgb,var(--preview-border) 68%,transparent);border-radius:7px;padding:6px;background:rgba(255,255,255,.035);font-size:8px}.gallery-preview-meta b{color:var(--preview-accent)}.gallery-preview-meta span{color:var(--preview-card-text)}
.gallery-role-button-preview{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px!important}.gallery-role-button-preview>div{position:relative;display:grid;gap:4px;min-width:0;padding-top:14px}.gallery-role-button-preview>div>small{overflow:hidden;color:color-mix(in srgb,var(--preview-card-text) 72%,transparent);font-size:7px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.gallery-live-preview-button{--ui-btn-accent:var(--preview-accent,#7c3aed);--ui-btn-accent2:var(--preview-accent2,#22d3ee);width:100%;min-height:36px!important;border-radius:var(--preview-button-radius,10px)!important;padding:7px 8px!important;font-family:var(--preview-card-font,sans-serif)!important;font-size:9px!important}.gallery-style-preview-live.is-button-glow [data-preview-zone="button-download"] .gallery-live-preview-button{box-shadow:0 0 18px color-mix(in srgb,var(--preview-accent) 55%,transparent)!important}
.gallery-preview-footer{margin-top:auto;color:var(--preview-footer-text,#dbe4f0);font-family:var(--preview-body-font,sans-serif);font-size:8px}
.gallery-preview-zone-label{position:absolute;z-index:6;top:-8px;left:8px;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:2px 6px;color:#eef2ff;background:rgba(17,24,39,.78);font-family:Inter,"Microsoft YaHei UI",sans-serif!important;font-size:7px!important;font-style:normal;font-weight:800!important;line-height:1.3!important;letter-spacing:0!important;text-shadow:none!important;-webkit-text-stroke:0 transparent!important;opacity:.45;pointer-events:none;transition:.15s ease}.gallery-style-preview-live [data-preview-zone]{position:relative;transition:outline-color .15s ease,box-shadow .15s ease,background-color .15s ease}.gallery-style-preview-live [data-preview-zone].is-preview-zone-active{outline:2px solid color-mix(in srgb,var(--preview-accent,#7c3aed) 78%,#fff);outline-offset:3px;box-shadow:0 0 0 5px color-mix(in srgb,var(--preview-accent,#7c3aed) 14%,transparent)}.gallery-style-preview-live [data-preview-zone].is-preview-zone-active>.gallery-preview-zone-label,.gallery-style-preview-live [data-preview-zone].is-preview-zone-active>.gallery-preview-surface-label{opacity:1;color:#fff;background:color-mix(in srgb,var(--preview-accent,#7c3aed) 75%,#111827);border-color:rgba(255,255,255,.4)}.gallery-style-preview-live .gallery-style-preview-background>.gallery-preview-zone-label{top:12px;left:12px}.gallery-style-preview-live .gallery-preview-surface-label{top:6px;right:7px;left:auto}.gallery-style-preview-live h4>.gallery-preview-zone-label,.gallery-style-preview-live p>.gallery-preview-zone-label,.gallery-preview-page-copy>.gallery-preview-zone-label,.gallery-preview-footer>.gallery-preview-zone-label{top:-14px;left:50%;transform:translateX(-50%)}
.gallery-live-preview-legend{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#8a92a3;font-size:8px}.gallery-live-preview-legend b{border-radius:999px;padding:4px 7px;color:#6257d7;background:#efedff;font-size:8px}
.gallery-preview-affect-tag{display:inline-flex!important;margin-left:6px;border-radius:999px;padding:2px 5px!important;color:#6b5fdb!important;background:#efedff!important;font-size:7px!important;font-weight:800!important;line-height:1.2!important;vertical-align:middle}.switch-field .gallery-preview-affect-tag{margin-left:7px}
.gallery-live-editor-controls .field:focus-within,.gallery-live-editor-controls .switch-field:focus-within{position:relative}.gallery-live-editor-controls .field:focus-within::after,.gallery-live-editor-controls .switch-field:focus-within::after{content:"实时预览中";position:absolute;top:-7px;right:7px;border-radius:999px;padding:2px 6px;color:#fff;background:#6b5fe0;font-size:7px;font-weight:800;z-index:2}
@media(max-width:1180px){.gallery-live-editor-layout{grid-template-columns:1fr}.gallery-live-preview-rail{position:relative;top:auto}.gallery-style-preview-live{min-height:480px}.gallery-style-preview-live .gallery-style-preview-content{min-height:480px}.gallery-live-editor-controls{min-width:0}}
@media(max-width:620px){.gallery-live-preview-heading{display:grid}.gallery-live-unsaved{justify-self:start}.gallery-style-preview-live{min-height:520px}.gallery-style-preview-live .gallery-style-preview-content{min-height:520px;padding:28px 12px 16px}.gallery-role-button-preview{grid-template-columns:1fr!important}.gallery-live-preview-readout{grid-template-columns:1fr}.gallery-live-preview-readout>span{grid-row:auto;width:max-content}}
.gallery-live-preview-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.gallery-live-replay{border:1px solid #d7d2fb;border-radius:999px;padding:4px 8px;color:#6257d7;background:#fff;font-size:8px;font-weight:850;cursor:pointer}.gallery-live-replay:hover{background:#f1efff}.gallery-style-preview-live .gallery-style-preview-content article{width:min(100%,var(--preview-card-width,330px))}.gallery-style-preview-live[data-enter-style] article.is-preview-replay{animation-delay:var(--preview-motion-delay,0ms)!important;animation-timing-function:var(--preview-motion-easing,ease-out)!important}.gallery-style-preview-live [hidden]{display:none!important}

/* R25.9.8.3.2 · 画廊设置独立折叠 / 按钮工作台 / 画廊状态 */
.gallery-settings-collapse-card{overflow:hidden;border:1px solid #e1e5ee;border-radius:18px;background:#fff;box-shadow:0 9px 26px rgba(33,39,75,.05);transition:border-color .16s ease,box-shadow .16s ease}
.gallery-settings-collapse-card.is-wide{grid-column:1/-1}.gallery-settings-collapse-card[open]{border-color:#d2cdf7;box-shadow:0 13px 32px rgba(73,65,150,.075)}
.gallery-settings-collapse-summary{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:72px;padding:12px 15px;cursor:pointer;list-style:none;background:linear-gradient(180deg,#fff,#fbfcff)}.gallery-settings-collapse-summary::-webkit-details-marker{display:none}.gallery-settings-collapse-summary:hover{background:#faf9ff}.gallery-settings-collapse-card[open]>.gallery-settings-collapse-summary{border-bottom:1px solid #eceafa;background:linear-gradient(90deg,#f8f6ff,#fff)}
.gallery-settings-collapse-number{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;color:#5c53d7;background:#efedff;font-size:10px;font-weight:900}.gallery-settings-collapse-copy{display:grid;gap:3px;min-width:0}.gallery-settings-collapse-copy strong{color:#252d45;font-size:13px}.gallery-settings-collapse-copy small{overflow:hidden;color:#858da0;font-size:9px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.gallery-settings-collapse-state{display:flex;align-items:center;gap:6px;border:1px solid #e1e3ec;border-radius:999px;padding:5px 8px;color:#7c8497;background:#fff;font-size:8px;font-weight:850}.gallery-settings-collapse-state i{font-style:normal;transition:transform .16s ease}.gallery-settings-collapse-card[open] .gallery-settings-collapse-state{border-color:#d6d0ff;color:#6257d7;background:#f3f1ff}.gallery-settings-collapse-card[open] .gallery-settings-collapse-state em{font-size:0}.gallery-settings-collapse-card[open] .gallery-settings-collapse-state em::after{font-size:8px;content:"收起"}.gallery-settings-collapse-card[open] .gallery-settings-collapse-state i{transform:rotate(180deg)}
.gallery-settings-collapse-body{padding:0}.gallery-settings-collapse-body>.gallery-settings-card{margin:0!important;border:0!important;border-radius:0!important;padding:18px!important;background:#fff!important;box-shadow:none!important}.gallery-settings-collapse-body>.gallery-settings-card>.gallery-settings-card-title[hidden]{display:none!important}

.gallery-button-workbench-section{min-width:0}.gallery-button-workbench-preview{display:grid;gap:12px;margin-bottom:14px;border:1px solid #dddff0;border-radius:16px;padding:14px;background:linear-gradient(145deg,#f9f9ff,#fff)}.gallery-button-workbench-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.gallery-button-workbench-heading>div{display:grid;gap:3px}.gallery-button-workbench-heading strong{color:#252d45;font-size:14px}.gallery-button-workbench-heading small{color:#858da0;font-size:9px;line-height:1.45}.gallery-button-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.gallery-button-preview-grid>div{position:relative;display:grid;gap:7px;min-width:0;border:1px solid #e1e5ed;border-radius:13px;padding:19px 10px 10px;background:#fff;transition:.15s ease}.gallery-button-preview-grid>div.is-preview-zone-active{border-color:#8376e8;box-shadow:0 0 0 3px rgba(116,101,232,.11)}.gallery-button-preview-grid>div>small{overflow:hidden;color:#858da0;font-size:8px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.gallery-button-preview-grid .gallery-live-preview-button{--ui-btn-accent:var(--preview-accent,#7c3aed);--ui-btn-accent2:var(--preview-accent2,#22d3ee);width:100%;min-height:42px!important;border-radius:var(--preview-button-radius,10px)!important;font-family:var(--preview-card-font,sans-serif)!important}.gallery-button-workbench-preview.is-button-glow [data-preview-zone="button-download"] .gallery-live-preview-button{box-shadow:0 0 18px color-mix(in srgb,var(--preview-accent,#7c3aed) 55%,transparent)!important}.gallery-button-preview-grid .gallery-preview-zone-label{top:7px;left:9px;opacity:.7}.gallery-button-preview-grid>div.is-preview-zone-active>.gallery-preview-zone-label{opacity:1;background:color-mix(in srgb,var(--preview-accent,#7c3aed) 78%,#111827)}.gallery-button-preview-footer{display:flex;align-items:center;gap:8px;color:#8a92a3;font-size:8px}.gallery-button-preview-footer b{border-radius:999px;padding:4px 7px;color:#6257d7;background:#efedff}.gallery-button-preview-footer a{margin-left:auto;color:#6257d7;font-weight:800;text-decoration:none}.gallery-button-preview-footer a:hover{text-decoration:underline}.gallery-button-workbench-controls{min-width:0;border-top:1px dashed #dfe3eb;padding-top:13px}.gallery-button-workbench-controls .button-style-picker{margin-top:10px;box-shadow:none;background:#fbfcff}.gallery-button-workbench-controls .button-style-target-bar{display:grid;grid-template-columns:auto repeat(5,minmax(130px,1fr));gap:8px;overflow:visible}.gallery-button-workbench-controls .button-style-target-caption{align-self:center}.gallery-button-workbench-controls .button-style-target{min-width:0}.gallery-button-workbench-controls .button-library-root-panel{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:10px}.gallery-button-workbench-controls .button-library-sub{margin:0}.gallery-button-workbench-controls .button-library-sub[aria-expanded="true"]{grid-column:1/-1}.gallery-button-workbench-controls .button-style-choice-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.gallery-button-workbench-controls .button-style-choice-demo{min-height:42px}.gallery-button-workbench-controls .gallery-button-tuning-bar{grid-template-columns:minmax(180px,300px) minmax(180px,280px);justify-content:start}

.gallery-filter-row{margin-top:2px}.gallery-generation-state{display:grid;gap:5px;min-width:92px}.gallery-generated-badge{display:inline-flex;width:max-content;align-items:center;gap:4px;border:1px solid #e3e7ee;border-radius:999px;padding:4px 7px;color:#8a92a2;background:#f7f8fa;font-size:9px;font-weight:850}.gallery-generated-badge.is-generated{border-color:#c8eed8;color:#087443;background:#ecfbf3}.gallery-generated-badge.is-missing{color:#8b93a3;background:#f5f6f8}.links-table th:nth-child(8),.links-table td:nth-child(8){min-width:112px}

@media(max-width:1180px){.gallery-button-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-button-workbench-controls .button-library-root-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-button-workbench-controls .button-style-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-button-workbench-controls .button-style-target-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-button-workbench-controls .button-style-target-caption{grid-column:1/-1}}
@media(max-width:760px){.gallery-settings-collapse-card.is-wide{grid-column:auto}.gallery-settings-collapse-summary{grid-template-columns:34px minmax(0,1fr) auto;padding:10px 11px}.gallery-settings-collapse-copy small{white-space:normal}.gallery-settings-collapse-state em{display:none}.gallery-button-workbench-heading{display:grid}.gallery-button-preview-grid{grid-template-columns:1fr 1fr}.gallery-button-workbench-controls .button-style-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-button-workbench-controls .button-library-root-panel,.gallery-button-workbench-controls .button-style-target-bar,.gallery-button-workbench-controls .gallery-button-tuning-bar{grid-template-columns:1fr}.gallery-button-preview-footer{flex-wrap:wrap}.gallery-button-preview-footer a{margin-left:0;width:100%}}
@media(max-width:480px){.gallery-button-preview-grid,.gallery-button-workbench-controls .button-style-choice-grid{grid-template-columns:1fr}}
.gallery-button-workbench-controls .button-library-sub:has(> .button-library-sub-toggle[aria-expanded="true"]){grid-column:1/-1}
.gallery-button-workbench-controls .button-library-sub:has(> .button-library-sub-toggle[aria-expanded="true"])>.button-library-sub-toggle{border-color:#d7d1ff;color:#6257d7;background:#f7f5ff}


/* R25.9.8.3.4 · BGM 分类筛选与分类角标独立控制 */
.gallery-setting-note{margin:12px 0 0;border:1px solid #e2e5ee;border-radius:12px;padding:10px 12px;color:#6d7587;background:#fafbfe;font-size:10px;line-height:1.65}.gallery-setting-note strong{color:#4e46be}

/* R25.9.8.3.3 · Steam/BGM 画廊设置排版与按钮主题色继承 */
.gallery-style-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.gallery-style-module-card{overflow:hidden;border:1px solid #e1e5ee;border-radius:15px;background:#fff;box-shadow:0 5px 16px rgba(35,39,72,.035)}
.gallery-style-module-card[open]{grid-column:1/-1;border-color:#cec8f6;box-shadow:0 10px 28px rgba(68,60,142,.065)}
.gallery-style-module-card>summary{display:grid;grid-template-columns:38px minmax(0,1fr) auto 20px;gap:10px;align-items:center;min-height:62px;padding:10px 12px;list-style:none;cursor:pointer;background:linear-gradient(180deg,#fff,#fbfcff)}
.gallery-style-module-card>summary::-webkit-details-marker{display:none}
.gallery-style-module-card>summary:hover{background:#faf9ff}
.gallery-style-module-card[open]>summary{border-bottom:1px solid #eceef5;background:linear-gradient(90deg,#f7f5ff,#fff)}
.gallery-style-module-card>summary>span:nth-child(2){display:grid;gap:2px;min-width:0}
.gallery-style-module-card>summary strong{color:#303950;font-size:12px}
.gallery-style-module-card>summary small{overflow:hidden;color:#8a92a3;font-size:9px;text-overflow:ellipsis;white-space:nowrap}
.gallery-style-module-card>summary>em{border-radius:999px;padding:4px 7px;color:#695fda;background:#efedff;font-size:8px;font-style:normal;font-weight:800;white-space:nowrap}
.gallery-style-module-card>summary>i{color:#8b93a5;font-size:13px;font-style:normal;transition:transform .16s ease}
.gallery-style-module-card[open]>summary>i{transform:rotate(180deg)}
.gallery-style-module-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;color:#6659dc;background:#efedff;font-size:11px;font-weight:900}
.gallery-style-module-body{padding:13px 14px 15px;background:#fbfcff}
.gallery-form-grid-clean{gap:10px 12px!important}
.gallery-form-grid-clean .field,.gallery-effect-compact-grid .field{min-width:0}
.gallery-setting-label{display:flex!important;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.gallery-setting-label b{min-width:0;color:#3a4357;font-size:10px;font-weight:800}
.gallery-setting-label small{flex:0 0 auto;border-radius:999px;padding:2px 5px;color:#766be0;background:#f0eeff;font-size:7px;font-weight:800;white-space:nowrap}
.gallery-effect-compact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px;align-items:end}
.gallery-effect-compact-grid .switch-field{min-height:42px;align-self:end;border:1px solid #e3e6ed;border-radius:11px;padding:8px 10px;background:#fff}
.gallery-animation-layout-clean{grid-template-columns:minmax(170px,.9fr) repeat(3,minmax(160px,1fr))!important;gap:10px 12px!important}
.gallery-animation-metrics-clean{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px 12px!important;margin-top:10px}
.gallery-live-editor-layout{grid-template-columns:minmax(330px,.72fr) minmax(0,1.65fr);gap:16px}
.gallery-live-preview-rail{max-width:440px}
.gallery-live-editor-controls>.gallery-preset-manager{border:1px solid #e2e5ee;border-radius:15px;padding:12px;background:#fff}
.gallery-button-color-mode-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,300px) auto;gap:12px;align-items:end;margin:12px 0;border:1px solid #e0e4ed;border-radius:14px;padding:12px;background:linear-gradient(145deg,#f8f9ff,#fff)}
.gallery-button-color-mode-card>div{display:grid;gap:4px;align-self:center}.gallery-button-color-mode-card>div strong{color:#303950;font-size:12px}.gallery-button-color-mode-card>div small{color:#7f8798;font-size:9px;line-height:1.55}
.gallery-button-color-mode-card .btn{align-self:end;white-space:nowrap}
.gallery-button-workbench-controls .button-style-picker{margin-top:12px}
[data-gallery-button-workbench][data-button-color-mode="theme"] .gallery-live-preview-button{--ui-btn-accent:var(--preview-accent,#7c3aed);--ui-btn-accent2:var(--preview-accent2,#22d3ee)}
[data-gallery-button-workbench][data-button-color-mode="theme"] .ui-btn-sakura{border-color:color-mix(in srgb,var(--preview-accent) 48%,#fff)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--preview-accent) 16%,#fff),var(--preview-accent) 54%,var(--preview-accent2))!important;color:#fff!important;box-shadow:0 9px 24px color-mix(in srgb,var(--preview-accent) 30%,transparent)!important}
[data-gallery-button-workbench][data-button-color-mode="theme"] .ui-btn-sakura::after{color:color-mix(in srgb,var(--preview-accent2) 72%,#fff)!important}
[data-gallery-button-workbench][data-button-color-mode="theme"] .ui-btn-mecha{border-color:var(--preview-accent)!important;background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--preview-accent) 13%,#0f172a) 0 12px,color-mix(in srgb,var(--preview-accent2) 17%,#1f2937) 12px 24px)!important;color:color-mix(in srgb,var(--preview-accent) 24%,#fff)!important;box-shadow:inset 4px 0 var(--preview-accent2)!important}
[data-gallery-button-workbench][data-button-color-mode="theme"] .ui-btn-holo{border-color:color-mix(in srgb,var(--preview-accent) 42%,#fff)!important;background:linear-gradient(120deg,color-mix(in srgb,var(--preview-accent) 42%,transparent),color-mix(in srgb,var(--preview-accent2) 44%,transparent),color-mix(in srgb,var(--preview-accent) 24%,#fff))!important;color:#fff!important;box-shadow:inset 0 0 22px rgba(255,255,255,.10),0 0 22px color-mix(in srgb,var(--preview-accent) 25%,transparent)!important}
[data-gallery-button-workbench][data-button-color-mode="theme"] .ui-btn-comic{border-color:color-mix(in srgb,var(--preview-accent) 48%,#111827)!important;background:color-mix(in srgb,var(--preview-accent) 24%,#fff)!important;color:color-mix(in srgb,var(--preview-accent) 72%,#111827)!important;box-shadow:5px 5px 0 color-mix(in srgb,var(--preview-accent2) 55%,#111827)!important}
[data-gallery-button-workbench][data-button-color-mode="theme"] .ui-btn-metal{border-color:color-mix(in srgb,var(--preview-accent) 32%,#d7e0ea)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--preview-accent) 12%,#fff),color-mix(in srgb,var(--preview-accent) 32%,#aeb9c6) 48%,color-mix(in srgb,var(--preview-accent2) 38%,#64748b) 51%,color-mix(in srgb,var(--preview-accent2) 12%,#dbe4ec))!important;color:#101828!important}
[data-gallery-button-workbench][data-button-color-mode="theme"] .ui-btn-aurora{background:linear-gradient(115deg,var(--preview-accent),var(--preview-accent2),color-mix(in srgb,var(--preview-accent) 38%,#fff),var(--preview-accent))!important;background-size:240% 240%!important}
[data-gallery-button-workbench][data-button-color-mode="original"] .gallery-button-workbench-preview::before{content:"样式原色模式";position:absolute;right:14px;top:12px;border-radius:999px;padding:3px 7px;color:#925234;background:#fff2e8;font-size:8px;font-weight:900}
.gallery-button-workbench-preview{position:relative}
@media(max-width:1180px){.gallery-style-module-grid{grid-template-columns:1fr}.gallery-style-module-card[open]{grid-column:auto}.gallery-live-preview-rail{max-width:none}.gallery-button-color-mode-card{grid-template-columns:1fr 1fr}.gallery-button-color-mode-card>div{grid-column:1/-1}.gallery-effect-compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-animation-layout-clean{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gallery-animation-metrics-clean{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:720px){.gallery-style-module-card>summary{grid-template-columns:34px minmax(0,1fr) 18px}.gallery-style-module-card>summary>em{display:none}.gallery-style-module-card>summary small{white-space:normal}.gallery-effect-compact-grid,.gallery-animation-layout-clean,.gallery-animation-metrics-clean,.gallery-button-color-mode-card{grid-template-columns:1fr!important}.gallery-button-color-mode-card>div{grid-column:auto}.gallery-button-color-mode-card .btn{width:100%}}

/* R25.9.8.3.5 · Steam/BGM 分类悬浮筛选后台工作台 */
.gallery-category-filter-settings{min-width:0}.gallery-category-filter-admin-layout{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(520px,1.18fr);gap:16px}.gallery-category-filter-preview-card{min-width:0;border:1px solid #dfe4ed;border-radius:18px;padding:14px;background:linear-gradient(145deg,#f8f9ff,#fff);box-shadow:0 12px 28px rgba(40,44,80,.05)}.gallery-category-filter-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.gallery-category-filter-preview-head>div{display:grid;gap:3px}.gallery-category-filter-preview-head strong{color:#27314a;font-size:14px}.gallery-category-filter-preview-head small{color:#858da0;font-size:9px;line-height:1.5}.gallery-category-filter-preview-stage{--accent:#7c3aed;--accent2:#22d3ee;--preview-filter-radius:16px;--preview-filter-blur:18px;--preview-filter-opacity:.94;--preview-filter-item-radius:10px;position:relative;display:grid;min-height:330px;align-content:start;justify-items:start;overflow:hidden;border:1px solid #e2e6ee;border-radius:16px;padding:26px;background:radial-gradient(circle at 15% 10%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 30%),linear-gradient(145deg,#182131,#0f172a);isolation:isolate}.gallery-category-filter-preview-stage::before{position:absolute;inset:0;z-index:-1;background:linear-gradient(120deg,color-mix(in srgb,var(--accent2) 12%,transparent),transparent 42%);content:""}.category-filter-trigger-preview{--ui-btn-accent:var(--accent);--ui-btn-accent2:var(--accent2);display:inline-flex!important;min-width:170px!important;max-width:100%;min-height:44px!important;align-items:center;justify-content:center;gap:8px!important;padding:8px 13px!important}.category-filter-trigger-preview .category-filter-trigger-value{border-radius:999px;padding:3px 7px;background:rgba(255,255,255,.14);font-size:8px}.gallery-category-popup-preview{display:grid;width:min(310px,100%);gap:8px;margin-top:10px;border:1px solid color-mix(in srgb,var(--accent) 22%,#dfe4ed);border-radius:var(--preview-filter-radius);padding:11px;background:rgba(20,28,43,var(--preview-filter-opacity));box-shadow:0 20px 50px rgba(0,0,0,.34);backdrop-filter:blur(var(--preview-filter-blur)) saturate(135%)}.gallery-category-popup-title{display:grid;gap:2px;padding:2px 4px 5px;color:#fff}.gallery-category-popup-title strong{font-size:11px}.gallery-category-popup-title small{color:rgba(255,255,255,.58);font-size:8px}.gallery-category-popup-list{display:grid;gap:5px}.gallery-category-popup-item{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;border:1px solid transparent;border-radius:var(--preview-filter-item-radius);padding:8px 9px;color:#edf3ff;background:transparent;font-size:9px;text-align:left}.gallery-category-popup-item small{display:grid;min-width:24px;height:21px;place-items:center;border-radius:999px;color:rgba(255,255,255,.7);background:rgba(255,255,255,.08);font-size:7px}.gallery-category-popup-item.is-active{border-color:color-mix(in srgb,var(--accent) 55%,transparent);color:#fff;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 26%,transparent),color-mix(in srgb,var(--accent2) 18%,transparent));box-shadow:inset 3px 0 var(--accent)}.gallery-category-filter-controls{display:grid;align-content:start;gap:13px;min-width:0}.gallery-category-filter-switches{margin:0!important}.gallery-category-filter-fields{grid-template-columns:repeat(3,minmax(0,1fr))!important}.gallery-category-filter-picker-wrap{min-width:0;border-top:1px dashed #dfe3eb;padding-top:12px}.gallery-category-filter-picker-wrap .button-style-picker{margin:0;box-shadow:none}.gallery-category-filter-picker-wrap .button-style-picker-heading{padding:10px 12px}.gallery-category-filter-picker-wrap .button-library-root-panel{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gallery-category-filter-picker-wrap .button-library-sub[aria-expanded="true"]{grid-column:1/-1}.gallery-category-filter-picker-wrap .button-style-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
@media(max-width:1050px){.gallery-category-filter-admin-layout{grid-template-columns:1fr}.gallery-category-filter-preview-card{position:relative}.gallery-category-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){.gallery-category-filter-preview-stage{padding:18px;min-height:300px}.gallery-category-filter-fields{grid-template-columns:1fr!important}.gallery-category-filter-picker-wrap .button-library-root-panel,.gallery-category-filter-picker-wrap .button-style-choice-grid{grid-template-columns:1fr 1fr}}
.gallery-category-filter-preview-stage.button-color-theme .ui-btn-sakura{border-color:color-mix(in srgb,var(--accent) 48%,#fff)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 16%,#fff),var(--accent) 54%,var(--accent2))!important;color:#fff!important;box-shadow:0 9px 24px color-mix(in srgb,var(--accent) 30%,transparent)!important}.gallery-category-filter-preview-stage.button-color-theme .ui-btn-sakura::after{color:color-mix(in srgb,var(--accent2) 72%,#fff)!important}.gallery-category-filter-preview-stage.button-color-theme .ui-btn-mecha{border-color:var(--accent)!important;background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--accent) 13%,#0f172a) 0 12px,color-mix(in srgb,var(--accent2) 17%,#1f2937) 12px 24px)!important;color:color-mix(in srgb,var(--accent) 24%,#fff)!important;box-shadow:inset 4px 0 var(--accent2)!important}.gallery-category-filter-preview-stage.button-color-theme .ui-btn-holo{border-color:color-mix(in srgb,var(--accent) 42%,#fff)!important;background:linear-gradient(120deg,color-mix(in srgb,var(--accent) 42%,transparent),color-mix(in srgb,var(--accent2) 44%,transparent),color-mix(in srgb,var(--accent) 24%,#fff))!important;color:#fff!important;box-shadow:inset 0 0 22px rgba(255,255,255,.10),0 0 22px color-mix(in srgb,var(--accent) 25%,transparent)!important}.gallery-category-filter-preview-stage.button-color-theme .ui-btn-comic{border-color:color-mix(in srgb,var(--accent) 48%,#111827)!important;background:color-mix(in srgb,var(--accent) 24%,#fff)!important;color:color-mix(in srgb,var(--accent) 72%,#111827)!important;box-shadow:5px 5px 0 color-mix(in srgb,var(--accent2) 55%,#111827)!important}.gallery-category-filter-preview-stage.button-color-theme .ui-btn-metal{border-color:color-mix(in srgb,var(--accent) 32%,#d7e0ea)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 12%,#fff),color-mix(in srgb,var(--accent) 32%,#aeb9c6) 48%,color-mix(in srgb,var(--accent2) 38%,#64748b) 51%,color-mix(in srgb,var(--accent2) 12%,#dbe4ec))!important;color:#101828!important}.gallery-category-filter-preview-stage.button-color-theme .ui-btn-aurora{background:linear-gradient(115deg,var(--accent),var(--accent2),color-mix(in srgb,var(--accent) 38%,#fff),var(--accent))!important;background-size:240% 240%!important}

/* R25.9.8.3.9 · Steam/BGM 固定分类面板 + 自定义分类 */
.gallery-category-panel-admin-layout{display:grid;grid-template-columns:minmax(360px,.85fr) minmax(0,1.15fr);gap:18px;align-items:start}
.gallery-category-panel-preview-card{position:sticky;top:82px;display:grid;gap:12px;border:1px solid #e2e6ee;border-radius:18px;padding:14px;background:#fff;box-shadow:0 12px 32px rgba(70,76,102,.07)}
.gallery-category-panel-preview-stage{--accent:#38bdf8;--accent2:#7dd3fc;min-height:240px;border:1px dashed #d8deea;border-radius:16px;padding:20px;background:linear-gradient(145deg,#f7f9fd,#eef2f9)}
.gallery-category-panel-preview{display:grid;gap:12px;border:1px solid #dde3ed;border-radius:17px;padding:14px;background:rgba(255,255,255,.9);box-shadow:0 12px 28px rgba(62,72,95,.09);backdrop-filter:blur(10px)}
.gallery-category-panel-preview-head{display:flex;align-items:center;gap:10px}.gallery-category-panel-preview-kicker{display:grid;min-width:42px;height:42px;place-items:center;border-radius:13px;color:var(--accent);background:color-mix(in srgb,var(--accent) 11%,#fff);font-size:9px;font-weight:900;letter-spacing:.08em}.gallery-category-panel-preview-head>div{display:grid;gap:3px}.gallery-category-panel-preview-head strong{color:#293247;font-size:12px}.gallery-category-panel-preview-head small{color:#8992a6;font-size:9px}
.gallery-category-panel-preview-list{display:flex;flex-wrap:wrap;gap:7px}.gallery-category-panel-preview-option{display:inline-flex;align-items:center;gap:7px;border:1px solid #e0e4ec;border-radius:999px;padding:7px 9px;color:#596174;background:#fff;font-size:10px;font-weight:800;cursor:pointer}.gallery-category-panel-preview-option small{display:grid;min-width:21px;height:19px;place-items:center;border-radius:999px;padding:0 4px;color:#7d8596;background:#f2f4f8;font-size:8px}.gallery-category-panel-preview-option.is-active{border-color:color-mix(in srgb,var(--accent) 65%,#fff);color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent2));box-shadow:0 6px 16px color-mix(in srgb,var(--accent) 22%,transparent)}.gallery-category-panel-preview-option.is-active small{color:#fff;background:rgba(255,255,255,.18)}
.gallery-category-control-group{border:1px solid #e2e6ee;border-radius:16px;background:#fff;overflow:hidden}.gallery-category-control-group>summary{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;list-style:none;background:linear-gradient(180deg,#fff,#fafbfe)}.gallery-category-control-group>summary::-webkit-details-marker{display:none}.gallery-category-control-group>summary>span{display:grid;width:28px;height:28px;place-items:center;border-radius:9px;color:#6d5ce8;background:#f0edff;font-size:10px;font-weight:900}.gallery-category-control-group>summary>strong{color:#27314a;font-size:12px}.gallery-category-control-group>summary>small{color:#8991a4;font-size:9px}.gallery-category-control-group[open]>summary{border-bottom:1px solid #edf0f4}.gallery-category-control-body{display:grid;gap:13px;padding:14px}
.gallery-category-custom-manager[hidden]{display:none!important}.gallery-category-custom-manager{display:grid;gap:12px;border-top:1px dashed #e0e4eb;padding-top:12px}.gallery-category-custom-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.gallery-category-custom-toolbar>div{display:grid;gap:3px}.gallery-category-custom-toolbar strong{font-size:12px;color:#27314a}.gallery-category-custom-toolbar small{font-size:9px;color:#8a92a4;line-height:1.5}.gallery-category-group-list{display:grid;gap:10px}.gallery-category-group-card{display:grid;gap:9px;border:1px solid #e2e6ee;border-radius:14px;padding:11px;background:#fbfcff}.gallery-category-group-head{display:grid;grid-template-columns:minmax(170px,1fr) 90px 100px auto;align-items:end;gap:9px}.gallery-category-group-head .field{margin:0}.gallery-category-order-field input{min-width:0}.gallery-category-enabled{min-height:40px;margin:0!important;padding:8px 9px!important}.gallery-category-source-picker{border:1px solid #e6e9ef;border-radius:11px;background:#fff;overflow:hidden}.gallery-category-source-picker>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;cursor:pointer;color:#4d566a;font-size:10px;font-weight:800}.gallery-category-source-picker>summary b{display:grid;min-width:22px;height:20px;place-items:center;border-radius:999px;color:#6d5ce8;background:#f0edff;font-size:9px}.gallery-category-source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;border-top:1px solid #eef0f4;padding:9px}.gallery-category-source-grid label{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;border:1px solid #eceef3;border-radius:9px;padding:7px 8px;background:#fff;font-size:9px}.gallery-category-source-grid label:has(input:checked){border-color:#c8c0ff;background:#f8f6ff}.gallery-category-source-grid input{margin:0}.gallery-category-source-grid span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gallery-category-source-grid small{color:#8e95a6;font-size:8px}.gallery-category-unmatched-box{display:grid;gap:7px;border:1px dashed #d8dde7;border-radius:12px;padding:10px;background:#fff}.gallery-category-unmatched-box>strong{font-size:11px;color:#364056}.gallery-category-unmatched-box>span{font-size:9px;color:#7e879a}.gallery-category-unmatched-box>div{display:flex;flex-wrap:wrap;gap:5px}.gallery-category-unmatched-box>div span{border-radius:999px;padding:4px 7px;color:#667085;background:#f2f4f7;font-size:8px}
@media(max-width:1180px){.gallery-category-panel-admin-layout{grid-template-columns:1fr}.gallery-category-panel-preview-card{position:relative;top:auto}.gallery-category-group-head{grid-template-columns:minmax(160px,1fr) 86px 100px}.gallery-category-group-head>[data-category-remove-group]{grid-column:1/-1}.gallery-category-source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.gallery-category-control-group>summary{grid-template-columns:30px minmax(0,1fr)}.gallery-category-control-group>summary small{grid-column:2}.gallery-category-custom-toolbar{align-items:stretch;flex-direction:column}.gallery-category-group-head{grid-template-columns:1fr 90px}.gallery-category-enabled{grid-column:1/-1}.gallery-category-source-grid{grid-template-columns:1fr}.gallery-category-panel-preview-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-category-panel-preview-option{justify-content:space-between;border-radius:10px}}
/* R25.9.8.3.7 · 全站自定义按钮统一配色模式 */
.button-color-theme .ui-button-preset{
    --ui-btn-accent:var(--ui-page-accent,#7c3aed)!important;
    --ui-btn-accent2:var(--ui-page-accent2,#22d3ee)!important;
}
.button-color-theme .ui-btn-sakura{
    border-color:color-mix(in srgb,var(--ui-page-accent,#7c3aed) 48%,#fff)!important;
    background:linear-gradient(135deg,color-mix(in srgb,var(--ui-page-accent,#7c3aed) 16%,#fff),var(--ui-page-accent,#7c3aed) 54%,var(--ui-page-accent2,#22d3ee))!important;
    color:#fff!important;
    box-shadow:0 9px 24px color-mix(in srgb,var(--ui-page-accent,#7c3aed) 30%,transparent)!important
}
.button-color-theme .ui-btn-sakura::after{color:color-mix(in srgb,var(--ui-page-accent2,#22d3ee) 72%,#fff)!important}
.button-color-theme .ui-btn-mecha{
    border-color:var(--ui-page-accent,#7c3aed)!important;
    background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--ui-page-accent,#7c3aed) 13%,#0f172a) 0 12px,color-mix(in srgb,var(--ui-page-accent2,#22d3ee) 17%,#1f2937) 12px 24px)!important;
    color:color-mix(in srgb,var(--ui-page-accent,#7c3aed) 24%,#fff)!important;
    box-shadow:inset 4px 0 var(--ui-page-accent2,#22d3ee)!important
}
.button-color-theme .ui-btn-holo{
    border-color:color-mix(in srgb,var(--ui-page-accent,#7c3aed) 42%,#fff)!important;
    background:linear-gradient(120deg,color-mix(in srgb,var(--ui-page-accent,#7c3aed) 42%,transparent),color-mix(in srgb,var(--ui-page-accent2,#22d3ee) 44%,transparent),color-mix(in srgb,var(--ui-page-accent,#7c3aed) 24%,#fff))!important;
    color:#fff!important;
    box-shadow:inset 0 0 22px rgba(255,255,255,.10),0 0 22px color-mix(in srgb,var(--ui-page-accent,#7c3aed) 25%,transparent)!important
}
.button-color-theme .ui-btn-comic{
    border-color:color-mix(in srgb,var(--ui-page-accent,#7c3aed) 48%,#111827)!important;
    background:color-mix(in srgb,var(--ui-page-accent,#7c3aed) 24%,#fff)!important;
    color:color-mix(in srgb,var(--ui-page-accent,#7c3aed) 72%,#111827)!important;
    box-shadow:5px 5px 0 color-mix(in srgb,var(--ui-page-accent2,#22d3ee) 55%,#111827)!important
}
.button-color-theme .ui-btn-metal{
    border-color:color-mix(in srgb,var(--ui-page-accent,#7c3aed) 32%,#d7e0ea)!important;
    background:linear-gradient(180deg,color-mix(in srgb,var(--ui-page-accent,#7c3aed) 12%,#fff),color-mix(in srgb,var(--ui-page-accent,#7c3aed) 32%,#aeb9c6) 48%,color-mix(in srgb,var(--ui-page-accent2,#22d3ee) 38%,#64748b) 51%,color-mix(in srgb,var(--ui-page-accent2,#22d3ee) 12%,#dbe4ec))!important
}
.button-color-theme .ui-btn-aurora{
    background:linear-gradient(115deg,var(--ui-page-accent,#7c3aed),var(--ui-page-accent2,#22d3ee),color-mix(in srgb,var(--ui-page-accent,#7c3aed) 38%,#fff),var(--ui-page-accent,#7c3aed))!important;
    background-size:240% 240%!important
}
.button-picker-color-mode-card{
    display:grid;
    grid-template-columns:minmax(240px,1fr) minmax(240px,.7fr) minmax(280px,1fr);
    gap:12px;
    align-items:end;
    margin:12px 0;
    border:1px solid #e1e5ef;
    border-radius:14px;
    padding:12px;
    background:linear-gradient(145deg,#fafbff,#fff)
}
.button-picker-color-mode-card>div:first-child{display:grid;gap:4px;align-self:center}.button-picker-color-mode-card>div:first-child strong{color:#29324a;font-size:13px}.button-picker-color-mode-card>div:first-child p{margin:0;color:#858da0;font-size:9px;line-height:1.55}
.button-picker-color-preview{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;border-radius:12px;padding:9px;background:#171a2d}.button-picker-color-preview>span{color:#aeb6ce;font-size:9px;font-weight:800}.button-picker-color-preview .ui-button-preset{min-width:120px}
.button-color-theme .button-style-choice-demo{--ui-btn-accent:var(--ui-page-accent,#7c3aed)!important;--ui-btn-accent2:var(--ui-page-accent2,#22d3ee)!important}
@media(max-width:900px){.button-picker-color-mode-card{grid-template-columns:1fr}.button-picker-color-preview{justify-content:flex-start;flex-wrap:wrap}}

/* R25.9.8.3.8 · Favicon admin preview */
.favicon-setting-layout{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(280px,1.2fr);gap:18px;align-items:stretch}
.favicon-preview-card{display:flex;align-items:center;gap:16px;min-height:112px;border:1px solid var(--line,rgba(148,163,184,.22));border-radius:20px;padding:18px;background:rgba(255,255,255,.035)}
.favicon-preview-card img,.favicon-preview-empty{display:grid;width:64px;height:64px;flex:0 0 64px;place-items:center;border-radius:16px;object-fit:contain;background:rgba(255,255,255,.08);box-shadow:0 12px 30px rgba(2,6,23,.18)}
.favicon-preview-empty{font-size:1.65rem;font-weight:800;color:var(--accent,#7dd3fc)}
.favicon-preview-card div{display:grid;gap:5px}.favicon-preview-card small{opacity:.66;word-break:break-all}.favicon-upload-field{margin:0}.favicon-remove-switch{margin-top:14px}
@media(max-width:720px){.favicon-setting-layout{grid-template-columns:1fr}}

/* R25.9.8.3.10 · 分类面板轻量化 */
.gallery-category-panel-preview{border:1px solid #e7eaf1!important;border-radius:16px!important;padding:12px!important;background:linear-gradient(180deg,#fff,#fbfcff)!important;box-shadow:0 10px 26px rgba(31,41,78,.06)!important}
.gallery-category-panel-preview-head{padding-bottom:9px!important;border-bottom:1px solid #eef1f5!important}.gallery-category-panel-preview-head strong{font-size:12px!important}.gallery-category-panel-preview-head small{font-size:9px!important;color:#9097aa!important}
.gallery-category-panel-preview-kicker{display:none!important}.gallery-category-panel-preview-list{gap:7px!important;padding-top:10px!important}.gallery-category-panel-preview-option{border-radius:10px!important;border-color:#e8eaf0!important;background:#fff!important;box-shadow:none!important}.gallery-category-panel-preview-option.is-active{border-color:#c9c3ff!important;background:#f4f2ff!important;color:#5f53d8!important}

/* R25.9.8.3 · 预设方案实时预览与方案管理 */
.gallery-preset-actions-manage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;align-self:end;padding-top:0}.gallery-preset-actions-manage .btn{min-height:34px;justify-content:center;padding:6px 8px;font-size:9px;white-space:nowrap}.btn-danger-ghost{border:1px solid #fecdd3!important;color:#be123c!important;background:#fff7f8!important}.btn-danger-ghost:hover{background:#fff0f2!important}
.gallery-preset-live-summary{display:grid;gap:9px;margin-top:11px;border:1px solid #e3e6ee;border-radius:13px;padding:10px 12px;background:linear-gradient(145deg,#fbfcff,#f8f7ff)}.gallery-preset-live-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.gallery-preset-live-summary-head>div{display:grid;gap:3px;min-width:0}.gallery-preset-live-summary-head strong{color:#313a53;font-size:11px}.gallery-preset-live-summary-head span{color:#858da0;font-size:8.5px;line-height:1.55}.gallery-preset-live-summary-head>b{flex:0 0 auto;border-radius:999px;padding:4px 7px;color:#675bd7;background:#eeecff;font-size:8px}.gallery-preset-diff-list{display:flex;flex-wrap:wrap;gap:6px;border-top:1px dashed #e0e3eb;padding-top:8px}.gallery-preset-diff-list>span{max-width:100%;overflow:hidden;border:1px solid #e2e5ee;border-radius:999px;padding:4px 7px;color:#697286;background:#fff;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.gallery-full-theme-live-summary{margin:12px 0 0}.gallery-full-theme-actions{padding-top:0}
@media(max-width:980px){.gallery-preset-actions-manage{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.gallery-preset-actions-manage{grid-template-columns:1fr}.gallery-preset-live-summary-head{display:grid}.gallery-preset-live-summary-head>b{justify-self:start}.gallery-preset-diff-list>span{white-space:normal}}

/* R25.9.8.3 · Steam/BGM 卡片视觉预设专用实时预览 */
.gallery-card-visual-live{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(220px,.28fr);gap:12px;align-items:stretch;margin:12px 0 14px;border:1px solid #e2e5ed;border-radius:16px;padding:12px;background:linear-gradient(145deg,#fbfcff,#f7f6ff)}.gallery-card-visual-live-stage{display:grid;min-height:250px;place-items:center;overflow:hidden;border:1px solid #e1e5ee;border-radius:14px;padding:22px;background:radial-gradient(circle at 16% 10%,rgba(124,58,237,.13),transparent 34%),linear-gradient(145deg,#111827,#1f2937)}.gallery-card-visual-live-card{position:relative;display:grid;width:min(280px,90%);grid-template-columns:92px minmax(0,1fr);gap:11px;overflow:hidden;border:1px solid #8b5cf6;border-radius:22px;padding:10px;background:linear-gradient(145deg,rgba(17,24,39,.96),rgba(30,41,59,.93));box-shadow:0 18px 44px rgba(0,0,0,.32);transition:.18s}.gallery-card-visual-live-cover{position:relative;display:grid;min-height:128px;place-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:linear-gradient(145deg,#f472b6,#7c3aed);color:#fff;font-size:11px;font-weight:900;letter-spacing:.08em}.gallery-card-visual-live-cover i{position:absolute;inset:auto -18px -26px;width:80px;height:80px;border-radius:50%;background:rgba(255,255,255,.17)}.gallery-card-visual-live-copy{display:grid;align-content:center;gap:5px;min-width:0;color:#fff}.gallery-card-visual-live-copy small{color:#c4b5fd;font-size:7px;letter-spacing:.08em}.gallery-card-visual-live-copy strong{font-size:11px}.gallery-card-visual-live-copy p{margin:0;color:#cbd5e1;font-size:7.5px;line-height:1.5}.gallery-card-visual-live-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:6px}.gallery-card-visual-live-actions b{display:grid;min-height:26px;place-items:center;border-radius:8px;color:#fff;background:linear-gradient(135deg,#7c3aed,#ec4899);font-size:7px}.gallery-card-visual-live-meta{display:grid;align-content:center;gap:6px;border:1px solid #e3e6ee;border-radius:13px;padding:12px;background:#fff}.gallery-card-visual-live-meta>span{justify-self:start;border-radius:999px;padding:4px 7px;color:#675bd7;background:#efedff;font-size:8px;font-weight:900}.gallery-card-visual-live-meta strong{color:#313a53;font-size:13px}.gallery-card-visual-live-meta small{color:#7f8799;font-size:9px;line-height:1.6}.gallery-card-visual-option.is-live-active{border-color:#786bdd!important;box-shadow:0 0 0 2px rgba(120,107,221,.12)!important}.gallery-card-visual-live-card.is-live-replay{animation:gallery-live-card-replay .32s ease both}@keyframes gallery-live-card-replay{from{opacity:.45;transform:translateY(5px) scale(.985)}to{opacity:1;transform:none}}
.gallery-card-visual-live[data-card-visual-live="cyberpunk"] .gallery-card-visual-live-card{border-radius:0;clip-path:polygon(0 14px,14px 0,82% 0,100% 18px,100% 86%,86% 100%,0 100%);box-shadow:0 0 0 1px #22d3ee,0 18px 44px rgba(0,0,0,.42)}.gallery-card-visual-live[data-card-visual-live="minimalist"] .gallery-card-visual-live-card{border-radius:10px;border-color:#cbd5e1;background:#f8fafc;box-shadow:0 8px 20px rgba(15,23,42,.18)}.gallery-card-visual-live[data-card-visual-live="minimalist"] .gallery-card-visual-live-copy{color:#0f172a}.gallery-card-visual-live[data-card-visual-live="minimalist"] .gallery-card-visual-live-copy p{color:#64748b}.gallery-card-visual-live[data-card-visual-live="vtuber"] .gallery-card-visual-live-card{border-radius:22px 22px 30px 30px;border-color:#5eead4;box-shadow:0 0 0 4px rgba(94,234,212,.09),0 18px 44px rgba(0,0,0,.32)}.gallery-card-visual-live[data-card-visual-live="manga"] .gallery-card-visual-live-card{border:3px solid #111827;border-radius:4px;background:#fff;color:#111827;box-shadow:8px 8px 0 #ec4899}.gallery-card-visual-live[data-card-visual-live="manga"] .gallery-card-visual-live-copy{color:#111827}.gallery-card-visual-live[data-card-visual-live="manga"] .gallery-card-visual-live-copy p{color:#475569}.gallery-card-visual-live[data-card-visual-live="hologram"] .gallery-card-visual-live-card{border:1px solid transparent;background:linear-gradient(#182132,#182132) padding-box,linear-gradient(135deg,#22d3ee,#c084fc,#f472b6) border-box;box-shadow:0 18px 44px rgba(0,0,0,.35),inset 0 0 24px rgba(34,211,238,.1)}.gallery-card-visual-live[data-card-visual-live="poster"] .gallery-card-visual-live-card{grid-template-columns:1fr;padding-top:92px}.gallery-card-visual-live[data-card-visual-live="poster"] .gallery-card-visual-live-cover{position:absolute;inset:0 0 auto;height:92px;border:0;border-radius:0}.gallery-card-visual-live[data-card-visual-live="polaroid"] .gallery-card-visual-live-card{overflow:visible;border:8px solid #fff;border-bottom-width:24px;border-radius:4px;transform:rotate(-1deg);box-shadow:0 15px 32px rgba(0,0,0,.3)}.gallery-card-visual-live[data-card-visual-live="ticket"] .gallery-card-visual-live-card{border:2px dashed #f472b6;border-radius:18px}.gallery-card-visual-live[data-card-visual-live="mecha"] .gallery-card-visual-live-card{border-radius:0;clip-path:polygon(0 18px,18px 0,74% 0,80% 8px,100% 8px,100% 82%,82% 100%,8px 100%,8px 74%,0 68%)}.gallery-card-visual-live[data-card-visual-live="idol"] .gallery-card-visual-live-card{border:1px solid transparent;border-radius:28px;background:linear-gradient(#182132,#182132) padding-box,linear-gradient(135deg,#f472b6,#fff,#c084fc) border-box;box-shadow:0 0 28px rgba(244,114,182,.25)}.gallery-card-visual-live[data-card-visual-live="retro"] .gallery-card-visual-live-card{border:4px solid #22d3ee;border-radius:3px;box-shadow:7px 7px 0 #fbbf24}.gallery-card-visual-live[data-card-visual-live="crystal"] .gallery-card-visual-live-card{border:1px solid transparent;border-radius:26px;background:linear-gradient(#182132,#182132) padding-box,conic-gradient(from 35deg,#22d3ee,#fff,#c084fc,#7dd3fc,#22d3ee) border-box}.gallery-card-visual-live[data-card-visual-live="ribbon"] .gallery-card-visual-live-card::after{position:absolute;right:-8px;top:13px;padding:5px 13px;color:#fff;background:linear-gradient(90deg,#7c3aed,#ec4899);clip-path:polygon(0 0,100% 0,88% 50%,100% 100%,0 100%);font-size:6px;font-weight:900;content:"ACG ARCHIVE"}.gallery-card-visual-live[data-card-visual-live="window"] .gallery-card-visual-live-card{padding-top:34px}.gallery-card-visual-live[data-card-visual-live="window"] .gallery-card-visual-live-card::before{position:absolute;inset:0 0 auto;height:25px;padding-left:9px;color:#f472b6;background:#e2e8f0;font-size:10px;line-height:25px;letter-spacing:.22em;content:"● ● ●"}.gallery-card-visual-live[data-card-visual-live="shrine"] .gallery-card-visual-live-card{border:2px solid #dc2626;border-radius:18px 18px 28px 28px;box-shadow:inset 0 0 0 5px rgba(220,38,38,.07),0 18px 44px rgba(0,0,0,.3)}
@media(max-width:900px){.gallery-card-visual-live{grid-template-columns:1fr}.gallery-card-visual-live-meta{align-content:start}}@media(max-width:560px){.gallery-card-visual-live-stage{padding:14px}.gallery-card-visual-live-card{width:100%;grid-template-columns:78px minmax(0,1fr)}}

/* R25.9.9.0 · 404 page + global morph component library */
.not-found-page{min-height:100vh;overflow-x:hidden;background:#070b14}.not-found-background{background-size:var(--nf-bg-size,cover)!important;background-position:var(--nf-bg-position,center)!important}.not-found-overlay{position:fixed;inset:0;z-index:-1;background:color-mix(in srgb,var(--nf-overlay,#0f172a) calc(var(--nf-overlay-alpha,.42)*100%),transparent);pointer-events:none}.not-found-shell{display:grid;min-height:100vh;place-items:center;padding:clamp(24px,6vw,72px) 18px}.not-found-card{position:relative;width:min(var(--nf-width,760px),100%);overflow:hidden;border:1px solid color-mix(in srgb,var(--nf-accent,#8b5cf6) 20%,rgba(255,255,255,.16));border-radius:var(--nf-radius,30px);padding:clamp(28px,6vw,58px);color:#f8fafc;background:color-mix(in srgb,var(--nf-card,#0f172a) calc(var(--nf-card-alpha,.76)*100%),transparent);box-shadow:0 30px 90px rgba(2,6,23,.42),inset 0 1px rgba(255,255,255,.09);backdrop-filter:blur(28px) saturate(140%);isolation:isolate}.not-found-card::before{position:absolute;inset:-40% -20% auto auto;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--nf-accent) 28%,transparent),transparent 66%);content:"";filter:blur(6px);z-index:-1}.not-found-copy{display:grid;justify-items:center;text-align:center}.not-found-eyebrow{margin:0 0 10px;color:color-mix(in srgb,#fff 66%,var(--nf-accent));font:800 .72rem/1.2 var(--page-text-font,var(--page-body-font));letter-spacing:.16em;text-transform:uppercase}.not-found-code{font:900 clamp(4.5rem,15vw,9.5rem)/.82 var(--page-title-font,var(--page-body-font));letter-spacing:-.08em;color:transparent;background:linear-gradient(135deg,#fff 10%,var(--nf-accent) 45%,var(--nf-accent2));-webkit-background-clip:text;background-clip:text;text-shadow:0 20px 60px color-mix(in srgb,var(--nf-accent) 18%,transparent)}.not-found-card h1{max-width:680px;margin:18px 0 0;color:#fff;font:800 clamp(1.5rem,4vw,2.35rem)/1.2 var(--page-title-font,var(--page-body-font));letter-spacing:-.03em}.not-found-message{max-width:620px;margin:14px auto 0;color:rgba(241,245,249,.78);font:500 .98rem/1.8 var(--page-text-font,var(--page-body-font))}.not-found-help{max-width:620px;margin:8px auto 0;color:rgba(226,232,240,.54);font:500 .8rem/1.7 var(--page-text-font,var(--page-body-font))}.not-found-context{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 10px;margin:14px 0 0;border:1px solid rgba(255,255,255,.09);border-radius:999px;padding:7px 11px;color:rgba(226,232,240,.68);background:rgba(255,255,255,.04);font-size:.72rem}.not-found-context strong{color:#fff}.not-found-orbit{display:flex;align-items:center;justify-content:center;gap:8px;margin:-6px 0 12px;color:rgba(255,255,255,.18);font-weight:900}.not-found-orbit i{color:var(--nf-accent);font-style:normal;font-size:.8rem}.not-found-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px}.not-found-actions .btn{min-width:150px;min-height:44px;font-family:var(--page-button-font,var(--page-body-font))}.not-found-countdown{display:flex;align-items:center;justify-content:center;gap:8px;width:max-content;max-width:100%;margin:18px auto 0;border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:8px 12px;color:rgba(241,245,249,.68);background:rgba(255,255,255,.04);font-size:.75rem}.not-found-countdown span{color:var(--nf-accent)}
.not-found-template-minimal .not-found-card{border-color:rgba(148,163,184,.18);box-shadow:0 18px 60px rgba(2,6,23,.24);backdrop-filter:blur(14px)}.not-found-template-neon .not-found-card{box-shadow:0 0 0 1px color-mix(in srgb,var(--nf-accent) 36%,transparent),0 0 60px color-mix(in srgb,var(--nf-accent) 18%,transparent),0 30px 90px rgba(2,6,23,.48)}.not-found-template-split-illustration .not-found-card{display:grid;grid-template-columns:.78fr 1.22fr;gap:28px;align-items:center}.not-found-template-split-illustration .not-found-orbit{grid-column:1}.not-found-template-split-illustration .not-found-copy{grid-column:1/3}.not-found-template-split-illustration .not-found-code{font-size:clamp(5.5rem,18vw,11rem)}
.morph-component-stack{display:grid;gap:9px;margin-top:20px}.morph-component{--morph-accent:var(--nf-accent,var(--ui-page-accent,#8b5cf6));display:flex;align-items:flex-start;gap:10px;border:1px solid rgba(255,255,255,.1);border-radius:15px;padding:11px 13px;color:rgba(248,250,252,.83);background:rgba(255,255,255,.055);box-shadow:inset 0 1px rgba(255,255,255,.06);backdrop-filter:blur(14px)}.morph-component>i{display:grid;min-width:28px;height:28px;place-items:center;border-radius:9px;color:#fff;background:color-mix(in srgb,var(--morph-accent) 28%,transparent);font-style:normal}.morph-component>div{display:grid;gap:3px;min-width:0}.morph-component strong{color:#fff;font-size:.78rem}.morph-component p,.morph-component span{margin:0;color:rgba(226,232,240,.68);font-size:.72rem;line-height:1.55}.morph-style-accent{border-color:color-mix(in srgb,var(--morph-accent) 32%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--morph-accent) 13%,transparent),rgba(255,255,255,.035))}.morph-style-dark{background:rgba(2,6,23,.6)}.morph-style-light{border-color:rgba(255,255,255,.55);color:#1e293b;background:rgba(255,255,255,.88)}.morph-style-light strong,.morph-style-light p,.morph-style-light span{color:#334155}.morph-style-outline{background:transparent}.morph-component-ticker{display:block;overflow:hidden;padding:8px 0}.morph-ticker-track{display:flex!important;width:max-content!important;align-items:center;gap:10px!important;padding:0 12px;animation:morphTicker var(--morph-speed,18s) linear infinite;white-space:nowrap}.morph-ticker-track span{color:inherit}.morph-component-status{display:inline-flex;width:max-content;max-width:100%;align-items:center;border-radius:999px;padding:8px 11px}.morph-component-status>i{min-width:auto;height:auto;background:transparent;color:var(--morph-accent);font-size:.64rem}.morph-component-status>strong{font-size:.72rem}.morph-component-status>span{font-size:.62rem}.morph-component-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border:0;background:transparent;box-shadow:none;padding:7px 0}.morph-component-divider>span{height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--morph-accent) 40%,transparent))}.morph-component-divider>span:last-child{background:linear-gradient(90deg,color-mix(in srgb,var(--morph-accent) 40%,transparent),transparent)}.morph-component-divider>div{display:flex;align-items:center;gap:6px;padding:0 8px}.morph-component-divider i{font-style:normal;color:var(--morph-accent)}.morph-component-countdown{align-items:center}.morph-component-countdown p{font-variant-numeric:tabular-nums}@keyframes morphTicker{from{transform:translateX(12%)}to{transform:translateX(-100%)}}
@media(max-width:640px){.not-found-card{padding:30px 18px}.not-found-actions{display:grid;grid-template-columns:1fr;width:100%}.not-found-actions .btn{width:100%}.not-found-template-split-illustration .not-found-card{display:block}.not-found-message{font-size:.9rem}}

.not-found-admin-layout{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);gap:18px;align-items:start}.not-found-admin-preview{--nf-preview-accent:#8b5cf6;--nf-preview-accent2:#38bdf8;--nf-preview-card:#0f172a;position:sticky;top:18px;display:grid;min-height:620px;overflow:hidden;border:1px solid #e0e4ec;border-radius:22px;padding:26px;background:#0b1220;box-shadow:0 18px 48px rgba(15,23,42,.12);isolation:isolate}.not-found-preview-bg{position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 30% 20%,color-mix(in srgb,var(--nf-preview-accent) 38%,transparent),transparent 34%),linear-gradient(145deg,#152038,#0a1020);background-position:center;background-size:cover}.not-found-preview-overlay{position:absolute;inset:0;z-index:-1;background:rgba(5,10,22,.3)}.not-found-preview-card{align-self:center;border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:28px 22px;text-align:center;color:#fff;background:rgba(15,23,42,.72);box-shadow:0 24px 64px rgba(0,0,0,.28);backdrop-filter:blur(18px)}.not-found-preview-card>small{color:rgba(255,255,255,.58);font-size:9px;font-weight:900;letter-spacing:.12em}.not-found-preview-card>b{display:block;margin:8px 0;color:transparent;background:linear-gradient(135deg,#fff,var(--nf-preview-accent),var(--nf-preview-accent2));-webkit-background-clip:text;background-clip:text;font-size:72px;line-height:.9}.not-found-preview-card h3{margin:14px 0 0;font-size:18px}.not-found-preview-card>p{margin:8px auto 0;color:rgba(255,255,255,.68);font-size:10px;line-height:1.65}.not-found-preview-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.not-found-preview-actions .btn{min-height:38px;font-size:9px}.not-found-preview-components{display:grid;gap:6px;margin-top:12px;text-align:left}.not-found-preview-components .morph-component{padding:8px 9px;border-radius:10px}.not-found-preview-components .morph-component>i{min-width:23px;height:23px}.not-found-preview-components .morph-component strong{font-size:9px}.not-found-preview-components .morph-component p,.not-found-preview-components .morph-component span{font-size:8px}.not-found-preview-countdown{margin:12px auto 0;color:rgba(255,255,255,.55);font-size:8px}.not-found-admin-controls{display:grid;gap:10px}.not-found-scheme-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:12px}.not-found-scheme-card{display:grid;gap:7px;justify-items:center;border:1px solid #e1e4eb;border-radius:12px;padding:9px;color:#677084;background:#fff;cursor:pointer}.not-found-scheme-card>span{width:100%;height:26px;border-radius:7px;background:linear-gradient(135deg,var(--s1),var(--s2))}.not-found-scheme-card strong{font-size:8px}.not-found-scheme-card.is-active{border-color:#b8b1ff;box-shadow:0 0 0 2px #eeeaff}.component-call-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;align-items:end}.not-found-component-list{display:grid;gap:9px;margin-top:12px}.not-found-component-item{border:1px solid #e2e5ec;border-radius:14px;padding:12px;background:#fff}.not-found-component-item-head,.component-library-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.not-found-component-item-head>div,.component-library-card-head>div{display:grid;gap:2px}.not-found-component-item-head small,.component-library-card-head small{color:#9198a8;font-size:8px}.component-library-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.component-library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.component-library-card{border:1px solid #e2e5ec;border-radius:15px;padding:12px;background:linear-gradient(145deg,#fff,#fbfcff)}.component-library-card.is-builtin{background:#f8f9fc}.component-library-card-preview{margin-top:10px;border-radius:12px;padding:10px;background:#111827}.component-library-card-preview .morph-component{margin:0}.component-library-card-preview .morph-component-divider{background:transparent}.component-library-card-preview .morph-style-light{background:#fff}.component-library-builtin-copy{display:grid;gap:6px}.component-library-builtin-copy p{margin:0;color:#7a8294;font-size:9px;line-height:1.55}.component-library-builtin-actions{display:flex;gap:6px}.component-library-manager-status{margin-top:9px;color:#7c8495;font-size:9px}
@media(max-width:1100px){.not-found-admin-layout{grid-template-columns:1fr}.not-found-admin-preview{position:relative;top:auto;min-height:500px}.not-found-scheme-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.component-library-grid{grid-template-columns:1fr}.component-call-toolbar{grid-template-columns:1fr}.not-found-scheme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.not-found-preview-actions{grid-template-columns:1fr}}

/* R25.9.9.2 · 404 server takeover diagnostics */
.not-found-test-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.not-found-server-hint{margin:0 0 14px;border:1px solid #dfe5ef;border-radius:12px;padding:10px 12px;color:#647086;background:#f8fafc;font-size:10px;line-height:1.65}.not-found-server-hint strong{color:#334155}.not-found-server-hint code{border-radius:5px;padding:2px 5px;background:#eef2f7;color:#475569}@media(max-width:700px){.not-found-test-actions{justify-content:flex-start}}

/* R25.9.9.3 · 404 visual controls + admin studio polish */
.not-found-card{border-color:color-mix(in srgb,var(--nf-card-border,#fff) calc(var(--nf-card-border-alpha,.16)*100%),transparent);background:color-mix(in srgb,var(--nf-card,#0f172a) calc(var(--nf-card-alpha,.76)*100%),transparent);box-shadow:0 28px calc(56px + var(--nf-card-shadow,28px)) rgba(2,6,23,.34);backdrop-filter:blur(var(--nf-card-blur,18px)) saturate(138%)}
.not-found-eyebrow{color:var(--nf-eyebrow,#c4b5fd)}.not-found-card h1{color:var(--nf-title,#fff)}.not-found-message{color:var(--nf-text,#e2e8f0)}.not-found-help,.not-found-context{color:var(--nf-help,#94a3b8)}.not-found-context strong{color:var(--nf-title,#fff)}.not-found-countdown{color:var(--nf-countdown,#e2e8f0)}
.not-found-card-style-soft .not-found-card{backdrop-filter:blur(min(var(--nf-card-blur,18px),14px));box-shadow:0 18px calc(34px + var(--nf-card-shadow,28px)) rgba(2,6,23,.26)}
.not-found-card-style-dark .not-found-card{background:color-mix(in srgb,var(--nf-card,#0f172a) max(calc(var(--nf-card-alpha,.76)*100%),82%),#020617);box-shadow:0 34px calc(62px + var(--nf-card-shadow,28px)) rgba(0,0,0,.42)}
.not-found-card-style-light .not-found-card{box-shadow:0 20px calc(42px + var(--nf-card-shadow,28px)) rgba(15,23,42,.16);backdrop-filter:blur(min(var(--nf-card-blur,18px),12px)) saturate(112%)}
.not-found-card-style-outline .not-found-card{background:color-mix(in srgb,var(--nf-card,#0f172a) min(calc(var(--nf-card-alpha,.76)*100%),28%),transparent);box-shadow:0 12px calc(28px + var(--nf-card-shadow,28px)) rgba(2,6,23,.16)}
.morph-component-stack{font-family:var(--page-component-font,var(--page-text-font,var(--page-body-font)))}
.not-found-component-custom .morph-component:not(.morph-component-divider){border-color:var(--nf-component-border)!important;border-radius:var(--nf-component-radius,15px)!important;color:var(--nf-component-text)!important;background:color-mix(in srgb,var(--nf-component-bg) calc(var(--nf-component-alpha,.72)*100%),transparent)!important;backdrop-filter:blur(var(--nf-component-blur,14px)) saturate(125%)}
.not-found-component-custom .morph-component:not(.morph-component-divider) strong,.not-found-component-custom .morph-component:not(.morph-component-divider) p,.not-found-component-custom .morph-component:not(.morph-component-divider) span{color:var(--nf-component-text)!important}.not-found-component-custom .morph-component:not(.morph-component-divider)>i{color:var(--nf-component-text)!important;background:color-mix(in srgb,var(--nf-component-border) 24%,transparent)!important}
.not-found-button-custom .not-found-actions .btn{border-radius:var(--nf-button-radius,14px)!important}.not-found-button-custom .not-found-primary{border-color:var(--nf-primary-border)!important;color:var(--nf-primary-text)!important;background:var(--nf-primary-bg)!important;box-shadow:0 10px calc(12px + var(--nf-button-shadow,18px)) color-mix(in srgb,var(--nf-primary-bg) 28%,transparent)!important}.not-found-button-custom .not-found-secondary{border-color:var(--nf-secondary-border)!important;color:var(--nf-secondary-text)!important;background:var(--nf-secondary-bg)!important;box-shadow:0 10px calc(12px + var(--nf-button-shadow,18px)) color-mix(in srgb,var(--nf-secondary-bg) 24%,transparent)!important}

.not-found-admin-v3{overflow:visible}.not-found-admin-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin:-2px -2px 14px;border:1px solid #e6e9f1;border-radius:20px;padding:20px 22px;background:radial-gradient(circle at 92% 10%,rgba(129,140,248,.12),transparent 35%),linear-gradient(145deg,#fff,#f9faff);box-shadow:0 12px 34px rgba(52,63,112,.06)}.not-found-admin-hero-copy{max-width:760px}.not-found-admin-hero-copy h1{margin:5px 0 7px;font-size:22px;letter-spacing:-.02em}.not-found-admin-hero-copy>p:not(.eyebrow){margin:0;color:#737c8f;font-size:11px;line-height:1.7}.not-found-admin-status-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.not-found-status-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #e6e9f0;border-radius:999px;padding:5px 9px;color:#687184;background:rgba(255,255,255,.78);font-size:9px;font-weight:700}.not-found-status-chip i{width:6px;height:6px;border-radius:50%;background:#94a3b8}.not-found-status-chip.is-on i{background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.1)}.not-found-status-chip.is-off i{background:#f59e0b}
.not-found-admin-v3 .not-found-server-hint{margin-bottom:16px;border-color:#e9eaf2;background:linear-gradient(90deg,#fafbff,#fff);font-size:9.5px}.not-found-admin-layout{grid-template-columns:minmax(330px,.78fr) minmax(0,1.22fr);gap:20px}.not-found-admin-preview-wrap{position:sticky;top:16px;align-self:start;border:1px solid #e6e8ef;border-radius:20px;padding:11px;background:#fff;box-shadow:0 14px 38px rgba(36,46,86,.08)}.not-found-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 4px 11px}.not-found-preview-head>div{display:grid;gap:2px}.not-found-preview-head strong{font-size:11px;color:#2f3648}.not-found-preview-head small{font-size:8.5px;color:#9299a9}.not-found-preview-head>span{border-radius:999px;padding:4px 7px;color:#6658d5;background:#f0edff;font-size:7px;font-weight:900;letter-spacing:.1em}.not-found-admin-preview{position:relative;top:auto;min-height:500px;border:0;border-radius:15px;padding:22px;box-shadow:none}.not-found-preview-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 4px 2px;color:#939aaa;font-size:8px}.not-found-preview-foot a{color:#6d61dd;font-weight:800;text-decoration:none}.not-found-preview-foot code{font-size:inherit}
.not-found-admin-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;align-items:start}.not-found-setting-card{margin:0!important;border:1px solid #e7e9f0!important;border-radius:16px!important;background:#fff!important;box-shadow:0 7px 22px rgba(32,43,81,.04)!important;overflow:hidden}.not-found-setting-card.is-wide{grid-column:1/-1}.not-found-setting-card>.settings-submodule-summary{min-height:68px;padding:13px 14px!important;background:linear-gradient(180deg,#fff,#fcfcfe)!important}.not-found-setting-card>.settings-submodule-summary:hover{background:#fafaff!important}.not-found-setting-card[open]{border-color:#d9d8ef!important;box-shadow:0 12px 28px rgba(71,61,139,.07)!important}.not-found-setting-card[open]>.settings-submodule-summary{border-bottom:1px solid #eef0f5;background:linear-gradient(90deg,#fbfaff,#fff)!important}.not-found-setting-card .settings-module-number{min-width:31px;height:31px;border:1px solid #e5e3fa;border-radius:9px;color:#7468db;background:#f5f3ff;font-size:9px}.not-found-setting-card .settings-module-copy strong{font-size:10.5px}.not-found-setting-card .settings-module-copy small{margin-top:2px;font-size:8.2px;line-height:1.45}.not-found-setting-card>.settings-submodule-card-body{padding:14px!important}.not-found-setting-card:not([open]) .settings-module-state em{font-size:8px;color:#9aa0af}.not-found-setting-card[open] .settings-module-state em{font-size:0}.not-found-setting-card[open] .settings-module-state em::after{content:'收起';font-size:8px;color:#7468db}
.not-found-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.not-found-template-card{display:flex;align-items:center;gap:10px;border:1px solid #e7e9f0;border-radius:13px;padding:10px;text-align:left;color:#4c5568;background:#fff;cursor:pointer;transition:.16s ease}.not-found-template-card>i{display:grid;min-width:34px;height:34px;place-items:center;border-radius:10px;color:#7c70df;background:#f3f1ff;font-style:normal;font-size:15px}.not-found-template-card>span{display:grid;gap:2px}.not-found-template-card strong{font-size:9.5px}.not-found-template-card small{color:#999faf;font-size:7.7px;line-height:1.45}.not-found-template-card:hover{border-color:#cfcaef;transform:translateY(-1px)}.not-found-template-card.is-active{border-color:#b9b1ef;background:#faf9ff;box-shadow:0 0 0 2px #f0edff}.not-found-template-card.is-active>i{color:#fff;background:linear-gradient(135deg,#8073e8,#5ab8ed)}
.not-found-scheme-manager{display:grid;gap:10px;margin-bottom:13px}.not-found-scheme-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0}.not-found-scheme-card{grid-template-columns:44px minmax(0,1fr);align-items:center;justify-items:stretch;gap:8px;border-radius:11px;padding:7px;text-align:left}.not-found-scheme-card>span{width:44px;height:32px;border:1px solid rgba(0,0,0,.04);background:linear-gradient(135deg,var(--s1) 0 45%,var(--s2) 45% 70%,var(--s3) 70%)}.not-found-scheme-card>div{display:grid;gap:1px;min-width:0}.not-found-scheme-card strong{overflow:hidden;font-size:8.5px;text-overflow:ellipsis;white-space:nowrap}.not-found-scheme-card small{color:#a0a5b2;font-size:7px}.not-found-scheme-card.is-active{border-color:#b9b2ef;background:#faf9ff;box-shadow:0 0 0 2px #f0edff}.not-found-scheme-toolbar{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(0,1.2fr);gap:8px;align-items:end}.not-found-scheme-actions{display:flex;flex-wrap:wrap;gap:6px}.not-found-scheme-status{color:#989faf;font-size:8px}.not-found-card-style-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-bottom:12px}.not-found-card-style-option{cursor:pointer}.not-found-card-style-option input{position:absolute;opacity:0;pointer-events:none}.not-found-card-style-option span{display:grid;gap:2px;border:1px solid #e7e9ef;border-radius:11px;padding:9px;color:#737b8e;background:#fff}.not-found-card-style-option strong{font-size:8.5px}.not-found-card-style-option small{font-size:7px;color:#a0a6b4}.not-found-card-style-option input:checked+span{border-color:#bdb5ee;color:#5c50c9;background:#f8f6ff;box-shadow:0 0 0 2px #f0edff}.not-found-custom-appearance-box{display:grid;gap:4px;margin:12px 0;border:1px solid #ebe9f7;border-radius:12px;padding:10px;background:#fbfaff}.not-found-custom-appearance-box>small{padding-left:2px;color:#8f96a6;font-size:8px;line-height:1.55}.not-found-save-bar{position:sticky;bottom:10px;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;border:1px solid rgba(214,216,231,.9);border-radius:16px;padding:11px 13px;background:rgba(255,255,255,.9);box-shadow:0 14px 36px rgba(31,41,75,.12);backdrop-filter:blur(18px)}.not-found-save-bar>div{display:grid;gap:2px}.not-found-save-bar strong{font-size:10px}.not-found-save-bar small{color:#979dad;font-size:8px}
.not-found-preview-card{background:color-mix(in srgb,var(--nf-preview-card,#0f172a) calc(var(--preview-card-opacity,76)*1%),transparent)!important;box-shadow:0 18px calc(30px + var(--preview-card-shadow,28px)) rgba(0,0,0,.28)!important;backdrop-filter:blur(var(--preview-card-blur,18px))!important}.not-found-preview-card>small{color:var(--nf-preview-eyebrow,#c4b5fd)!important}.not-found-preview-card h3{color:var(--nf-preview-title,#fff)!important}.not-found-preview-card>p:not(.not-found-preview-help){color:var(--nf-preview-text,#e2e8f0)!important}.not-found-preview-help{margin:5px auto 0!important;color:var(--nf-preview-help,#94a3b8)!important;font-size:8.5px!important;line-height:1.5}.not-found-preview-countdown{color:var(--nf-preview-countdown,#e2e8f0)!important}.not-found-admin-preview[data-card-style='soft'] .not-found-preview-card{box-shadow:0 12px 32px rgba(0,0,0,.2)!important}.not-found-admin-preview[data-card-style='dark'] .not-found-preview-card{background:color-mix(in srgb,var(--nf-preview-card) 92%,#020617)!important}.not-found-admin-preview[data-card-style='light'] .not-found-preview-card{box-shadow:0 12px 28px rgba(15,23,42,.15)!important}.not-found-admin-preview[data-card-style='outline'] .not-found-preview-card{background:color-mix(in srgb,var(--nf-preview-card) 22%,transparent)!important}.not-found-admin-preview[data-template='minimal'] .not-found-preview-card>b{font-size:58px}.not-found-admin-preview[data-template='neon'] .not-found-preview-card{box-shadow:0 0 0 1px color-mix(in srgb,var(--nf-preview-accent) 42%,transparent),0 0 36px color-mix(in srgb,var(--nf-preview-accent) 20%,transparent)!important}.not-found-admin-preview[data-template='split-illustration'] .not-found-preview-card{text-align:left}.not-found-admin-preview[data-template='split-illustration'] .not-found-preview-card>b{font-size:84px}.not-found-admin-preview[data-template='split-illustration'] .not-found-preview-actions{justify-content:start}
.not-found-admin-preview.is-component-custom .not-found-preview-components .morph-component:not(.morph-component-divider){border-color:var(--nf-preview-component-border)!important;border-radius:var(--nf-preview-component-radius,15px)!important;color:var(--nf-preview-component-text)!important;background:color-mix(in srgb,var(--nf-preview-component-bg) calc(var(--nf-preview-component-opacity,.72)*100%),transparent)!important;backdrop-filter:blur(var(--nf-preview-component-blur,14px))!important}.not-found-admin-preview.is-component-custom .not-found-preview-components .morph-component strong,.not-found-admin-preview.is-component-custom .not-found-preview-components .morph-component p,.not-found-admin-preview.is-component-custom .not-found-preview-components .morph-component span{color:var(--nf-preview-component-text)!important}
@media(max-width:1180px){.not-found-admin-layout{grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr)}.not-found-admin-controls{grid-template-columns:1fr}.not-found-setting-card.is-wide{grid-column:auto}.not-found-card-style-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.not-found-scheme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:930px){.not-found-admin-layout{grid-template-columns:1fr}.not-found-admin-preview-wrap{position:relative;top:auto}.not-found-admin-preview{min-height:430px}.not-found-admin-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.not-found-setting-card.is-wide{grid-column:1/-1}}
@media(max-width:700px){.not-found-admin-hero{display:grid;padding:16px}.not-found-admin-controls{grid-template-columns:1fr}.not-found-setting-card.is-wide{grid-column:auto}.not-found-template-grid,.not-found-scheme-grid{grid-template-columns:1fr}.not-found-card-style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.not-found-scheme-toolbar{grid-template-columns:1fr}.not-found-save-bar{bottom:6px}.not-found-save-bar>div{display:none}.not-found-save-bar .btn{width:100%}.not-found-preview-foot{display:grid}.not-found-admin-preview{min-height:390px}}


/* R25.9.9.4 · 404 alignment + explicit global-background preview */
.not-found-text-align-left .not-found-copy{justify-items:start;text-align:left}.not-found-text-align-left .not-found-message,.not-found-text-align-left .not-found-help{margin-left:0;margin-right:0}.not-found-text-align-left .not-found-context{justify-content:flex-start}.not-found-text-align-right .not-found-copy{justify-items:end;text-align:right}.not-found-text-align-right .not-found-message,.not-found-text-align-right .not-found-help{margin-left:auto;margin-right:0}.not-found-text-align-right .not-found-context{justify-content:flex-end}.not-found-text-align-center .not-found-copy{justify-items:center;text-align:center}
.not-found-component-align-center .morph-component-stack{text-align:center}.not-found-component-align-center .morph-component:not(.morph-component-ticker):not(.morph-component-divider){justify-content:center}.not-found-component-align-center .morph-component>div{text-align:center}.not-found-component-align-right .morph-component-stack{text-align:right}.not-found-component-align-right .morph-component:not(.morph-component-ticker):not(.morph-component-divider){justify-content:flex-end}.not-found-component-align-right .morph-component>div{text-align:right}.not-found-component-align-left .morph-component-stack{text-align:left}
.not-found-button-align-left .not-found-actions{justify-content:flex-start}.not-found-button-align-left .not-found-countdown{margin-left:0;margin-right:auto}.not-found-button-align-right .not-found-actions{justify-content:flex-end}.not-found-button-align-right .not-found-countdown{margin-left:auto;margin-right:0}.not-found-button-align-center .not-found-actions{justify-content:center}.not-found-button-align-center .not-found-countdown{margin-left:auto;margin-right:auto}
.not-found-global-bg-note{grid-column:span 2;display:grid;gap:3px;min-width:0;border:1px solid #ebeaf4;border-radius:11px;padding:9px 10px;background:#fafaff}.not-found-global-bg-note strong{font-size:8.5px;color:#5d6372}.not-found-global-bg-note span{overflow:hidden;color:#7468db;font-size:7.5px;text-overflow:ellipsis;white-space:nowrap}.not-found-global-bg-note small{color:#989ead;font-size:7.3px;line-height:1.45}.not-found-align-controls{margin-top:10px;border-top:1px solid #eff0f5;padding-top:10px}
.not-found-admin-preview[data-text-align='left'] .not-found-preview-card{text-align:left}.not-found-admin-preview[data-text-align='left'] .not-found-preview-card>p{margin-left:0;margin-right:0}.not-found-admin-preview[data-text-align='right'] .not-found-preview-card{text-align:right}.not-found-admin-preview[data-text-align='right'] .not-found-preview-card>p{margin-left:auto;margin-right:0}.not-found-admin-preview[data-text-align='center'] .not-found-preview-card{text-align:center}
.not-found-admin-preview[data-component-align='center'] .not-found-preview-components{text-align:center}.not-found-admin-preview[data-component-align='center'] .not-found-preview-components .morph-component:not(.morph-component-divider){justify-content:center}.not-found-admin-preview[data-component-align='right'] .not-found-preview-components{text-align:right}.not-found-admin-preview[data-component-align='right'] .not-found-preview-components .morph-component:not(.morph-component-divider){justify-content:flex-end}.not-found-admin-preview[data-component-align='left'] .not-found-preview-components{text-align:left}
.not-found-admin-preview[data-button-align='left'] .not-found-preview-actions{justify-content:start}.not-found-admin-preview[data-button-align='right'] .not-found-preview-actions{justify-content:end}.not-found-admin-preview[data-button-align='center'] .not-found-preview-actions{justify-content:center}
@media(max-width:700px){.not-found-global-bg-note{grid-column:1/-1}}
\n/* R25.9.9.5 · full 404 content/icon/context customization */
.not-found-orbit{color:color-mix(in srgb,var(--nf-orbit,var(--nf-accent)) 45%,transparent)}.not-found-orbit i{color:var(--nf-orbit,var(--nf-accent))}.not-found-code{background:linear-gradient(135deg,var(--nf-code-start,#fff) 5%,var(--nf-accent) 48%,var(--nf-code-end,var(--nf-accent2)));-webkit-background-clip:text;background-clip:text}.not-found-code.is-solid{color:var(--nf-code-start,#fff);background:none;-webkit-background-clip:initial;background-clip:initial}.not-found-context{align-items:center;gap:8px 10px;border-color:color-mix(in srgb,var(--nf-context-border,#fff) 28%,transparent);border-radius:var(--nf-context-radius,999px);color:var(--nf-context-text,#cbd5e1);background:color-mix(in srgb,var(--nf-context-bg,#fff) calc(var(--nf-context-alpha,.05)*100%),transparent);backdrop-filter:blur(12px)}.not-found-context>i{display:grid;min-width:24px;height:24px;place-items:center;border-radius:8px;color:var(--nf-context-icon,var(--nf-accent));background:color-mix(in srgb,var(--nf-context-icon,var(--nf-accent)) 14%,transparent);font-style:normal;font-weight:900}.not-found-context>div{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline}.not-found-context strong{color:var(--nf-context-title,#fff)}.not-found-context span{color:var(--nf-context-text,#cbd5e1)}.not-found-context-glass{box-shadow:inset 0 1px rgba(255,255,255,.06)}.not-found-context-soft{border-color:color-mix(in srgb,var(--nf-context-border) 16%,transparent);box-shadow:0 8px 24px rgba(2,6,23,.08)}.not-found-context-outline{background:transparent}.not-found-context-outline>i{background:transparent}
.not-found-preview-orbit{display:flex;align-items:center;justify-content:center;gap:6px;margin:-4px 0 5px;color:color-mix(in srgb,var(--nf-preview-orbit,var(--nf-preview-accent)) 48%,transparent);font-size:9px;font-weight:900}.not-found-preview-orbit i{color:var(--nf-preview-orbit,var(--nf-preview-accent));font-style:normal}.not-found-preview-context{display:flex;align-items:center;justify-content:center;gap:6px;margin:8px auto 0;border:1px solid color-mix(in srgb,var(--nf-preview-context-border,#fff) 24%,transparent);border-radius:var(--nf-preview-context-radius,999px);padding:5px 7px;color:var(--nf-preview-context-text,#cbd5e1);background:color-mix(in srgb,var(--nf-preview-context-bg,#fff) calc(var(--nf-preview-context-opacity,.05)*100%),transparent);font-size:7.5px}.not-found-preview-context>i{display:grid;min-width:17px;height:17px;place-items:center;border-radius:6px;color:var(--nf-preview-context-icon,var(--nf-preview-accent));background:color-mix(in srgb,var(--nf-preview-context-icon,var(--nf-preview-accent)) 14%,transparent);font-style:normal;font-weight:900}.not-found-preview-context>div{display:flex;flex-wrap:wrap;gap:3px 5px;align-items:baseline}.not-found-preview-context strong{color:var(--nf-preview-context-title,#fff)}.not-found-preview-context span{color:var(--nf-preview-context-text,#cbd5e1)}.not-found-preview-context[data-style='outline']{background:transparent}.not-found-preview-context[data-style='soft']{box-shadow:0 4px 14px rgba(2,6,23,.08)}.not-found-preview-countdown{display:flex;align-items:center;justify-content:center;gap:5px}.not-found-preview-countdown>span{color:var(--nf-preview-accent)}
.not-found-admin-preview[data-text-align='left'] .not-found-preview-context{justify-content:flex-start;margin-left:0;margin-right:0}.not-found-admin-preview[data-text-align='right'] .not-found-preview-context{justify-content:flex-end;margin-left:auto;margin-right:0}.not-found-admin-preview[data-button-align='left'] .not-found-preview-countdown{justify-content:flex-start;margin-left:0;margin-right:auto}.not-found-admin-preview[data-button-align='right'] .not-found-preview-countdown{justify-content:flex-end;margin-left:auto;margin-right:0}

/* R25.9.9.5 · additional 404 visual presets */
.not-found-template-poster .not-found-card{border-width:2px;padding:clamp(34px,6vw,66px);box-shadow:0 34px 90px rgba(2,6,23,.5),inset 0 0 0 1px color-mix(in srgb,var(--nf-accent) 16%,transparent)}
.not-found-template-poster .not-found-code{font-size:clamp(7rem,20vw,13rem);letter-spacing:-.08em}.not-found-template-poster .not-found-copy{max-width:760px;margin-inline:auto}
.not-found-template-terminal .not-found-card{border-radius:12px;border-color:color-mix(in srgb,var(--nf-accent) 58%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--nf-accent) 18%,transparent),0 26px 70px rgba(0,0,0,.48)}
.not-found-template-terminal .not-found-card::before{display:block;margin:-8px 0 20px;color:var(--nf-accent);font:700 .72rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;content:"STATUS // 404_NOT_FOUND"}.not-found-template-terminal :is(.not-found-eyebrow,.not-found-message,.not-found-help,.not-found-context){font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.not-found-template-dreamy .not-found-card{border-radius:min(48px,var(--nf-radius));background:linear-gradient(145deg,color-mix(in srgb,var(--nf-card) calc(var(--nf-card-alpha)*100%),transparent),color-mix(in srgb,var(--nf-accent2) 12%,transparent));box-shadow:0 30px 90px color-mix(in srgb,var(--nf-accent) 18%,transparent),inset 0 1px 0 rgba(255,255,255,.22)}
.not-found-template-dreamy .not-found-code{filter:drop-shadow(0 12px 30px color-mix(in srgb,var(--nf-accent2) 28%,transparent))}.not-found-template-dreamy .not-found-orbit{letter-spacing:.34em}
.not-found-template-shrine .not-found-card{border-radius:18px;border-width:1px;border-top:4px solid color-mix(in srgb,var(--nf-accent) 82%,transparent);border-bottom:4px solid color-mix(in srgb,var(--nf-accent2) 68%,transparent);box-shadow:0 28px 70px rgba(2,6,23,.34)}
.not-found-template-shrine .not-found-orbit::before,.not-found-template-shrine .not-found-orbit::after{display:inline-block;width:48px;height:1px;margin:0 10px;vertical-align:middle;background:color-mix(in srgb,var(--nf-accent) 48%,transparent);content:""}
.not-found-admin-preview[data-template='poster'] .not-found-preview-card{padding:34px 24px!important;border-width:2px!important;box-shadow:0 24px 60px rgba(0,0,0,.36)!important}.not-found-admin-preview[data-template='poster'] .not-found-preview-card>b{font-size:92px}
.not-found-admin-preview[data-template='terminal'] .not-found-preview-card{border-radius:10px!important;border-color:color-mix(in srgb,var(--nf-preview-accent) 55%,transparent)!important}.not-found-admin-preview[data-template='terminal'] .not-found-preview-card::before{display:block;margin-bottom:9px;color:var(--nf-preview-accent);font:700 7px/1.2 ui-monospace,monospace;content:"STATUS // 404_NOT_FOUND"}
.not-found-admin-preview[data-template='dreamy'] .not-found-preview-card{border-radius:34px!important;background:linear-gradient(145deg,color-mix(in srgb,var(--nf-preview-card) 78%,transparent),color-mix(in srgb,var(--nf-preview-accent2) 12%,transparent))!important;box-shadow:0 20px 54px color-mix(in srgb,var(--nf-preview-accent) 18%,transparent)!important}
.not-found-admin-preview[data-template='shrine'] .not-found-preview-card{border-radius:15px!important;border-top:3px solid var(--nf-preview-accent)!important;border-bottom:3px solid var(--nf-preview-accent2)!important}

/* R25.9.9.7 · Steam/BGM 按钮内容与布局工作台 */
.gallery-button-content-editor{display:grid;gap:14px}.gallery-button-content-subcard{border:1px solid #e6e9f2;border-radius:16px;padding:14px;background:linear-gradient(180deg,#fff,#fbfcff)}.gallery-subsection-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.gallery-subsection-heading>div{display:grid;gap:3px}.gallery-subsection-heading strong{font-size:.88rem;color:#171b2b}.gallery-subsection-heading small{color:#848da3;font-size:.68rem}.gallery-button-label-example{margin-top:10px;border:1px dashed #dce1ee;border-radius:12px;padding:10px 12px;color:#657087;background:#fafbff;font-size:.72rem}.gallery-button-label-example code{border-radius:6px;padding:2px 5px;background:#eef1f9;color:#574cc7}.gallery-button-layout-preview{display:grid;gap:8px;margin-top:13px;border:1px solid #e6e9f3;border-radius:15px;padding:12px;background:#151b2d;--layout-gap:8px;--layout-height:40px;--layout-font-size:13px;--layout-min-width:96px}.gallery-button-layout-preview-main,.gallery-button-layout-preview-download{display:grid;gap:var(--layout-gap)}.gallery-button-layout-preview-main{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-button-layout-preview-download{grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--layout-min-width)),1fr))}.gallery-button-layout-preview button{min-width:0;min-height:var(--layout-height);border:1px solid #36ded2;border-radius:11px;padding:7px 9px;color:#f8fafc;background:#101728;font:700 var(--layout-font-size)/1.25 system-ui,sans-serif;white-space:normal;word-break:keep-all;overflow-wrap:normal}.gallery-button-layout-preview button[data-layout-preview="baidu"]{border-color:#65a7ff}.gallery-button-layout-preview button[data-layout-preview="quark"]{border-color:#cb8fff}.gallery-button-layout-preview button[data-layout-preview="external"]{border-color:#8be8dd}.gallery-button-layout-preview.is-external-full button[data-layout-preview="external"]{grid-column:1/-1}.gallery-button-resource-overrides{border:1px solid #e7e9f1;border-radius:15px;background:#fff}.gallery-button-resource-overrides>summary{cursor:pointer;padding:13px 14px;font-weight:800;color:#252b3d}.gallery-button-resource-overrides>summary small{margin-left:7px;color:#8c94a8;font-weight:600}.gallery-button-resource-overrides[open]>summary{border-bottom:1px solid #eef0f5}.gallery-button-resource-overrides>.field-help{margin:12px 14px 4px}.gallery-resource-label-list{display:grid;gap:8px;padding:10px 14px 14px}.gallery-resource-label-row{display:grid;grid-template-columns:minmax(170px,.9fr) minmax(220px,1.1fr);gap:12px;align-items:center;border:1px solid #edf0f6;border-radius:12px;padding:9px 10px;background:#fbfcff}.gallery-resource-label-row>span{display:grid;gap:2px;min-width:0}.gallery-resource-label-row b{overflow:hidden;color:#343a4c;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.gallery-resource-label-row small{overflow:hidden;color:#9199aa;font-size:.64rem;text-overflow:ellipsis;white-space:nowrap}.gallery-resource-label-row input{width:100%}.gallery-empty-inline{padding:16px;color:#9299ab;text-align:center}.gallery-form-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1180px){.gallery-form-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-resource-label-row{grid-template-columns:1fr}}
@media(max-width:720px){.gallery-form-grid-four{grid-template-columns:1fr}.gallery-button-layout-preview-download{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-resource-label-row{grid-template-columns:1fr}.gallery-button-content-subcard{padding:12px}}
.gallery-api-test-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px dashed #e1e5ef;padding-top:10px}.gallery-api-test-actions small{color:#7f899e;font-size:.68rem}

/* R25.9.9.8 · BGM settings master live preview */
.bgm-master-preview.gallery-card-visual-live{display:block;margin:0 0 18px;border:1px solid #dfe4ee;border-radius:22px;padding:14px;background:linear-gradient(145deg,#fbfdff,#f6f4ff);box-shadow:0 18px 42px rgba(44,55,90,.08)}
.bgm-master-preview-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px}.bgm-master-preview-head>div:first-child{display:grid;gap:3px}.bgm-master-preview-head strong{color:#1f2a44;font-size:14px}.bgm-master-preview-head small{color:#7a8499;font-size:10px}.bgm-master-preview-state{display:grid;justify-items:end;gap:3px}.bgm-master-preview-state span{border-radius:999px;padding:5px 8px;color:#675bd7;background:#efedff;font-size:9px;font-weight:900}.bgm-master-preview-state b{color:#778097;font-size:9px}
.bgm-master-preview-stage{display:grid;min-height:520px;place-items:center;overflow:hidden;border:1px solid #dfe5ef;border-radius:18px;padding:26px;background:radial-gradient(circle at 16% 10%,color-mix(in srgb,var(--bgm-preview-accent,#f472b6) 18%,transparent),transparent 38%),linear-gradient(145deg,#152033,#0e1727);transition:background .2s ease}
.bgm-master-preview-card.gallery-card-visual-live-card{display:flex;width:min(360px,100%);min-height:0;grid-template-columns:none;gap:0;overflow:hidden;flex-direction:column;border:1px solid color-mix(in srgb,var(--bgm-preview-accent,#f472b6) 42%,transparent);border-radius:22px;padding:10px;background:rgba(15,23,42,.9);box-shadow:0 18px 44px rgba(0,0,0,.32);transition:border .18s ease,border-radius .18s ease,padding .18s ease,box-shadow .18s ease,width .18s ease,min-height .18s ease}
.bgm-master-preview-cover{position:relative;display:grid;width:100%;aspect-ratio:3/4;place-items:center;overflow:hidden;border:1px solid color-mix(in srgb,var(--bgm-preview-accent,#f472b6) 28%,transparent);border-radius:15px;background:linear-gradient(145deg,#172033,#253653);transition:.18s}.bgm-master-preview-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .22s ease,filter .22s ease}.bgm-master-preview-cover-empty{display:grid;width:100%;height:100%;place-items:center;color:#aeb7c8;background:linear-gradient(135deg,#1f2937,#334155);font-size:13px;font-weight:900}.bgm-master-preview-cover-overlay{position:absolute;inset:0;z-index:1;background:rgba(2,6,23,.1);pointer-events:none}.bgm-master-preview-type,.bgm-master-preview-score{position:absolute;z-index:2;top:9px;border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:5px 9px;color:#fff;background:rgba(15,23,42,.66);backdrop-filter:blur(12px);font-size:11px}.bgm-master-preview-type{left:9px}.bgm-master-preview-score{right:9px;display:flex;align-items:center;gap:4px}.bgm-master-preview-score b{font-size:13px}.bgm-master-preview-score small{font-size:8px}
.bgm-master-preview-rail{margin:10px 2px 0;color:color-mix(in srgb,var(--bgm-preview-accent,#f472b6) 82%,#fff);font-size:9px;font-weight:900;letter-spacing:.07em}.bgm-master-preview-card h3{display:-webkit-box;min-height:2.7em;margin:7px 2px 4px;overflow:hidden;color:#fff;font-size:16px;line-height:1.34;-webkit-line-clamp:2;-webkit-box-orient:vertical}.bgm-master-preview-original{margin:0 2px 8px;overflow:hidden;color:#9aa5b9;font-size:11px;white-space:nowrap;text-overflow:ellipsis}.bgm-master-preview-summary{display:-webkit-box;min-height:4.75em;margin:0 2px 10px;overflow:hidden;border-top:1px solid rgba(255,255,255,.08);padding-top:8px;color:#d4dbea;font-size:12px;line-height:1.58;-webkit-line-clamp:3;-webkit-box-orient:vertical}.bgm-master-preview-meta{display:grid;gap:5px;margin:0 2px 10px;padding:0;list-style:none}.bgm-master-preview-meta li{display:grid;grid-template-columns:48px 1fr;gap:7px;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:6px 8px;background:rgba(255,255,255,.04);font-size:10px}.bgm-master-preview-meta strong{color:var(--bgm-preview-accent,#f472b6)}.bgm-master-preview-meta span{color:#d7deea}.bgm-master-preview-actions,.bgm-master-preview-downloads{display:grid;gap:7px}.bgm-master-preview-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:auto}.bgm-master-preview-downloads{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:7px}.bgm-master-preview-card button{min-width:0;min-height:40px;border:1px solid color-mix(in srgb,var(--bgm-preview-accent,#f472b6) 45%,transparent);border-radius:10px;padding:7px;color:#fff;background:rgba(15,23,42,.62);font:700 11px/1.2 inherit}.bgm-master-preview-downloads button{background:linear-gradient(135deg,color-mix(in srgb,var(--bgm-preview-accent,#f472b6) 84%,#fff),var(--bgm-preview-accent2,#c084fc));color:#111827}
.bgm-master-preview [data-bgm-zone]{transition:outline .18s ease,box-shadow .18s ease,background-color .18s ease}.bgm-master-preview [data-bgm-zone].is-bgm-live-highlight{outline:2px solid var(--bgm-preview-accent,#f472b6);outline-offset:3px;box-shadow:0 0 0 6px color-mix(in srgb,var(--bgm-preview-accent,#f472b6) 13%,transparent)}.bgm-master-preview-legend{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.bgm-master-preview-legend span{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 8px;color:#697388;background:#fff;font-size:9px}.bgm-master-preview-legend i{width:7px;height:7px;border-radius:50%;background:#cbd5e1}.bgm-master-preview-legend i.is-active{background:var(--bgm-preview-accent,#f472b6);box-shadow:0 0 0 3px color-mix(in srgb,var(--bgm-preview-accent,#f472b6) 16%,transparent)}
@media(max-width:760px){.bgm-master-preview-head{align-items:flex-start;flex-direction:column}.bgm-master-preview-state{justify-items:start}.bgm-master-preview-stage{min-height:460px;padding:16px}.bgm-master-preview-downloads{grid-template-columns:repeat(2,minmax(0,1fr))}.bgm-master-preview-downloads button:last-child:nth-child(odd){grid-column:1/-1}}

/* R25.9.9.9 · 画廊按游戏分组资源按钮编辑器 */
.gallery-resource-group-workbench{overflow:hidden}.gallery-resource-game-list{display:grid;gap:10px}.gallery-resource-game{overflow:hidden;border:1px solid #e6eaf2;border-radius:14px;background:#fff}.gallery-resource-game>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;cursor:pointer;list-style:none}.gallery-resource-game>summary::-webkit-details-marker{display:none}.gallery-resource-game>summary>span{display:grid;gap:3px;min-width:0}.gallery-resource-game>summary b{overflow:hidden;color:#202637;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.gallery-resource-game>summary small{color:#8c95a8;font-size:.64rem}.gallery-resource-game>summary i{font-style:normal;color:#8d95a7;transition:transform .18s ease}.gallery-resource-game[open]>summary{border-bottom:1px solid #eef1f6;background:#fbfcff}.gallery-resource-game[open]>summary i{transform:rotate(180deg)}.gallery-resource-slot-list{display:grid;gap:10px;padding:12px}.gallery-resource-slot{display:grid;gap:10px;border:1px solid #edf0f6;border-radius:13px;padding:12px;background:linear-gradient(180deg,#fff,#fbfcff)}.gallery-resource-slot-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.gallery-resource-slot-head>div:first-child{display:grid;gap:2px}.gallery-resource-slot-head strong{font-size:.78rem;color:#262d40}.gallery-resource-slot-head small{font-size:.62rem;color:#929aad}.gallery-resource-quick-presets{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.gallery-resource-quick-presets button{border:1px solid #e2e5ef;border-radius:999px;padding:5px 8px;color:#626c82;background:#fff;font:700 .62rem/1 system-ui;cursor:pointer}.gallery-resource-quick-presets button:hover{border-color:#b9b4ff;color:#5d51d4;background:#f6f4ff}.gallery-resource-slot-tools{display:grid;grid-template-columns:minmax(180px,1fr) minmax(170px,.7fr) auto;gap:10px;align-items:end}.gallery-resource-slot-actions{display:flex;gap:7px;align-items:center;padding-bottom:1px}.gallery-resource-slot-actions button{white-space:nowrap}.gallery-resource-provider-list{display:grid;gap:7px}.gallery-resource-provider-row{display:grid;grid-template-columns:minmax(170px,.75fr) minmax(220px,1fr) minmax(140px,.65fr);gap:10px;align-items:center;border-radius:10px;padding:8px 9px;background:#f7f9fd}.gallery-resource-provider-row>span{display:grid;gap:2px;min-width:0}.gallery-resource-provider-row b{font-size:.7rem;color:#343a4c}.gallery-resource-provider-row small{overflow:hidden;color:#949bad;font-size:.59rem;text-overflow:ellipsis;white-space:nowrap}.gallery-resource-provider-row input{width:100%}.gallery-resource-provider-row em{overflow:hidden;border:1px dashed #d9deea;border-radius:9px;padding:7px 9px;color:#737d93;background:#fff;font-size:.66rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.gallery-resource-provider-row em.is-custom{border-style:solid;border-color:#c9c2ff;color:#5b4fd0;background:#f5f3ff}@media(max-width:1100px){.gallery-resource-slot-tools{grid-template-columns:1fr 1fr}.gallery-resource-slot-actions{grid-column:1/-1}.gallery-resource-provider-row{grid-template-columns:1fr 1fr}.gallery-resource-provider-row em{grid-column:1/-1}}@media(max-width:720px){.gallery-resource-slot-head{display:grid}.gallery-resource-quick-presets{justify-content:flex-start}.gallery-resource-slot-tools,.gallery-resource-provider-row{grid-template-columns:1fr}.gallery-resource-slot-actions{display:grid;grid-template-columns:1fr 1fr}.gallery-resource-provider-row em{grid-column:auto}.gallery-resource-game>summary{padding:11px 12px}.gallery-resource-slot-list{padding:9px}.gallery-resource-slot{padding:10px}}

/* R25.9.9.9 interaction test · preview click-to-settings navigation */
[data-gallery-preview-jump]{cursor:pointer;outline:0;transition:outline-color .16s ease,box-shadow .16s ease,transform .16s ease,filter .16s ease}
[data-gallery-preview-jump]:hover,[data-gallery-preview-jump]:focus-visible{outline:2px solid #7c6ff0!important;outline-offset:3px;box-shadow:0 0 0 6px rgba(124,111,240,.12)!important;filter:saturate(1.04)}
[data-gallery-preview-jump]:focus-visible{outline-style:dashed!important}
.bgm-master-preview-legend [data-gallery-preview-jump]{user-select:none}.bgm-master-preview-legend [data-gallery-preview-jump]:hover{color:#5e52cf;background:#f2efff}
.gallery-settings-collapse-card{scroll-margin-top:18px}.gallery-settings-collapse-card.is-preview-jump-target{border-color:#7c6ff0!important;box-shadow:0 0 0 4px rgba(124,111,240,.13),0 18px 38px rgba(72,61,160,.13)!important}
.gallery-settings-collapse-card.is-preview-jump-target>.gallery-settings-collapse-summary{background:linear-gradient(90deg,#efecff,#fff)!important}
.is-preview-jump-field{position:relative;z-index:1;border-radius:12px;animation:galleryPreviewJumpPulse 1.4s ease-out 1}
.is-preview-jump-field::after{content:"预览定位到这里";position:absolute;z-index:20;top:-10px;right:8px;border-radius:999px;padding:4px 8px;color:#fff;background:#6557db;box-shadow:0 6px 16px rgba(101,87,219,.24);font-size:8px;font-weight:900;pointer-events:none}
@keyframes galleryPreviewJumpPulse{0%{box-shadow:0 0 0 0 rgba(124,111,240,.34)}45%{box-shadow:0 0 0 8px rgba(124,111,240,.12)}100%{box-shadow:0 0 0 0 rgba(124,111,240,0)}}
.steam-master-preview{--bgm-preview-accent:#22d3ee;--bgm-preview-accent2:#f472b6}.steam-master-preview .bgm-master-preview-cover{aspect-ratio:16/9}.steam-master-preview .bgm-master-preview-card{width:min(380px,100%)}.steam-master-preview .bgm-master-preview-summary{min-height:4em}.steam-master-preview .bgm-master-preview-meta li{grid-template-columns:56px 1fr}
@media(max-width:760px){[data-gallery-preview-jump]:hover{outline-width:1px!important}.is-preview-jump-field::after{right:2px;font-size:7px}}
