/* Signal Console theme. Loaded only when admin_theme = signal_console. */

.admin-theme-signal {
    --sig-black: #080C11;
    --sig-rail: #0B1017;
    --sig-rail-2: #111923;
    --sig-work: #D9E0E8;
    --sig-panel: #F5F7FA;
    --sig-panel-2: #FFFFFF;
    --sig-line: #AEB8C5;
    --sig-line-soft: #DDE3EA;
    --sig-text: #121A24;
    --sig-muted: #637082;
    --sig-cyan: #00D1FF;
    --sig-cyan-deep: #006C85;
    --sig-green: #19C37D;
    --sig-red: #E53935;
    --sig-amber: #F5A524;
    --sig-blue: #2F6BFF;
    --sig-radius: 6px;
    --sig-shadow: 0 18px 50px rgba(8, 12, 17, .16);
    --sig-hard-shadow: 0 28px 80px rgba(8, 12, 17, .32);
    margin: 0;
    color: var(--sig-text);
    background: var(--sig-work);
    font-family: "Microsoft YaHei", "PingFang SC", "Segoe UI", Arial, sans-serif;
    font-variant-numeric: tabular-nums;
}

.admin-theme-signal *,
.admin-theme-signal *::before,
.admin-theme-signal *::after {
    box-sizing: border-box;
}

.admin-theme-signal a {
    color: inherit;
}

.admin-theme-signal .signal-icon {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.admin-theme-signal .signal-shell {
    position: relative;
    display: grid;
    grid-template-columns: 286px minmax(0, 1fr);
    min-height: 100vh;
    isolation: isolate;
    background:
        linear-gradient(90deg, rgba(0, 209, 255, .10) 0 1px, transparent 1px 92px),
        linear-gradient(180deg, rgba(8, 12, 17, .08) 0 1px, transparent 1px 76px),
        radial-gradient(circle at 76% 14%, rgba(0, 209, 255, .18), transparent 23%),
        radial-gradient(circle at 42% 86%, rgba(229, 57, 53, .10), transparent 26%),
        linear-gradient(135deg, #E7ECF2 0%, #F8FAFC 46%, #D2DBE5 100%);
    overflow-x: hidden;
}

.admin-theme-signal .signal-shell::before,
.admin-theme-signal .signal-auth-stage::before {
    content: "";
    position: fixed;
    inset: -20%;
    pointer-events: none;
    z-index: -1;
    opacity: .55;
    background:
        linear-gradient(112deg, transparent 0 42%, rgba(0, 209, 255, .18) 43%, transparent 45% 100%),
        linear-gradient(160deg, transparent 0 68%, rgba(25, 195, 125, .13) 69%, transparent 71% 100%);
    animation: sigScan 12s linear infinite;
}

.admin-theme-signal .signal-shell::after,
.admin-theme-signal .signal-auth-stage::after {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: -1;
    opacity: .18;
    background: repeating-linear-gradient(180deg, rgba(8, 12, 17, .16) 0 1px, transparent 1px 5px);
    mix-blend-mode: multiply;
}

.admin-theme-signal .signal-rail {
    position: sticky;
    top: 0;
    height: 100vh;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: 14px;
    padding: 18px 14px;
    color: #DCE7F2;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .07), transparent 22%),
        linear-gradient(180deg, var(--sig-black), var(--sig-rail-2) 62%, #05080C);
    border-right: 1px solid rgba(174, 184, 197, .22);
    box-shadow: 22px 0 70px rgba(8, 12, 17, .38);
    overflow-x: hidden;
    overflow-y: auto;
    transition: width .24s ease, padding .24s ease, transform .24s ease;
}

.admin-theme-signal .signal-rail::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 5px;
    background: linear-gradient(180deg, var(--sig-cyan), transparent 30%, var(--sig-red) 54%, transparent 70%, var(--sig-green));
    box-shadow: 0 0 26px rgba(0, 209, 255, .58);
}

.admin-theme-signal .signal-brand {
    position: relative;
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    min-height: 66px;
    padding: 10px;
    color: #fff;
    text-decoration: none;
    border: 1px solid rgba(174, 184, 197, .18);
    border-radius: var(--sig-radius);
    background: linear-gradient(135deg, rgba(255,255,255,.09), rgba(255,255,255,.03));
    overflow: hidden;
}

.admin-theme-signal .signal-brand::after {
    content: "";
    position: absolute;
    left: 74px;
    right: 12px;
    bottom: 12px;
    height: 1px;
    background: linear-gradient(90deg, var(--sig-cyan), transparent);
    box-shadow: 0 0 12px rgba(0, 209, 255, .75);
}

.admin-theme-signal .signal-brand-mark {
    display: grid;
    width: 52px;
    height: 46px;
    place-items: center;
    color: var(--sig-cyan);
    background: #06090D;
    border: 1px solid rgba(0, 209, 255, .66);
    border-radius: 5px;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 0 24px rgba(0,209,255,.28);
    font-family: Consolas, "Microsoft YaHei", monospace;
    font-size: 16px;
    font-weight: 900;
    letter-spacing: .03em;
}

.admin-theme-signal .signal-brand-text {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.admin-theme-signal .signal-brand-text strong {
    overflow: hidden;
    color: #F7FAFC;
    font-size: 18px;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-theme-signal .signal-brand-text em {
    color: #7FB7C5;
    font-size: 10px;
    font-style: normal;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.admin-theme-signal .signal-nav {
    display: grid;
    align-content: start;
    gap: 6px;
    min-height: 0;
    padding: 4px 0 10px;
}

.admin-theme-signal .signal-nav-item {
    position: relative;
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) 14px;
    align-items: center;
    gap: 10px;
    width: 100%;
    min-height: 42px;
    padding: 0 10px;
    border: 1px solid transparent;
    border-radius: var(--sig-radius);
    background: transparent;
    color: #AAB6C5;
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
    overflow: hidden;
    transition: transform .18s ease, color .18s ease, border-color .18s ease, background .18s ease;
}

.admin-theme-signal a.signal-nav-item {
    grid-template-columns: 36px minmax(0, 1fr);
}

.admin-theme-signal .signal-nav-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 7px;
    bottom: 7px;
    width: 3px;
    border-radius: 3px;
    background: transparent;
    box-shadow: none;
    transition: background .18s ease, box-shadow .18s ease;
}

.admin-theme-signal .signal-nav-item::after {
    content: "";
    position: absolute;
    inset: 0;
    transform: translateX(-120%);
    background: linear-gradient(100deg, transparent, rgba(0,209,255,.18), transparent);
    transition: transform .45s ease;
}

.admin-theme-signal .signal-nav-item:hover,
.admin-theme-signal .signal-nav-item.active {
    color: #FFFFFF;
    border-color: rgba(0, 209, 255, .28);
    background: linear-gradient(90deg, rgba(0, 209, 255, .16), rgba(255,255,255,.045));
    transform: translateX(3px);
}

.admin-theme-signal .signal-nav-item:hover::before,
.admin-theme-signal .signal-nav-item.active::before {
    background: var(--sig-cyan);
    box-shadow: 0 0 18px rgba(0, 209, 255, .85);
}

.admin-theme-signal .signal-nav-item:hover::after,
.admin-theme-signal .signal-nav-item.active::after {
    transform: translateX(120%);
}

.admin-theme-signal .signal-nav-icon {
    position: relative;
    z-index: 1;
    display: grid;
    width: 36px;
    height: 30px;
    place-items: center;
    color: inherit;
    border: 1px solid rgba(174, 184, 197, .15);
    border-radius: 5px;
    background: rgba(255,255,255,.055);
}

.admin-theme-signal .signal-nav-label,
.admin-theme-signal .signal-nav-arrow,
.admin-theme-signal .nav-badge {
    position: relative;
    z-index: 1;
}

.admin-theme-signal .signal-nav-label {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.admin-theme-signal .signal-nav-arrow {
    width: 8px;
    height: 8px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    opacity: .65;
    transform: rotate(-45deg);
    transition: transform .18s ease;
}

.admin-theme-signal .signal-nav-toggle.open .signal-nav-arrow {
    transform: rotate(45deg);
}

.admin-theme-signal .signal-subnav {
    display: grid;
    gap: 4px;
    max-height: 0;
    margin: -2px 0 5px 49px;
    padding-left: 12px;
    border-left: 1px solid rgba(0,209,255,.25);
    opacity: 0;
    overflow: hidden;
    transform: translateY(-5px);
    transition: max-height .2s ease, opacity .2s ease, transform .2s ease;
}

.admin-theme-signal .signal-subnav.open {
    max-height: 360px;
    opacity: 1;
    transform: translateY(0);
}

.admin-theme-signal .signal-subnav a {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    min-height: 31px;
    padding: 0 10px;
    color: #90A0B3;
    border-radius: 5px;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}

.admin-theme-signal .signal-subnav a:hover,
.admin-theme-signal .signal-subnav a.active {
    color: #FFFFFF;
    background: rgba(0, 209, 255, .14);
    box-shadow: inset 2px 0 0 var(--sig-cyan);
}

.admin-theme-signal .signal-subnav .signal-icon {
    width: 15px;
    height: 15px;
}

.admin-theme-signal .signal-identity {
    position: relative;
    padding: 12px;
    color: #DCE7F2;
    border: 1px solid rgba(174, 184, 197, .18);
    border-radius: var(--sig-radius);
    background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035));
}

.admin-theme-signal .signal-identity span,
.admin-theme-signal .signal-identity small {
    display: block;
    color: #8998AA;
    font-size: 11px;
    line-height: 1.55;
}

.admin-theme-signal .signal-identity strong {
    display: block;
    margin: 4px 0 1px;
    color: #FFFFFF;
    font-size: 15px;
}

.admin-theme-signal .signal-workspace {
    min-width: 0;
    padding: 16px 18px 30px;
}

.admin-theme-signal .signal-topbar {
    position: sticky;
    top: 14px;
    z-index: 30;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 12px;
    min-height: 62px;
    margin-bottom: 16px;
    padding: 9px 12px;
    border: 1px solid rgba(174, 184, 197, .75);
    border-radius: var(--sig-radius);
    background: rgba(245, 247, 250, .93);
    box-shadow: var(--sig-shadow);
    backdrop-filter: blur(14px);
    overflow: hidden;
}

.admin-theme-signal .signal-topbar::before {
    content: "";
    position: absolute;
    left: 12px;
    right: 12px;
    top: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--sig-cyan), transparent 35%, var(--sig-red), transparent 64%, var(--sig-green));
    box-shadow: 0 0 16px rgba(0,209,255,.42);
}

.admin-theme-signal .signal-sidebar-toggle {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    color: var(--sig-cyan);
    background: var(--sig-black);
    border: 1px solid rgba(0,209,255,.45);
    border-radius: var(--sig-radius);
    cursor: pointer;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.05), 0 0 18px rgba(0,209,255,.18);
}

.admin-theme-signal .signal-top-title {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.admin-theme-signal .signal-top-title span {
    color: #5B6777;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.admin-theme-signal .signal-top-title strong {
    overflow: hidden;
    color: var(--sig-text);
    font-size: 19px;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-theme-signal .signal-top-tools {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    white-space: nowrap;
}

.admin-theme-signal .signal-top-status {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 30px;
    padding: 0 10px;
    color: #0C6843;
    border: 1px solid rgba(25,195,125,.36);
    border-radius: 999px;
    background: rgba(25,195,125,.10);
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}

.admin-theme-signal .signal-status-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--sig-green);
    box-shadow: 0 0 12px rgba(25,195,125,.86);
}

.admin-theme-signal .signal-top-actions,
.admin-theme-signal .admin-actions,
.admin-theme-signal .ad-row-actions,
.admin-theme-signal .member-form-actions,
.admin-theme-signal .license-modal-actions,
.admin-theme-signal .crawler-mini-actions,
.admin-theme-signal .crawler-mini-foot,
.admin-theme-signal .recharge-result-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
}

.admin-theme-signal .signal-top-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 32px;
    padding: 0 10px;
    color: #26313E;
    background: #FFFFFF;
    border: 1px solid #C3CCD7;
    border-radius: var(--sig-radius);
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.admin-theme-signal .signal-top-actions a:hover {
    border-color: var(--sig-cyan);
    box-shadow: 0 0 0 3px rgba(0, 209, 255, .14);
    transform: translateY(-1px);
}

.admin-theme-signal .signal-top-actions .signal-danger-link {
    color: #FFFFFF;
    border-color: var(--sig-red);
    background: var(--sig-red);
}

.admin-theme-signal .signal-top-actions .signal-icon {
    width: 16px;
    height: 16px;
}

.admin-theme-signal .signal-main {
    width: min(1580px, 100%);
    margin: 0 auto;
    animation: sigPageIn .32s ease both;
}

.admin-theme-signal .signal-page {
    display: block;
}

.admin-theme-signal .page-head {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;
    margin-bottom: 14px;
    padding: 16px 18px;
    color: var(--sig-text);
    background:
        linear-gradient(180deg, rgba(255,255,255,.99), rgba(245,247,250,.96));
    border: 1px solid rgba(174,184,197,.78);
    border-radius: var(--sig-radius);
    box-shadow: var(--sig-shadow);
    overflow: hidden;
}

.admin-theme-signal .page-head::before,
.admin-theme-signal .panel::before,
.admin-theme-signal .stat::before,
.admin-theme-signal .settings-card::before,
.admin-theme-signal .admin-card::before,
.admin-theme-signal .crawler-mini-card::before,
.admin-theme-signal .package-card::before,
.admin-theme-signal .plugin-card::before,
.admin-theme-signal .member-edit-card::before,
.admin-theme-signal .member-wallet-card::before,
.admin-theme-signal .staff-create-card::before,
.admin-theme-signal .staff-list-card::before,
.admin-theme-signal .signal-panel::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: linear-gradient(180deg, var(--sig-cyan), rgba(0,209,255,0));
    box-shadow: 0 0 16px rgba(0,209,255,.42);
}

.admin-theme-signal .page-head::after,
.admin-theme-signal .panel::after,
.admin-theme-signal .settings-card::after,
.admin-theme-signal .crawler-mini-card::after {
    content: "";
    position: absolute;
    left: -20%;
    right: -20%;
    top: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0,209,255,.56), transparent);
    transform: translateX(-45%);
    opacity: 0;
    transition: opacity .2s ease;
}

.admin-theme-signal .page-head:hover::after,
.admin-theme-signal .panel:hover::after,
.admin-theme-signal .settings-card:hover::after,
.admin-theme-signal .crawler-mini-card:hover::after {
    opacity: 1;
    animation: sigEdgeRun 1.6s ease;
}

.admin-theme-signal .page-head h1 {
    margin: 4px 0 0;
    color: var(--sig-text);
    font-size: 24px;
    line-height: 1.12;
    letter-spacing: 0;
}

.admin-theme-signal .muted,
.admin-theme-signal .admin-search-note,
.admin-theme-signal .settings-section-head p,
.admin-theme-signal .settings-card-head p,
.admin-theme-signal .page-head p {
    margin: 5px 0 0;
    color: var(--sig-muted);
    font-size: 12px;
    line-height: 1.55;
}

.admin-theme-signal .pill,
.admin-theme-signal .status-chip,
.admin-theme-signal .crawler-status-pill,
.admin-theme-signal .crawler-run-status,
.admin-theme-signal .log-action-badge,
.admin-theme-signal .amount-badge,
.admin-theme-signal .member-state,
.admin-theme-signal .balance-status,
.admin-theme-signal .ad-state,
.admin-theme-signal .ad-type-badge,
.admin-theme-signal .crawler-status-badge,
.admin-theme-signal .crawler-mini-state,
.admin-theme-signal .nav-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 22px;
    padding: 0 8px;
    color: var(--sig-cyan-deep);
    background: rgba(0, 209, 255, .10);
    border: 1px solid rgba(0, 209, 255, .35);
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
}

.admin-theme-signal .pill {
    letter-spacing: .08em;
}

.admin-theme-signal .status-chip.ok,
.admin-theme-signal .crawler-run-status.success,
.admin-theme-signal .crawler-status-badge.success,
.admin-theme-signal .amount-badge.income,
.admin-theme-signal .balance-status.ok,
.admin-theme-signal .member-state.active,
.admin-theme-signal .ad-state.active,
.admin-theme-signal .ad-state.active-today,
.admin-theme-signal .crawler-mini-state.active,
.admin-theme-signal .crawler-mini-state.running {
    color: #08784A;
    background: rgba(25, 195, 125, .11);
    border-color: rgba(25, 195, 125, .42);
}

.admin-theme-signal .status-chip.warn,
.admin-theme-signal .crawler-status-badge.running,
.admin-theme-signal .ad-state.pending,
.admin-theme-signal .ad-state.expired,
.admin-theme-signal .crawler-mini-state.inactive {
    color: #8A5B00;
    background: rgba(245, 165, 36, .12);
    border-color: rgba(245, 165, 36, .46);
}

.admin-theme-signal .status-chip.danger,
.admin-theme-signal .crawler-run-status.failed,
.admin-theme-signal .crawler-status-badge.failed,
.admin-theme-signal .amount-badge.expense,
.admin-theme-signal .balance-status.bad,
.admin-theme-signal .member-state.disabled,
.admin-theme-signal .ad-state.removed,
.admin-theme-signal .crawler-mini-state.paused,
.admin-theme-signal .crawler-mini-state.expired {
    color: #A8201D;
    background: rgba(229, 57, 53, .11);
    border-color: rgba(229, 57, 53, .42);
}

.admin-theme-signal .panel,
.admin-theme-signal .stat,
.admin-theme-signal .admin-card,
.admin-theme-signal .settings-card,
.admin-theme-signal .signal-panel,
.admin-theme-signal .publish-edit-summary > div,
.admin-theme-signal .user-summary-cards > div,
.admin-theme-signal .user-price-strip > div,
.admin-theme-signal .package-card,
.admin-theme-signal .plugin-card,
.admin-theme-signal .crawler-mini-card,
.admin-theme-signal .member-edit-card,
.admin-theme-signal .member-wallet-card,
.admin-theme-signal .staff-create-card,
.admin-theme-signal .staff-list-card {
    position: relative;
    background: rgba(255,255,255,.97);
    border: 1px solid rgba(174,184,197,.78);
    border-radius: var(--sig-radius);
    box-shadow: var(--sig-shadow);
    overflow: hidden;
    animation: sigPanelIn .34s ease both;
}

.admin-theme-signal .panel,
.admin-theme-signal .settings-card,
.admin-theme-signal .admin-card,
.admin-theme-signal .plugin-card,
.admin-theme-signal .crawler-mini-card,
.admin-theme-signal .member-edit-card,
.admin-theme-signal .member-wallet-card,
.admin-theme-signal .staff-create-card,
.admin-theme-signal .staff-list-card,
.admin-theme-signal .signal-panel {
    padding: 15px;
}

.admin-theme-signal .stat-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin: 0 0 14px;
}

.admin-theme-signal .stat {
    min-height: 104px;
    padding: 16px;
}

.admin-theme-signal .stat span {
    display: block;
    color: #637082;
    font-size: 12px;
    font-weight: 900;
}

.admin-theme-signal .stat strong {
    display: block;
    margin-top: 9px;
    color: #0A1017;
    font-size: 30px;
    font-weight: 950;
    line-height: 1.05;
}

.admin-theme-signal .stat small {
    display: block;
    margin-top: 5px;
    color: var(--sig-muted);
    font-size: 11px;
}

.admin-theme-signal .admin-table-tools,
.admin-theme-signal .settings-section-head,
.admin-theme-signal .settings-card-head,
.admin-theme-signal .level-list-head,
.admin-theme-signal .crawler-mini-top,
.admin-theme-signal .crawler-modal-head,
.admin-theme-signal .compact-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 11px;
}

.admin-theme-signal h2,
.admin-theme-signal .admin-table-tools h2,
.admin-theme-signal .settings-section-head h2,
.admin-theme-signal .settings-card-head h2,
.admin-theme-signal .crawler-mini-title strong,
.admin-theme-signal .panel h2 {
    margin: 0;
    color: var(--sig-text);
    font-size: 16px;
    line-height: 1.28;
    letter-spacing: 0;
}

.admin-theme-signal .settings-card-kicker {
    display: inline-block;
    margin-bottom: 3px;
    color: var(--sig-cyan-deep);
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.admin-theme-signal .primary-btn,
.admin-theme-signal .secondary-btn,
.admin-theme-signal .mini-btn,
.admin-theme-signal .link-btn,
.admin-theme-signal .ad-search-btn,
.admin-theme-signal .ad-danger-btn,
.admin-theme-signal .ad-edit-btn,
.admin-theme-signal .ad-time-btn,
.admin-theme-signal .ad-warn-btn,
.admin-theme-signal .ad-delete-btn,
.admin-theme-signal .level-add-btn,
.admin-theme-signal .level-delete-btn,
.admin-theme-signal .package-delete-btn,
.admin-theme-signal .crawler-action-btn,
.admin-theme-signal .crawler-modal-pages button,
.admin-theme-signal .feed-pager button,
.admin-theme-signal button[type="submit"] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 32px;
    padding: 0 12px;
    color: #FFFFFF;
    background: linear-gradient(180deg, #101923, #080C11);
    border: 1px solid rgba(0, 209, 255, .48);
    border-radius: var(--sig-radius);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 0 0 rgba(0,209,255,0);
    font-family: inherit;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
    overflow: hidden;
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease, background .16s ease, color .16s ease;
}

.admin-theme-signal .primary-btn::after,
.admin-theme-signal .secondary-btn::after,
.admin-theme-signal .mini-btn::after,
.admin-theme-signal .link-btn::after,
.admin-theme-signal .ad-search-btn::after,
.admin-theme-signal .ad-danger-btn::after,
.admin-theme-signal .ad-edit-btn::after,
.admin-theme-signal .ad-time-btn::after,
.admin-theme-signal .ad-warn-btn::after,
.admin-theme-signal .ad-delete-btn::after,
.admin-theme-signal .level-add-btn::after,
.admin-theme-signal .level-delete-btn::after,
.admin-theme-signal .package-delete-btn::after,
.admin-theme-signal .crawler-action-btn::after,
.admin-theme-signal .feed-pager button::after {
    content: "";
    position: absolute;
    inset: 0;
    transform: translateX(-120%);
    background: linear-gradient(105deg, transparent, rgba(255,255,255,.30), transparent);
}

.admin-theme-signal .primary-btn:hover,
.admin-theme-signal .secondary-btn:hover,
.admin-theme-signal .mini-btn:hover,
.admin-theme-signal .link-btn:hover,
.admin-theme-signal .ad-search-btn:hover,
.admin-theme-signal .ad-danger-btn:hover,
.admin-theme-signal .ad-edit-btn:hover,
.admin-theme-signal .ad-time-btn:hover,
.admin-theme-signal .ad-warn-btn:hover,
.admin-theme-signal .ad-delete-btn:hover,
.admin-theme-signal .level-add-btn:hover,
.admin-theme-signal .level-delete-btn:hover,
.admin-theme-signal .package-delete-btn:hover,
.admin-theme-signal .crawler-action-btn:hover,
.admin-theme-signal .feed-pager button:hover {
    border-color: var(--sig-cyan);
    box-shadow: 0 0 0 3px rgba(0,209,255,.14), 0 8px 20px rgba(8,12,17,.12);
    transform: translateY(-1px);
}

.admin-theme-signal .primary-btn:hover::after,
.admin-theme-signal .secondary-btn:hover::after,
.admin-theme-signal .mini-btn:hover::after,
.admin-theme-signal .link-btn:hover::after,
.admin-theme-signal .ad-search-btn:hover::after,
.admin-theme-signal .ad-danger-btn:hover::after,
.admin-theme-signal .ad-edit-btn:hover::after,
.admin-theme-signal .ad-time-btn:hover::after,
.admin-theme-signal .ad-warn-btn:hover::after,
.admin-theme-signal .ad-delete-btn:hover::after,
.admin-theme-signal .level-add-btn:hover::after,
.admin-theme-signal .level-delete-btn:hover::after,
.admin-theme-signal .package-delete-btn:hover::after,
.admin-theme-signal .crawler-action-btn:hover::after,
.admin-theme-signal .feed-pager button:hover::after {
    animation: sigButtonSweep .62s ease;
}

.admin-theme-signal .secondary-btn,
.admin-theme-signal .mini-btn,
.admin-theme-signal .link-btn,
.admin-theme-signal .ad-edit-btn,
.admin-theme-signal .ad-time-btn,
.admin-theme-signal .feed-pager button,
.admin-theme-signal .crawler-modal-pages button {
    color: #202B37;
    background: #FFFFFF;
    border-color: #C4CCD7;
}

.admin-theme-signal .ad-danger-btn,
.admin-theme-signal .ad-delete-btn,
.admin-theme-signal .ad-warn-btn,
.admin-theme-signal .level-delete-btn,
.admin-theme-signal .package-delete-btn {
    color: #FFFFFF;
    border-color: rgba(229,57,53,.72);
    background: linear-gradient(180deg, #E94742, #B82622);
}

.admin-theme-signal .ad-warn-btn {
    border-color: rgba(245,165,36,.72);
    background: linear-gradient(180deg, #F7B54A, #B66E00);
}

.admin-theme-signal .compact,
.admin-theme-signal .primary-btn.compact,
.admin-theme-signal .secondary-btn.compact {
    min-height: 28px;
    padding: 0 10px;
    font-size: 11px;
}

.admin-theme-signal button:disabled,
.admin-theme-signal .disabled,
.admin-theme-signal a.disabled {
    opacity: .52;
    cursor: not-allowed;
    pointer-events: none;
}

.admin-theme-signal input,
.admin-theme-signal select,
.admin-theme-signal textarea {
    width: 100%;
    min-height: 36px;
    color: var(--sig-text);
    background: #FFFFFF;
    border: 1px solid #BFC8D3;
    border-radius: var(--sig-radius);
    padding: 8px 10px;
    font-family: inherit;
    font-size: 13px;
    outline: none;
    transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.admin-theme-signal textarea {
    min-height: 92px;
    resize: vertical;
    line-height: 1.55;
}

.admin-theme-signal input:focus,
.admin-theme-signal select:focus,
.admin-theme-signal textarea:focus {
    border-color: var(--sig-cyan);
    box-shadow: 0 0 0 3px rgba(0,209,255,.14);
}

.admin-theme-signal label {
    color: #2A3441;
    font-size: 12px;
    font-weight: 800;
}

.admin-theme-signal label span,
.admin-theme-signal label small {
    color: var(--sig-muted);
}

.admin-theme-signal input[type="checkbox"],
.admin-theme-signal input[type="radio"] {
    width: 18px;
    min-width: 18px;
    height: 18px;
    min-height: 18px;
    padding: 0;
    accent-color: var(--sig-cyan);
}

.admin-theme-signal .settings-grid,
.admin-theme-signal .staff-fields,
.admin-theme-signal .recharge-filter-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.admin-theme-signal .settings-grid label,
.admin-theme-signal .staff-fields label,
.admin-theme-signal .member-filter-bar label,
.admin-theme-signal .ad-filter-bar label,
.admin-theme-signal .recharge-filter-grid label {
    display: grid;
    gap: 6px;
}

.admin-theme-signal .span-2 {
    grid-column: span 2;
}

.admin-theme-signal .ad-filter-bar,
.admin-theme-signal .member-filter-bar,
.admin-theme-signal .recharge-filter-grid,
.admin-theme-signal .crawler-mini-settings {
    display: grid;
    grid-template-columns: repeat(6, minmax(130px, 1fr)) auto;
    gap: 9px;
    align-items: end;
    margin-bottom: 12px;
    padding: 11px;
    background: #F8FAFC;
    border: 1px solid #D5DCE5;
    border-radius: var(--sig-radius);
}

.admin-theme-signal .member-filter-bar {
    grid-template-columns: repeat(6, minmax(120px, 1fr)) auto auto;
}

.admin-theme-signal .ad-list-toolbar,
.admin-theme-signal .recharge-card-toolbar,
.admin-theme-signal .settings-card-actions,
.admin-theme-signal .settings-savebar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 12px;
}

.admin-theme-signal .ad-list-toolbar {
    justify-content: space-between;
    margin: 0 0 10px;
    color: var(--sig-muted);
    font-size: 12px;
}

.admin-theme-signal .ad-list-toolbar form {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 7px;
    align-items: center;
}

.admin-theme-signal .ad-table-wrap,
.admin-theme-signal .data-table-wrap,
.admin-theme-signal .user-table-wrap,
.admin-theme-signal .crawler-modal-table {
    position: relative;
    background: #FFFFFF;
    border: 1px solid #C7D0DA;
    border-radius: var(--sig-radius);
    box-shadow: 0 14px 34px rgba(8, 12, 17, .08);
    overflow: auto;
}

.admin-theme-signal .ad-table,
.admin-theme-signal .data-table,
.admin-theme-signal .staff-table,
.admin-theme-signal .crawler-modal-table table,
.admin-theme-signal .recharge-card-table {
    width: 100%;
    min-width: 980px;
    border-collapse: separate;
    border-spacing: 0;
    background: #FFFFFF;
}

.admin-theme-signal th,
.admin-theme-signal td {
    vertical-align: middle;
}

.admin-theme-signal .ad-table th,
.admin-theme-signal .ad-table td,
.admin-theme-signal .data-table th,
.admin-theme-signal .data-table td,
.admin-theme-signal .staff-table th,
.admin-theme-signal .staff-table td,
.admin-theme-signal .crawler-modal-table th,
.admin-theme-signal .crawler-modal-table td,
.admin-theme-signal .recharge-card-table th,
.admin-theme-signal .recharge-card-table td {
    padding: 8px 10px;
    color: #1E2936;
    border-bottom: 1px solid #E3E8EF;
    font-size: 12px;
    line-height: 1.36;
}

.admin-theme-signal .ad-table th,
.admin-theme-signal .data-table th,
.admin-theme-signal .staff-table th,
.admin-theme-signal .crawler-modal-table th,
.admin-theme-signal .recharge-card-table th {
    position: sticky;
    top: 0;
    z-index: 2;
    color: #4B5868;
    background: linear-gradient(180deg, #F7F9FB, #E9EEF4);
    font-size: 11px;
    font-weight: 950;
    white-space: nowrap;
}

.admin-theme-signal .ad-table tbody tr,
.admin-theme-signal .data-table tbody tr,
.admin-theme-signal .staff-table tbody tr,
.admin-theme-signal .crawler-modal-table tbody tr,
.admin-theme-signal .recharge-card-table tbody tr {
    position: relative;
}

.admin-theme-signal .ad-table tbody tr:hover td,
.admin-theme-signal .data-table tbody tr:hover td,
.admin-theme-signal .staff-table tbody tr:hover td,
.admin-theme-signal .crawler-modal-table tbody tr:hover td,
.admin-theme-signal .recharge-card-table tbody tr:hover td {
    background: #F2FBFE;
    box-shadow: inset 0 1px 0 rgba(0,209,255,.12), inset 0 -1px 0 rgba(0,209,255,.12);
}

.admin-theme-signal .ad-table tbody tr:hover td:first-child,
.admin-theme-signal .data-table tbody tr:hover td:first-child,
.admin-theme-signal .staff-table tbody tr:hover td:first-child {
    box-shadow: inset 3px 0 0 var(--sig-cyan);
}

.admin-theme-signal .ad-id-cell,
.admin-theme-signal .amount-col-balance,
.admin-theme-signal .log-col-time,
.admin-theme-signal .crawler-time-cell,
.admin-theme-signal .dashboard-time-cell,
.admin-theme-signal code {
    font-family: Consolas, "SFMono-Regular", "Microsoft YaHei", monospace;
    white-space: nowrap;
}

.admin-theme-signal code {
    display: inline-flex;
    max-width: 240px;
    overflow: hidden;
    color: #0B5264;
    text-overflow: ellipsis;
}

.admin-theme-signal .admin-empty,
.admin-theme-signal .feed-empty {
    padding: 24px;
    color: #6B7686;
    text-align: center;
    background: repeating-linear-gradient(135deg, #FAFBFC 0 8px, #F3F6F9 8px 16px);
}

.admin-theme-signal .ad-pagination,
.admin-theme-signal .log-pagination,
.admin-theme-signal .crawler-modal-pages,
.admin-theme-signal .feed-pager {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 11px;
    color: #627083;
    font-size: 12px;
}

.admin-theme-signal .ad-pagination nav,
.admin-theme-signal .log-pagination nav,
.admin-theme-signal .feed-pager {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.admin-theme-signal .ad-pagination a,
.admin-theme-signal .log-pagination a,
.admin-theme-signal .feed-pager span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 0 9px;
    color: #394657;
    background: #FFFFFF;
    border: 1px solid #C4CCD6;
    border-radius: var(--sig-radius);
    font-size: 12px;
    font-weight: 850;
    text-decoration: none;
}

.admin-theme-signal .ad-pagination a.active,
.admin-theme-signal .log-pagination a.active {
    color: #FFFFFF;
    background: var(--sig-black);
    border-color: var(--sig-cyan);
    box-shadow: 0 0 0 3px rgba(0,209,255,.12);
}

.admin-theme-signal .feed-list {
    display: grid;
    gap: 7px;
}

.admin-theme-signal .feed-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 38px;
    padding: 9px 10px;
    color: #202B37;
    background: #FFFFFF;
    border: 1px solid #D8DEE6;
    border-radius: var(--sig-radius);
    text-align: left;
    text-decoration: none;
    cursor: pointer;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.admin-theme-signal .feed-item:hover {
    border-color: var(--sig-cyan);
    box-shadow: 0 0 0 3px rgba(0,209,255,.12);
    transform: translateY(-1px);
}

.admin-theme-signal .feed-item em {
    color: var(--sig-muted);
    font-size: 11px;
    font-style: normal;
    white-space: nowrap;
}

.admin-theme-signal .dashboard-feed-grid,
.admin-theme-signal .dashboard-console-grid,
.admin-theme-signal .crawler-mini-grid,
.admin-theme-signal .user-dashboard-grid,
.admin-theme-signal .user-recharge-grid,
.admin-theme-signal .member-message-layout,
.admin-theme-signal .staff-layout-grid,
.admin-theme-signal .recharge-card-layout,
.admin-theme-signal .other-settings-grid {
    display: grid;
    gap: 14px;
    align-items: start;
}

.admin-theme-signal .dashboard-console-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.admin-theme-signal .dashboard-console-grid .program-info-panel {
    grid-column: 1 / -1;
}

.admin-theme-signal .crawler-mini-grid {
    grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
}

.admin-theme-signal .staff-layout-grid,
.admin-theme-signal .recharge-card-layout {
    grid-template-columns: minmax(280px, 420px) minmax(0, 1fr);
    align-items: start;
}

.admin-theme-signal .other-settings-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-theme-signal .other-settings-column {
    display: grid;
    gap: 14px;
    align-items: start;
}

.admin-theme-signal .crawler-mini-title {
    display: grid;
    gap: 3px;
}

.admin-theme-signal .crawler-mini-title span {
    color: var(--sig-text);
    font-size: 16px;
    font-weight: 950;
}

.admin-theme-signal .crawler-mini-title small,
.admin-theme-signal .crawler-mini-foot span {
    color: var(--sig-muted);
    font-size: 11px;
}

.admin-theme-signal .crawler-dispatch-note {
    min-height: 38px;
    margin: 10px 0;
    padding: 9px 10px;
    color: #4B5868;
    background: #F8FAFC;
    border: 1px solid #D5DCE5;
    border-radius: var(--sig-radius);
    font-size: 12px;
    line-height: 1.45;
}

.admin-theme-signal .crawler-dispatch-note.running {
    color: #08784A;
    background: #F0FCF6;
    border-color: rgba(25,195,125,.38);
}

.admin-theme-signal .crawler-dispatch-note.waiting {
    color: #8A5B00;
    background: #FFF9E8;
    border-color: rgba(245,165,36,.38);
}

.admin-theme-signal .crawler-mini-settings {
    grid-template-columns: minmax(0, 1fr) 138px;
    margin-bottom: 12px;
    padding: 9px;
}

.admin-theme-signal .crawler-switch,
.admin-theme-signal .crawler-source-switch,
.admin-theme-signal .settings-switch {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    cursor: pointer;
}

.admin-theme-signal .crawler-switch input,
.admin-theme-signal .crawler-source-switch input,
.admin-theme-signal .settings-switch input {
    position: absolute;
    opacity: 0;
    width: 1px;
    height: 1px;
}

.admin-theme-signal .crawler-switch-track,
.admin-theme-signal .crawler-source-switch i,
.admin-theme-signal .settings-switch i {
    position: relative;
    display: inline-block;
    width: 46px;
    height: 24px;
    flex: 0 0 auto;
    background: #D9E0E8;
    border: 1px solid #B9C3CF;
    border-radius: 999px;
    transition: background .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.admin-theme-signal .crawler-switch-track::after,
.admin-theme-signal .crawler-source-switch i::after,
.admin-theme-signal .settings-switch i::after {
    content: "";
    position: absolute;
    left: 3px;
    top: 3px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #FFFFFF;
    box-shadow: 0 2px 6px rgba(8,12,17,.24);
    transition: transform .16s ease;
}

.admin-theme-signal .crawler-switch input:checked + .crawler-switch-track,
.admin-theme-signal .crawler-source-switch input:checked + i,
.admin-theme-signal .settings-switch input:checked + i {
    background: var(--sig-green);
    border-color: var(--sig-green);
    box-shadow: 0 0 0 3px rgba(25,195,125,.14);
}

.admin-theme-signal .crawler-switch input:checked + .crawler-switch-track::after,
.admin-theme-signal .crawler-source-switch input:checked + i::after,
.admin-theme-signal .settings-switch input:checked + i::after {
    transform: translateX(22px);
}

.admin-theme-signal .crawler-switch-text {
    display: grid;
    gap: 2px;
}

.admin-theme-signal .crawler-switch-text strong {
    color: var(--sig-text);
    font-size: 12px;
}

.admin-theme-signal .crawler-switch-text small {
    color: var(--sig-muted);
    font-size: 11px;
    white-space: nowrap;
}

.admin-theme-signal .crawler-interval {
    grid-template-columns: auto minmax(0, 58px) auto;
    display: grid;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

.admin-theme-signal .crawler-interval input {
    min-height: 30px;
    padding: 5px 7px;
}

.admin-theme-signal .crawler-mini-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 7px;
    margin: 10px 0;
}

.admin-theme-signal .crawler-mini-metrics div,
.admin-theme-signal .program-info-list div,
.admin-theme-signal .member-summary-row span,
.admin-theme-signal .publish-create-summary {
    padding: 9px;
    background: #F8FAFC;
    border: 1px solid #D8DEE6;
    border-radius: var(--sig-radius);
}

.admin-theme-signal .crawler-mini-metrics strong {
    display: block;
    color: var(--sig-text);
    font-size: 20px;
    line-height: 1.1;
}

.admin-theme-signal .crawler-mini-metrics span {
    display: block;
    margin-top: 3px;
    color: var(--sig-muted);
    font-size: 11px;
}

.admin-theme-signal .ad-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-width: 50px;
    min-height: 24px;
    padding: 0 7px;
    color: #667383;
    background: #EEF2F6;
    border: 1px solid #C4CCD6;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 950;
}

.admin-theme-signal .ad-toggle span {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #98A3B1;
}

.admin-theme-signal .ad-toggle.on {
    color: #08784A;
    background: rgba(25,195,125,.11);
    border-color: rgba(25,195,125,.46);
}

.admin-theme-signal .ad-toggle.on span {
    background: var(--sig-green);
    box-shadow: 0 0 11px rgba(25,195,125,.64);
}

.admin-theme-signal .publish-create-type-block,
.admin-theme-signal .publish-create-controls,
.admin-theme-signal .publish-source-field,
.admin-theme-signal .publish-price-panel,
.admin-theme-signal .publish-form,
.admin-theme-signal .publish-edit-rule-box,
.admin-theme-signal .user-price-strip > div,
.admin-theme-signal .user-log-item,
.admin-theme-signal .member-benefit-line {
    position: relative;
    background: #F8FAFC;
    border: 1px solid #D8DEE6;
    border-radius: var(--sig-radius);
    padding: 12px;
}

.admin-theme-signal .publish-create-type-block {
    display: grid;
    gap: 9px;
    margin-bottom: 12px;
}

.admin-theme-signal .publish-create-label {
    color: var(--sig-text);
    font-size: 13px;
    font-weight: 950;
}

.admin-theme-signal .publish-type-picker,
.admin-theme-signal .publish-form-types {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
}

.admin-theme-signal .publish-type-picker label,
.admin-theme-signal .publish-form-types label,
.admin-theme-signal .settings-choice-group label,
.admin-theme-signal .ad-time-tabs label {
    position: relative;
    display: grid;
    gap: 5px;
    min-height: 68px;
    padding: 10px;
    color: #202B37;
    background: #FFFFFF;
    border: 1px solid #C9D2DD;
    border-radius: var(--sig-radius);
    cursor: pointer;
    overflow: hidden;
}

.admin-theme-signal .publish-type-picker label:has(input:checked),
.admin-theme-signal .publish-form-types label:has(input:checked),
.admin-theme-signal .settings-choice-group label:has(input:checked),
.admin-theme-signal .ad-time-tabs label:has(input:checked) {
    border-color: var(--sig-cyan);
    background: rgba(0,209,255,.09);
    box-shadow: 0 0 0 3px rgba(0,209,255,.10);
}

.admin-theme-signal .publish-type-picker label input,
.admin-theme-signal .publish-form-types label input,
.admin-theme-signal .settings-choice-group label input,
.admin-theme-signal .ad-time-tabs label input {
    position: absolute;
    right: 8px;
    top: 8px;
}

.admin-theme-signal .publish-type-picker strong,
.admin-theme-signal .publish-form-types strong {
    font-size: 13px;
}

.admin-theme-signal .publish-type-picker small,
.admin-theme-signal .publish-form-types small {
    color: var(--sig-cyan-deep);
    font-size: 12px;
    font-weight: 950;
}

.admin-theme-signal .publish-create-controls {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}

.admin-theme-signal .publish-compact-field,
.admin-theme-signal .publish-source-field {
    display: grid;
    gap: 7px;
}

.admin-theme-signal .publish-price-panel {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
    color: #263241;
    font-size: 12px;
}

.admin-theme-signal .publish-price-panel span,
.admin-theme-signal .publish-price-panel em {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 0 8px;
    background: #FFFFFF;
    border: 1px solid #D8DEE6;
    border-radius: 999px;
    font-style: normal;
}

.admin-theme-signal .license-limit-note {
    margin: 0 0 12px;
    padding: 9px 10px;
    color: #8A5B00;
    background: #FFF9E8;
    border: 1px solid rgba(245,165,36,.42);
    border-radius: var(--sig-radius);
    font-size: 12px;
}

.admin-theme-signal .user-summary-cards,
.admin-theme-signal .publish-edit-summary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 12px;
    margin-bottom: 14px;
}

.admin-theme-signal .user-summary-cards > div,
.admin-theme-signal .publish-edit-summary > div {
    padding: 14px;
}

.admin-theme-signal .user-summary-cards span,
.admin-theme-signal .publish-edit-summary span,
.admin-theme-signal .user-price-strip span {
    color: var(--sig-muted);
    font-size: 12px;
    font-weight: 900;
}

.admin-theme-signal .user-summary-cards strong,
.admin-theme-signal .publish-edit-summary strong,
.admin-theme-signal .user-price-strip strong {
    display: block;
    margin-top: 5px;
    color: var(--sig-text);
    font-size: 22px;
    line-height: 1.1;
}

.admin-theme-signal .user-price-strip {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 10px;
    margin-bottom: 14px;
}

.admin-theme-signal .member-title-line {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.admin-theme-signal .member-benefit-line {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin-top: 8px;
}

.admin-theme-signal .member-benefit-line strong {
    color: var(--sig-text);
    font-size: 12px;
}

.admin-theme-signal .user-log-list {
    display: grid;
    gap: 8px;
}

.admin-theme-signal .user-log-item {
    display: grid;
    gap: 4px;
}

.admin-theme-signal .user-log-item span {
    color: var(--sig-muted);
    font-family: Consolas, "Microsoft YaHei", monospace;
    font-size: 11px;
}

.admin-theme-signal .user-log-item strong {
    color: var(--sig-text);
    font-size: 13px;
}

.admin-theme-signal .user-log-item p {
    margin: 0;
    color: #344255;
    font-size: 12px;
    line-height: 1.45;
}

.admin-theme-signal .user-log-empty {
    padding: 20px;
    color: var(--sig-muted);
    text-align: center;
}

.admin-theme-signal .ad-time-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin: 12px 0;
}

.admin-theme-signal .ad-time-current {
    padding: 9px 10px;
    color: #344255;
    background: #F8FAFC;
    border: 1px solid #D8DEE6;
    border-radius: var(--sig-radius);
    font-size: 12px;
}

.admin-theme-signal .ad-time-now,
.admin-theme-signal .ad-time-schedule {
    display: grid;
    gap: 7px;
    margin-bottom: 10px;
}

.admin-theme-signal .ad-time-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 12px;
}

.admin-theme-signal .settings-subnav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 14px;
}

.admin-theme-signal .settings-subnav a {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
    padding: 0 11px;
    color: #526070;
    background: #FFFFFF;
    border: 1px solid #C4CCD6;
    border-radius: var(--sig-radius);
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
}

.admin-theme-signal .settings-subnav a.active,
.admin-theme-signal .settings-subnav a:hover {
    color: var(--sig-cyan-deep);
    border-color: rgba(0,209,255,.44);
    background: rgba(0,209,255,.10);
}

.admin-theme-signal .settings-display-card,
.admin-theme-signal .settings-day-switch {
    background: #F8FAFC;
    border: 1px solid #D8DEE6;
    border-radius: var(--sig-radius);
}

.admin-theme-signal .settings-display-card {
    padding: 12px;
}

.admin-theme-signal .settings-display-head {
    display: grid;
    gap: 4px;
    margin-bottom: 9px;
}

.admin-theme-signal .settings-display-head strong {
    color: var(--sig-text);
    font-size: 14px;
}

.admin-theme-signal .settings-display-list {
    display: grid;
    gap: 8px;
}

.admin-theme-signal .settings-day-switch {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    padding: 10px;
}

.admin-theme-signal .settings-display-text {
    display: grid;
    gap: 2px;
}

.admin-theme-signal .settings-display-text strong {
    color: var(--sig-text);
}

.admin-theme-signal .settings-day-control {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--sig-muted);
    font-size: 11px;
    white-space: nowrap;
}

.admin-theme-signal .template-market .template-card-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
    gap: 14px !important;
    align-items: stretch !important;
}

.admin-theme-signal .template-market .template-card {
    position: relative !important;
    display: grid !important;
    grid-template-rows: 168px minmax(0, 1fr) auto !important;
    min-height: 386px !important;
    padding: 13px !important;
    color: var(--sig-text) !important;
    background: rgba(255,255,255,.97) !important;
    border: 1px solid rgba(174,184,197,.78) !important;
    border-radius: var(--sig-radius) !important;
    box-shadow: var(--sig-shadow) !important;
    overflow: hidden !important;
}

.admin-theme-signal .template-market .template-card::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 3px !important;
    background: linear-gradient(180deg, var(--sig-cyan), transparent) !important;
    box-shadow: 0 0 16px rgba(0,209,255,.42) !important;
}

.admin-theme-signal .template-market .template-preview {
    height: 168px !important;
    border: 1px solid #CAD3DE !important;
    border-radius: var(--sig-radius) !important;
    background: #DDE5EE !important;
}

.admin-theme-signal .template-active-ribbon,
.admin-theme-signal .template-code,
.admin-theme-signal .template-recommend,
.admin-theme-signal .member-level-pill,
.admin-theme-signal .member-benefit-tag {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 22px !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}

.admin-theme-signal .template-active-ribbon {
    position: absolute !important;
    right: 8px !important;
    top: 8px !important;
    color: #FFFFFF !important;
    background: var(--sig-green) !important;
}

.admin-theme-signal .template-code,
.admin-theme-signal .template-recommend,
.admin-theme-signal .member-level-pill,
.admin-theme-signal .member-benefit-tag {
    color: var(--sig-cyan-deep) !important;
    background: rgba(0,209,255,.10) !important;
    border: 1px solid rgba(0,209,255,.35) !important;
}

.admin-theme-signal .template-meta {
    display: grid !important;
    align-content: start !important;
    gap: 7px !important;
    padding: 12px 2px !important;
}

.admin-theme-signal .template-meta h2 {
    margin: 0 !important;
    font-size: 17px !important;
}

.admin-theme-signal .template-meta p {
    margin: 0 !important;
    color: var(--sig-muted) !important;
    font-size: 12px !important;
    line-height: 1.55 !important;
}

.admin-theme-signal .template-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
}

.admin-theme-signal .template-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    align-items: center !important;
}

.admin-theme-signal .template-use,
.admin-theme-signal .template-current,
.admin-theme-signal .template-edit-btn,
.admin-theme-signal .template-modal-actions .primary-btn,
.admin-theme-signal .template-modal-actions .secondary-btn {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 32px !important;
    padding: 0 12px !important;
    color: #FFFFFF !important;
    background: linear-gradient(180deg, #101923, #080C11) !important;
    border: 1px solid rgba(0,209,255,.48) !important;
    border-radius: var(--sig-radius) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

.admin-theme-signal .template-current,
.admin-theme-signal .template-modal-actions .secondary-btn {
    color: #202B37 !important;
    background: #FFFFFF !important;
    border-color: #C4CCD7 !important;
}

.admin-theme-signal .template-tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-bottom: 14px !important;
}

.admin-theme-signal .template-tabs button {
    color: #202B37 !important;
    background: #FFFFFF !important;
    border: 1px solid #C4CCD7 !important;
}

.admin-theme-signal .template-tabs button.active {
    color: #FFFFFF !important;
    background: var(--sig-black) !important;
    border-color: var(--sig-cyan) !important;
}

.admin-theme-signal .template-cloud-empty {
    padding: 42px 20px !important;
    color: var(--sig-muted) !important;
    background: rgba(255,255,255,.97) !important;
    border: 1px solid rgba(174,184,197,.78) !important;
    border-radius: var(--sig-radius) !important;
    box-shadow: var(--sig-shadow) !important;
    text-align: center !important;
}

.admin-theme-signal .template-cloud-empty strong {
    display: block !important;
    margin-bottom: 6px !important;
    color: var(--sig-text) !important;
    font-size: 18px !important;
}

.admin-theme-signal .template-modal {
    background: rgba(8,12,17,.72) !important;
    backdrop-filter: blur(10px) !important;
}

.admin-theme-signal .template-modal-card {
    border-radius: var(--sig-radius) !important;
    border: 1px solid rgba(174,184,197,.85) !important;
    box-shadow: var(--sig-hard-shadow) !important;
}

.admin-theme-signal .template-modal-head,
.admin-theme-signal .template-modal-actions {
    background: #F5F7FA !important;
    border-color: #D5DCE5 !important;
}

.admin-theme-signal .template-modal-section {
    background: #F8FAFC !important;
    border: 1px solid #D5DCE5 !important;
    border-radius: var(--sig-radius) !important;
}

.admin-theme-signal .template-modal-close {
    color: #A8201D !important;
    background: rgba(229,57,53,.10) !important;
    border: 1px solid rgba(229,57,53,.40) !important;
}

.admin-theme-signal .template-text-grid input,
.admin-theme-signal .template-banner-row input,
.admin-theme-signal .template-ad-row input,
.admin-theme-signal .template-icon-card input,
.admin-theme-signal .settings-color-control input {
    border-radius: var(--sig-radius) !important;
}

.admin-theme-signal .settings-color-pair-list {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.admin-theme-signal .settings-color-pair,
.admin-theme-signal .settings-color-field,
.admin-theme-signal .template-icon-card {
    background: #FFFFFF !important;
    border: 1px solid #D8DEE6 !important;
    border-radius: var(--sig-radius) !important;
}

.admin-theme-signal .settings-color-control {
    grid-template-columns: 22px 76px !important;
}

.admin-theme-signal .settings-color-control input[type="color"] {
    width: 22px !important;
    height: 22px !important;
}

.admin-theme-signal .settings-color-control input:not([type="color"]) {
    width: 76px !important;
    height: 24px !important;
    padding: 3px 5px !important;
    font-size: 11px !important;
}

.admin-theme-signal .alert,
.admin-theme-signal .update-result,
.admin-theme-signal .license-modal-message,
.admin-theme-signal .crawler-trial-alert {
    margin-bottom: 12px;
    padding: 10px 12px;
    color: #2B3746;
    background: #FFFFFF;
    border: 1px solid #C4CCD6;
    border-radius: var(--sig-radius);
    box-shadow: 0 10px 24px rgba(8,12,17,.08);
    font-size: 13px;
}

.admin-theme-signal .alert.ok,
.admin-theme-signal .update-result.ok,
.admin-theme-signal .license-modal-message.ok {
    color: #08784A;
    background: #F0FCF6;
    border-color: rgba(25,195,125,.42);
}

.admin-theme-signal .alert.error,
.admin-theme-signal .update-result.error,
.admin-theme-signal .license-modal-message.error {
    color: #A8201D;
    background: #FFF3F2;
    border-color: rgba(229,57,53,.42);
}

.admin-theme-signal .alert.warning,
.admin-theme-signal .update-result.warn {
    color: #8A5B00;
    background: #FFF9E8;
    border-color: rgba(245,165,36,.46);
}

.admin-theme-signal .ad-time-modal,
.admin-theme-signal .crawler-modal {
    position: fixed;
    inset: 0;
    z-index: 100;
    display: grid;
    place-items: center;
    padding: 22px;
    background: rgba(8, 12, 17, .72);
    backdrop-filter: blur(10px);
}

.admin-theme-signal .ad-time-modal[hidden],
.admin-theme-signal .crawler-modal[hidden] {
    display: none;
}

.admin-theme-signal .crawler-modal-backdrop {
    position: absolute;
    inset: 0;
}

.admin-theme-signal .ad-time-dialog,
.admin-theme-signal .crawler-modal-card {
    position: relative;
    width: min(720px, 100%);
    max-height: min(86vh, 900px);
    overflow: auto;
    padding: 18px;
    color: var(--sig-text);
    background:
        linear-gradient(180deg, rgba(255,255,255,.99), rgba(245,247,250,.98));
    border: 1px solid rgba(174,184,197,.85);
    border-radius: var(--sig-radius);
    box-shadow: var(--sig-hard-shadow);
    animation: sigModalIn .2s ease both;
}

.admin-theme-signal .ad-time-dialog::before,
.admin-theme-signal .crawler-modal-card::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--sig-cyan), transparent 45%, var(--sig-red));
    box-shadow: 0 0 20px rgba(0,209,255,.42);
}

.admin-theme-signal .ad-time-close,
.admin-theme-signal .crawler-modal-head button[data-crawler-close] {
    position: absolute;
    right: 12px;
    top: 10px;
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    color: #A8201D;
    background: rgba(229,57,53,.10);
    border: 1px solid rgba(229,57,53,.40);
    border-radius: var(--sig-radius);
    font-size: 18px;
    line-height: 1;
}

.admin-theme-signal .ad-time-dialog h2,
.admin-theme-signal .crawler-modal-head h2 {
    margin: 0 42px 6px 0;
    color: var(--sig-text);
    font-size: 19px;
}

.admin-theme-signal .ad-time-sub,
.admin-theme-signal .crawler-modal-head p {
    margin: 0 0 12px;
    color: var(--sig-muted);
    font-size: 12px;
}

.admin-theme-signal .update-progress-dialog {
    width: min(760px, 100%);
}

.admin-theme-signal .update-progress-track {
    height: 10px;
    margin: 14px 0;
    overflow: hidden;
    background: #DCE3EC;
    border: 1px solid #BFC8D3;
    border-radius: 999px;
}

.admin-theme-signal .update-progress-track span {
    display: block;
    width: 0;
    height: 100%;
    background: linear-gradient(90deg, var(--sig-cyan), var(--sig-green));
    box-shadow: 0 0 18px rgba(0,209,255,.55);
    transition: width .36s ease;
}

.admin-theme-signal .update-progress-steps {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 7px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.admin-theme-signal .update-progress-steps li {
    position: relative;
    min-height: 58px;
    padding: 25px 6px 8px;
    color: #6A7584;
    background: #F8FAFC;
    border: 1px solid #D8DEE6;
    border-radius: var(--sig-radius);
    text-align: center;
    font-size: 11px;
    font-weight: 850;
}

.admin-theme-signal .update-progress-steps li::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 8px;
    width: 10px;
    height: 10px;
    margin-left: -5px;
    border-radius: 50%;
    background: #AAB4C0;
}

.admin-theme-signal .update-progress-steps li.active {
    color: var(--sig-cyan-deep);
    border-color: rgba(0,209,255,.46);
    background: rgba(0,209,255,.08);
}

.admin-theme-signal .update-progress-steps li.active::before {
    background: var(--sig-cyan);
    box-shadow: 0 0 18px rgba(0,209,255,.78);
    animation: sigPulse 1s ease-in-out infinite;
}

.admin-theme-signal .update-progress-steps li.done {
    color: #08784A;
    border-color: rgba(25,195,125,.42);
    background: rgba(25,195,125,.09);
}

.admin-theme-signal .update-progress-steps li.done::before {
    background: var(--sig-green);
}

.admin-theme-signal .update-progress-steps li.error {
    color: #A8201D;
    border-color: rgba(229,57,53,.42);
    background: rgba(229,57,53,.09);
}

.admin-theme-signal .update-progress-steps li.error::before {
    background: var(--sig-red);
}

.admin-theme-signal .update-progress-success-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 13px;
    color: #08784A;
    font-size: 12px;
    font-weight: 900;
}

.admin-theme-signal .update-progress-success-actions[hidden] {
    display: none;
}

.admin-theme-signal .update-permission-box {
    display: grid;
    gap: 8px;
    margin-top: 10px;
    padding: 12px;
    background: #F8FAFC;
    border: 1px solid #D8DEE6;
    border-radius: var(--sig-radius);
}

.admin-theme-signal .update-permission-box strong {
    font-size: 13px;
}

.admin-theme-signal .update-permission-box textarea {
    font-family: Consolas, "Microsoft YaHei", monospace;
}

.admin-theme-signal .auth-shell {
    width: 100%;
}

.admin-theme-signal .signal-auth-stage {
    position: relative;
    display: grid;
    min-height: 100vh;
    place-items: center;
    padding: 28px 16px;
    background:
        linear-gradient(90deg, rgba(0,209,255,.12) 0 1px, transparent 1px 86px),
        linear-gradient(180deg, rgba(255,255,255,.08) 0 1px, transparent 1px 72px),
        linear-gradient(135deg, #080C11 0%, #141E29 47%, #D9E0E8 47.2%, #F5F7FA 100%);
    overflow: hidden;
}

.admin-theme-signal .signal-auth-frame {
    display: grid;
    grid-template-columns: minmax(260px, 360px) minmax(320px, 460px);
    width: min(880px, 100%);
    min-height: 520px;
    background: rgba(255,255,255,.96);
    border: 1px solid rgba(174,184,197,.82);
    border-radius: var(--sig-radius);
    box-shadow: var(--sig-hard-shadow);
    overflow: hidden;
    animation: sigModalIn .28s ease both;
}

.admin-theme-signal .signal-auth-brand {
    position: relative;
    display: grid;
    align-content: end;
    gap: 8px;
    padding: 28px;
    color: #FFFFFF;
    background:
        linear-gradient(180deg, rgba(0,209,255,.14), transparent 34%),
        linear-gradient(135deg, #080C11, #111923);
}

.admin-theme-signal .signal-auth-brand::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .38;
    background:
        linear-gradient(90deg, rgba(0,209,255,.20) 0 1px, transparent 1px 54px),
        linear-gradient(180deg, rgba(255,255,255,.08) 0 1px, transparent 1px 44px);
}

.admin-theme-signal .signal-auth-brand span,
.admin-theme-signal .signal-auth-brand strong,
.admin-theme-signal .signal-auth-brand em {
    position: relative;
}

.admin-theme-signal .signal-auth-brand span {
    display: grid;
    width: 74px;
    height: 56px;
    place-items: center;
    color: var(--sig-cyan);
    border: 1px solid rgba(0,209,255,.66);
    border-radius: var(--sig-radius);
    font-family: Consolas, monospace;
    font-size: 22px;
    font-weight: 950;
    box-shadow: 0 0 28px rgba(0,209,255,.30);
}

.admin-theme-signal .signal-auth-brand strong {
    font-size: 24px;
    line-height: 1.18;
}

.admin-theme-signal .signal-auth-brand em {
    color: #80B9C8;
    font-size: 11px;
    font-style: normal;
    font-weight: 950;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.admin-theme-signal .signal-auth-content {
    display: grid;
    align-content: center;
    padding: 30px;
}

.admin-theme-signal .auth-card {
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.admin-theme-signal .auth-brand-mark {
    display: none;
}

.admin-theme-signal .auth-head h1 {
    margin: 0;
    color: var(--sig-text);
    font-size: 28px;
    line-height: 1.14;
}

.admin-theme-signal .auth-head p {
    margin: 8px 0 0;
    color: var(--sig-muted);
    font-size: 13px;
    line-height: 1.55;
}

.admin-theme-signal .auth-form {
    display: grid;
    gap: 13px;
    margin-top: 18px;
}

.admin-theme-signal .auth-form label {
    display: grid;
    gap: 7px;
}

.admin-theme-signal .auth-form .primary-btn {
    width: 100%;
    min-height: 42px;
    margin-top: 2px;
}

.admin-theme-signal .captcha-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 96px;
    gap: 8px;
    align-items: center;
}

.admin-theme-signal .captcha-row strong {
    display: grid;
    min-height: 38px;
    place-items: center;
    color: var(--sig-cyan);
    background: var(--sig-black);
    border: 1px solid rgba(0,209,255,.46);
    border-radius: var(--sig-radius);
    font-family: Consolas, monospace;
    letter-spacing: .14em;
}

.admin-theme-signal .auth-links {
    margin-top: 14px;
    text-align: center;
}

.admin-theme-signal .auth-links a {
    color: var(--sig-cyan-deep);
    font-size: 13px;
    font-weight: 900;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-shell {
    grid-template-columns: 86px minmax(0, 1fr);
}

.admin-theme-signal.signal-sidebar-collapsed .signal-rail {
    padding: 18px 10px;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-brand {
    grid-template-columns: 52px;
    justify-content: center;
    padding: 10px 6px;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-brand-text,
.admin-theme-signal.signal-sidebar-collapsed .signal-brand::after,
.admin-theme-signal.signal-sidebar-collapsed .signal-nav-label,
.admin-theme-signal.signal-sidebar-collapsed .signal-nav-arrow,
.admin-theme-signal.signal-sidebar-collapsed .signal-subnav,
.admin-theme-signal.signal-sidebar-collapsed .signal-identity span,
.admin-theme-signal.signal-sidebar-collapsed .signal-identity small {
    display: none;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-nav-item {
    grid-template-columns: 36px;
    justify-content: center;
    padding: 0;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-identity {
    padding: 10px 6px;
    text-align: center;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-identity strong {
    overflow: hidden;
    font-size: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 1180px) {
    .admin-theme-signal .stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-theme-signal .dashboard-console-grid,
    .admin-theme-signal .other-settings-grid,
    .admin-theme-signal .staff-layout-grid,
    .admin-theme-signal .recharge-card-layout {
        grid-template-columns: 1fr;
    }

    .admin-theme-signal .ad-filter-bar,
    .admin-theme-signal .member-filter-bar,
    .admin-theme-signal .recharge-filter-grid {
        grid-template-columns: repeat(3, minmax(130px, 1fr));
    }
}

@media (max-width: 900px) {
    .admin-theme-signal .signal-shell,
    .admin-theme-signal.signal-sidebar-collapsed .signal-shell {
        grid-template-columns: 1fr;
    }

    .admin-theme-signal .signal-rail,
    .admin-theme-signal.signal-sidebar-collapsed .signal-rail {
        position: fixed;
        z-index: 70;
        width: min(306px, calc(100vw - 44px));
        height: 100vh;
        transform: translateX(-105%);
    }

    .admin-theme-signal.signal-mobile-nav-open .signal-rail {
        transform: translateX(0);
    }

    .admin-theme-signal.signal-mobile-nav-open::after {
        content: "";
        position: fixed;
        inset: 0;
        z-index: 60;
        background: rgba(8, 12, 17, .62);
    }

    .admin-theme-signal .signal-workspace {
        padding: 10px;
    }

    .admin-theme-signal .signal-topbar {
        top: 10px;
        grid-template-columns: auto minmax(0, 1fr);
    }

    .admin-theme-signal .signal-top-status,
    .admin-theme-signal .signal-top-actions {
        grid-column: 1 / -1;
        justify-content: flex-start;
    }

    .admin-theme-signal .page-head {
        grid-template-columns: 1fr;
    }

    .admin-theme-signal.signal-sidebar-collapsed .signal-brand-text,
    .admin-theme-signal.signal-sidebar-collapsed .signal-nav-label,
    .admin-theme-signal.signal-sidebar-collapsed .signal-identity span,
    .admin-theme-signal.signal-sidebar-collapsed .signal-identity small {
        display: grid;
    }

    .admin-theme-signal.signal-sidebar-collapsed .signal-nav-item {
        grid-template-columns: 36px minmax(0, 1fr) 14px;
        justify-content: stretch;
        padding: 0 10px;
    }
}

@media (max-width: 680px) {
    .admin-theme-signal .stat-grid,
    .admin-theme-signal .settings-grid,
    .admin-theme-signal .staff-fields,
    .admin-theme-signal .crawler-mini-grid {
        grid-template-columns: 1fr;
    }

    .admin-theme-signal .span-2 {
        grid-column: auto;
    }

    .admin-theme-signal .ad-filter-bar,
    .admin-theme-signal .member-filter-bar,
    .admin-theme-signal .recharge-filter-grid,
    .admin-theme-signal .crawler-mini-settings {
        grid-template-columns: 1fr;
    }

    .admin-theme-signal .signal-top-actions a,
    .admin-theme-signal .admin-actions > *,
    .admin-theme-signal .member-form-actions > *,
    .admin-theme-signal .settings-savebar > * {
        width: 100%;
    }

    .admin-theme-signal .update-progress-steps {
        grid-template-columns: 1fr;
    }

    .admin-theme-signal .signal-auth-frame {
        grid-template-columns: 1fr;
    }

    .admin-theme-signal .signal-auth-brand {
        min-height: 210px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .admin-theme-signal *,
    .admin-theme-signal *::before,
    .admin-theme-signal *::after {
        animation: none !important;
        transition: none !important;
    }
}

@keyframes sigScan {
    from { transform: translateX(-18%); }
    to { transform: translateX(18%); }
}

@keyframes sigPageIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes sigPanelIn {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes sigModalIn {
    from { opacity: 0; transform: translateY(14px) scale(.985); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes sigButtonSweep {
    from { transform: translateX(-120%); }
    to { transform: translateX(120%); }
}

@keyframes sigEdgeRun {
    from { transform: translateX(-45%); }
    to { transform: translateX(45%); }
}

@keyframes sigPulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.45); opacity: .72; }
}

/* Signal Console v3: structural overhaul. This block intentionally sits last so
   the new theme reads as its own interface instead of a skin over the classic UI. */
.admin-theme-signal {
    --sig-black: #070A0E;
    --sig-ink: #0D131A;
    --sig-steel: #1A2430;
    --sig-plate: #EEF2F6;
    --sig-paper: #FAFCFE;
    --sig-cyan: #00D7FF;
    --sig-cyan-soft: rgba(0, 215, 255, .16);
    --sig-lime: #35E092;
    --sig-red: #E8413A;
    --sig-yellow: #F2B94B;
    --sig-border: #AEB8C5;
    --sig-border-soft: #D7DEE7;
    --sig-text: #111923;
    --sig-muted: #667386;
    --sig-radius: 4px;
    --sig-shadow: 0 22px 46px rgba(8, 13, 19, .18);
    --sig-glow: 0 0 0 1px rgba(0, 215, 255, .16), 0 0 28px rgba(0, 215, 255, .16);
    background: #D8E0E8;
}

.admin-theme-signal .signal-shell {
    grid-template-columns: 296px minmax(0, 1fr);
    background:
        linear-gradient(90deg, rgba(10, 15, 21, .96) 0 296px, transparent 296px),
        radial-gradient(circle at 78% 10%, rgba(0, 215, 255, .18), transparent 260px),
        radial-gradient(circle at 100% 90%, rgba(232, 65, 58, .12), transparent 320px),
        linear-gradient(135deg, #E7ECF2 0%, #F8FAFC 42%, #CCD6E1 100%);
}

.admin-theme-signal .signal-atmosphere {
    position: fixed;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    overflow: hidden;
}

.admin-theme-signal .signal-grid-plane {
    position: absolute;
    inset: 0 0 0 296px;
    opacity: .42;
    background:
        linear-gradient(90deg, rgba(0, 215, 255, .12) 0 1px, transparent 1px 74px),
        linear-gradient(180deg, rgba(7, 10, 14, .10) 0 1px, transparent 1px 58px);
    mask-image: linear-gradient(180deg, transparent 0, #000 15%, #000 82%, transparent 100%);
}

.admin-theme-signal .signal-scan-beam {
    position: absolute;
    top: -20%;
    bottom: -20%;
    left: 38%;
    width: 130px;
    transform: rotate(18deg);
    opacity: .25;
    background: linear-gradient(90deg, transparent, rgba(0, 215, 255, .52), transparent);
    filter: blur(8px);
    animation: sigBeamDrift 8s linear infinite;
}

.admin-theme-signal .signal-node {
    position: absolute;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--sig-cyan);
    box-shadow: 0 0 18px rgba(0, 215, 255, .9), 0 0 46px rgba(0, 215, 255, .42);
}

.admin-theme-signal .signal-node-a { left: 42%; top: 18%; animation: sigNodeBlink 2.6s ease-in-out infinite; }
.admin-theme-signal .signal-node-b { right: 14%; top: 36%; animation: sigNodeBlink 3.1s ease-in-out infinite .6s; }
.admin-theme-signal .signal-node-c { left: 58%; bottom: 12%; animation: sigNodeBlink 2.2s ease-in-out infinite .3s; }

.admin-theme-signal .signal-rail {
    padding: 16px 12px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.08), transparent 18%),
        radial-gradient(circle at 22% 8%, rgba(0, 215, 255, .16), transparent 190px),
        linear-gradient(180deg, #080B10, #101822 55%, #05070A);
    border-right: 1px solid rgba(0, 215, 255, .24);
    box-shadow: 24px 0 80px rgba(7, 10, 14, .44);
}

.admin-theme-signal .signal-rail::before {
    width: 1px;
    left: auto;
    right: 0;
    background: linear-gradient(180deg, transparent, var(--sig-cyan), transparent 62%, var(--sig-red), transparent);
    box-shadow: 0 0 18px rgba(0, 215, 255, .7);
}

.admin-theme-signal .signal-brand {
    min-height: 78px;
    grid-template-columns: 58px minmax(0, 1fr);
    border-color: rgba(0, 215, 255, .32);
    background:
        linear-gradient(135deg, rgba(0, 215, 255, .16), rgba(255, 255, 255, .05) 42%, rgba(232, 65, 58, .08)),
        #0B1118;
    clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 0 100%);
}

.admin-theme-signal .signal-brand-mark {
    width: 58px;
    height: 52px;
    color: #061017;
    background: linear-gradient(180deg, #7AF0FF, #00D7FF);
    border: 0;
    border-radius: 3px;
    box-shadow: 0 0 30px rgba(0, 215, 255, .36);
    letter-spacing: 0;
}

.admin-theme-signal .signal-brand-text strong {
    font-size: 19px;
    letter-spacing: 0;
}

.admin-theme-signal .signal-brand-text em {
    color: #8EEBFF;
    letter-spacing: .2em;
}

.admin-theme-signal .signal-nav {
    gap: 8px;
}

.admin-theme-signal .signal-nav-item {
    min-height: 46px;
    grid-template-columns: 40px minmax(0, 1fr) 14px;
    padding: 0 11px 0 8px;
    color: #B6C2D1;
    border-color: rgba(170, 188, 205, .10);
    border-radius: 3px;
    background:
        linear-gradient(90deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
    clip-path: polygon(0 0, calc(100% - 11px) 0, 100% 11px, 100% 100%, 0 100%);
}

.admin-theme-signal .signal-nav-item::before {
    left: auto;
    right: 0;
    top: 8px;
    bottom: 8px;
    width: 2px;
    border-radius: 0;
}

.admin-theme-signal .signal-nav-icon {
    width: 40px;
    height: 34px;
    color: #90A0B3;
    border-color: rgba(0, 215, 255, .18);
    background: #070A0E;
    border-radius: 3px;
    transition: color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.admin-theme-signal .signal-nav-item:hover,
.admin-theme-signal .signal-nav-item.active {
    transform: translateX(0);
    color: #FFFFFF;
    border-color: rgba(0, 215, 255, .48);
    background:
        linear-gradient(90deg, rgba(0, 215, 255, .22), rgba(255,255,255,.06)),
        #111A24;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.035), 0 0 22px rgba(0, 215, 255, .13);
}

.admin-theme-signal .signal-nav-item:hover .signal-nav-icon,
.admin-theme-signal .signal-nav-item.active .signal-nav-icon {
    color: var(--sig-cyan);
    border-color: rgba(0, 215, 255, .58);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.05), 0 0 18px rgba(0, 215, 255, .20);
    transform: translateY(-1px);
}

.admin-theme-signal .signal-subnav {
    margin-left: 52px;
    border-left-color: rgba(0, 215, 255, .34);
}

.admin-theme-signal .signal-subnav a {
    border-radius: 2px;
}

.admin-theme-signal .signal-identity {
    border-color: rgba(0, 215, 255, .22);
    background:
        linear-gradient(90deg, rgba(0, 215, 255, .12), transparent),
        #0A1017;
    clip-path: polygon(0 0, calc(100% - 13px) 0, 100% 13px, 100% 100%, 0 100%);
}

.admin-theme-signal .signal-workspace {
    padding: 18px 20px 34px;
}

.admin-theme-signal .signal-main {
    width: min(1640px, 100%);
}

.admin-theme-signal .signal-topbar {
    top: 14px;
    grid-template-columns: auto minmax(180px, 1fr) minmax(100px, 190px) auto auto auto;
    min-height: 66px;
    padding: 10px 12px;
    color: #EAF6FF;
    border-color: rgba(0, 215, 255, .32);
    background:
        linear-gradient(90deg, rgba(0, 215, 255, .12), transparent 34%, rgba(232, 65, 58, .10)),
        rgba(7, 10, 14, .92);
    border-radius: 4px;
    box-shadow: 0 18px 54px rgba(7, 10, 14, .28), inset 0 1px 0 rgba(255,255,255,.08);
}

.admin-theme-signal .signal-topbar::before {
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--sig-cyan), transparent 58%, var(--sig-red), transparent);
}

.admin-theme-signal .signal-sidebar-toggle {
    width: 42px;
    height: 42px;
    color: var(--sig-cyan);
    background: #0B1118;
    border-radius: 3px;
}

.admin-theme-signal .signal-top-title span {
    color: #86A5B4;
}

.admin-theme-signal .signal-top-title strong {
    color: #F4FAFF;
    font-size: 20px;
}

.admin-theme-signal .signal-command-meter {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 5px;
    align-items: end;
    min-width: 116px;
    height: 32px;
    padding: 5px;
    border: 1px solid rgba(0, 215, 255, .20);
    background: rgba(255,255,255,.035);
}

.admin-theme-signal .signal-command-meter span {
    display: block;
    height: 100%;
    transform-origin: bottom;
    background: linear-gradient(180deg, var(--sig-cyan), rgba(0, 215, 255, .18));
    animation: sigMeter 1.7s ease-in-out infinite;
}

.admin-theme-signal .signal-command-meter span:nth-child(2) { animation-delay: .22s; }
.admin-theme-signal .signal-command-meter span:nth-child(3) { animation-delay: .38s; }
.admin-theme-signal .signal-command-meter span:nth-child(4) { animation-delay: .12s; }

.admin-theme-signal .signal-top-status {
    color: #CFFDE7;
    border-radius: 2px;
    border-color: rgba(53, 224, 146, .38);
    background: rgba(53, 224, 146, .12);
}

.admin-theme-signal .signal-top-actions a {
    min-height: 36px;
    color: #DCE9F5;
    background: rgba(255,255,255,.06);
    border-color: rgba(174,184,197,.24);
    border-radius: 3px;
    clip-path: polygon(0 0, calc(100% - 9px) 0, 100% 9px, 100% 100%, 0 100%);
}

.admin-theme-signal .signal-top-actions a:hover {
    color: #FFFFFF;
    border-color: rgba(0, 215, 255, .56);
    background: rgba(0, 215, 255, .12);
}

.admin-theme-signal .page-head {
    min-height: 118px;
    align-items: end;
    margin-bottom: 16px;
    padding: 20px 22px;
    color: #FFFFFF;
    border-color: rgba(0, 215, 255, .22);
    background:
        linear-gradient(90deg, rgba(0, 215, 255, .14), transparent 42%, rgba(232, 65, 58, .10)),
        radial-gradient(circle at 88% 16%, rgba(0, 215, 255, .18), transparent 240px),
        #0B1118;
    clip-path: polygon(0 0, calc(100% - 22px) 0, 100% 22px, 100% 100%, 0 100%);
}

.admin-theme-signal .page-head::before {
    left: 16px;
    top: 14px;
    bottom: auto;
    width: 46px;
    height: 2px;
    background: var(--sig-cyan);
}

.admin-theme-signal .page-head::after {
    opacity: .38;
    top: auto;
    bottom: 0;
}

.admin-theme-signal .page-head .pill {
    color: #071018;
    background: var(--sig-cyan);
    border: 0;
    border-radius: 2px;
}

.admin-theme-signal .page-head h1 {
    color: #FFFFFF;
    font-size: clamp(25px, 2.6vw, 38px);
    line-height: 1;
    text-shadow: 0 0 22px rgba(0, 215, 255, .22);
}

.admin-theme-signal .page-head p,
.admin-theme-signal .page-head .muted {
    max-width: 760px;
    color: #AAB8C8;
}

.admin-theme-signal .admin-actions > *,
.admin-theme-signal .page-head .admin-actions > * {
    min-height: 38px;
}

.admin-theme-signal .panel,
.admin-theme-signal .stat,
.admin-theme-signal .admin-card,
.admin-theme-signal .settings-card,
.admin-theme-signal .signal-panel,
.admin-theme-signal .publish-edit-summary > div,
.admin-theme-signal .user-summary-cards > div,
.admin-theme-signal .user-price-strip > div,
.admin-theme-signal .package-card,
.admin-theme-signal .plugin-card,
.admin-theme-signal .crawler-mini-card,
.admin-theme-signal .member-edit-card,
.admin-theme-signal .member-wallet-card,
.admin-theme-signal .staff-create-card,
.admin-theme-signal .staff-list-card {
    border-radius: 4px;
    border-color: rgba(126, 142, 160, .62);
    background:
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(243,247,251,.98));
    box-shadow: 0 18px 42px rgba(7, 10, 14, .12);
    clip-path: polygon(0 0, calc(100% - 14px) 0, 100% 14px, 100% 100%, 0 100%);
}

.admin-theme-signal .panel::before,
.admin-theme-signal .stat::before,
.admin-theme-signal .settings-card::before,
.admin-theme-signal .crawler-mini-card::before,
.admin-theme-signal .staff-create-card::before,
.admin-theme-signal .staff-list-card::before,
.admin-theme-signal .member-edit-card::before,
.admin-theme-signal .member-wallet-card::before,
.admin-theme-signal .signal-panel::before {
    width: 100%;
    height: 2px;
    bottom: auto;
    background: linear-gradient(90deg, var(--sig-cyan), transparent 34%, rgba(232, 65, 58, .55), transparent 68%, var(--sig-lime));
    opacity: .62;
}

.admin-theme-signal .panel:hover,
.admin-theme-signal .settings-card:hover,
.admin-theme-signal .crawler-mini-card:hover,
.admin-theme-signal .staff-create-card:hover,
.admin-theme-signal .staff-list-card:hover {
    box-shadow: 0 22px 54px rgba(7, 10, 14, .16), var(--sig-glow);
}

.admin-theme-signal .stat-grid {
    gap: 14px;
}

.admin-theme-signal .stat {
    min-height: 120px;
    padding: 18px 16px 16px;
    background:
        linear-gradient(145deg, rgba(255,255,255,.97), rgba(238,243,248,.98)),
        repeating-linear-gradient(90deg, rgba(0, 215, 255, .05) 0 1px, transparent 1px 10px);
}

.admin-theme-signal .stat::after {
    content: "";
    position: absolute;
    right: 14px;
    top: 16px;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(0, 215, 255, .34);
    background:
        linear-gradient(90deg, transparent 47%, rgba(0, 215, 255, .55) 48% 52%, transparent 53%),
        linear-gradient(180deg, transparent 47%, rgba(0, 215, 255, .55) 48% 52%, transparent 53%);
    opacity: .62;
}

.admin-theme-signal .stat span {
    color: #5B6777;
    letter-spacing: .06em;
}

.admin-theme-signal .stat strong {
    color: #0A0E13;
    font-size: clamp(26px, 2.2vw, 36px);
    font-family: Consolas, "Microsoft YaHei", monospace;
}

.admin-theme-signal .admin-table-tools,
.admin-theme-signal .settings-section-head,
.admin-theme-signal .settings-card-head,
.admin-theme-signal .crawler-mini-top,
.admin-theme-signal .compact-head {
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(174, 184, 197, .42);
}

.admin-theme-signal .admin-table-tools h2,
.admin-theme-signal .settings-section-head h2,
.admin-theme-signal .settings-card-head h2,
.admin-theme-signal .panel h2 {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 17px;
}

.admin-theme-signal .admin-table-tools h2::before,
.admin-theme-signal .settings-section-head h2::before,
.admin-theme-signal .settings-card-head h2::before,
.admin-theme-signal .panel h2::before {
    content: "";
    width: 8px;
    height: 18px;
    background: linear-gradient(180deg, var(--sig-cyan), rgba(0, 215, 255, .12));
    box-shadow: 0 0 12px rgba(0, 215, 255, .32);
}

.admin-theme-signal .primary-btn,
.admin-theme-signal .secondary-btn,
.admin-theme-signal .mini-btn,
.admin-theme-signal .link-btn,
.admin-theme-signal .ad-search-btn,
.admin-theme-signal .ad-danger-btn,
.admin-theme-signal .ad-edit-btn,
.admin-theme-signal .ad-time-btn,
.admin-theme-signal .ad-warn-btn,
.admin-theme-signal .ad-delete-btn,
.admin-theme-signal .level-add-btn,
.admin-theme-signal .level-delete-btn,
.admin-theme-signal .package-delete-btn,
.admin-theme-signal .crawler-action-btn,
.admin-theme-signal .crawler-modal-pages button,
.admin-theme-signal .feed-pager button,
.admin-theme-signal button[type="submit"] {
    min-height: 34px;
    border-radius: 3px;
    clip-path: polygon(0 0, calc(100% - 9px) 0, 100% 9px, 100% 100%, 0 100%);
}

.admin-theme-signal .primary-btn,
.admin-theme-signal .ad-search-btn,
.admin-theme-signal button[type="submit"]:not(.secondary-btn):not(.ad-danger-btn):not(.ad-delete-btn):not(.ad-warn-btn) {
    color: #061018;
    border-color: rgba(0, 215, 255, .72);
    background: linear-gradient(180deg, #77EEFF, #00D7FF 58%, #00A2C0);
}

.admin-theme-signal .secondary-btn,
.admin-theme-signal .mini-btn,
.admin-theme-signal .link-btn,
.admin-theme-signal .ad-edit-btn,
.admin-theme-signal .ad-time-btn,
.admin-theme-signal .feed-pager button,
.admin-theme-signal .crawler-modal-pages button {
    color: #13202C;
    background: linear-gradient(180deg, #FFFFFF, #E8EEF5);
}

.admin-theme-signal .ad-danger-btn,
.admin-theme-signal .ad-delete-btn,
.admin-theme-signal .level-delete-btn,
.admin-theme-signal .package-delete-btn,
.admin-theme-signal button.ad-danger-btn[type="submit"],
.admin-theme-signal button.ad-delete-btn[type="submit"] {
    color: #FFFFFF;
    border-color: rgba(232, 65, 58, .78);
    background: linear-gradient(180deg, #F05B55, #B8211D);
}

.admin-theme-signal .ad-warn-btn,
.admin-theme-signal button.ad-warn-btn[type="submit"] {
    color: #FFFFFF;
    border-color: rgba(242, 185, 75, .78);
    background: linear-gradient(180deg, #F4C25F, #A96500);
}

.admin-theme-signal input,
.admin-theme-signal select,
.admin-theme-signal textarea {
    min-height: 38px;
    border-radius: 3px;
    background:
        linear-gradient(180deg, rgba(255,255,255,1), rgba(248,250,252,1));
    border-color: #AEB8C5;
}

.admin-theme-signal input:focus,
.admin-theme-signal select:focus,
.admin-theme-signal textarea:focus {
    background: #FFFFFF;
}

.admin-theme-signal .ad-filter-bar,
.admin-theme-signal .member-filter-bar,
.admin-theme-signal .recharge-filter-grid,
.admin-theme-signal .crawler-mini-settings,
.admin-theme-signal .settings-subnav {
    border-radius: 4px;
    border-color: rgba(126, 142, 160, .58);
    background:
        linear-gradient(90deg, rgba(7, 10, 14, .04), transparent),
        #EEF3F8;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
}

.admin-theme-signal .settings-subnav {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    padding: 10px;
    margin-bottom: 14px;
}

.admin-theme-signal .settings-subnav a {
    min-height: 32px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    color: #2D3947;
    border: 1px solid transparent;
    text-decoration: none;
    font-size: 12px;
    font-weight: 900;
}

.admin-theme-signal .settings-subnav a.active,
.admin-theme-signal .settings-subnav a:hover {
    color: #061018;
    border-color: rgba(0, 215, 255, .45);
    background: rgba(0, 215, 255, .14);
}

.admin-theme-signal .ad-table-wrap,
.admin-theme-signal .data-table-wrap,
.admin-theme-signal .user-table-wrap,
.admin-theme-signal .crawler-modal-table {
    border-radius: 4px;
    border-color: #AEB8C5;
    box-shadow: 0 16px 32px rgba(7, 10, 14, .10);
}

.admin-theme-signal .ad-table,
.admin-theme-signal .data-table,
.admin-theme-signal .staff-table,
.admin-theme-signal .crawler-modal-table table,
.admin-theme-signal .recharge-card-table {
    background:
        linear-gradient(90deg, rgba(0, 215, 255, .025), transparent 18%),
        #FFFFFF;
}

.admin-theme-signal .ad-table th,
.admin-theme-signal .data-table th,
.admin-theme-signal .staff-table th,
.admin-theme-signal .crawler-modal-table th,
.admin-theme-signal .recharge-card-table th {
    color: #DCE9F5;
    background:
        linear-gradient(180deg, #172333, #0B1118);
    border-bottom-color: rgba(0, 215, 255, .32);
}

.admin-theme-signal .ad-table td,
.admin-theme-signal .data-table td,
.admin-theme-signal .staff-table td,
.admin-theme-signal .crawler-modal-table td,
.admin-theme-signal .recharge-card-table td {
    border-bottom-color: #E1E7EF;
}

.admin-theme-signal .ad-table tbody tr:hover td,
.admin-theme-signal .data-table tbody tr:hover td,
.admin-theme-signal .staff-table tbody tr:hover td,
.admin-theme-signal .crawler-modal-table tbody tr:hover td,
.admin-theme-signal .recharge-card-table tbody tr:hover td {
    background:
        linear-gradient(90deg, rgba(0, 215, 255, .12), transparent 45%),
        #F4FCFF;
}

.admin-theme-signal .ad-table tbody tr:hover td:first-child,
.admin-theme-signal .data-table tbody tr:hover td:first-child,
.admin-theme-signal .staff-table tbody tr:hover td:first-child {
    box-shadow: inset 4px 0 0 var(--sig-cyan);
}

.admin-theme-signal .ad-state,
.admin-theme-signal .ad-type-badge,
.admin-theme-signal .status-chip,
.admin-theme-signal .crawler-mini-state,
.admin-theme-signal .member-state,
.admin-theme-signal .amount-badge,
.admin-theme-signal .log-action-badge,
.admin-theme-signal .balance-status {
    border-radius: 2px;
    min-height: 24px;
    clip-path: polygon(0 0, calc(100% - 7px) 0, 100% 7px, 100% 100%, 0 100%);
}

.admin-theme-signal .feed-item,
.admin-theme-signal .user-log-item,
.admin-theme-signal .message-item,
.admin-theme-signal .member-message-item {
    border-radius: 3px;
    clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 0 100%);
}

.admin-theme-signal .crawler-mini-card {
    min-height: 390px;
}

.admin-theme-signal .crawler-mini-card::after {
    top: auto;
    bottom: 0;
    opacity: .45;
}

.admin-theme-signal .crawler-dispatch-note {
    border-radius: 3px;
    border: 1px solid rgba(0, 215, 255, .18);
    background: rgba(0, 215, 255, .08);
}

.admin-theme-signal .crawler-mini-metrics div {
    border-radius: 3px;
    background:
        linear-gradient(180deg, #0F1721, #090D12);
    color: #DCE9F5;
    border-color: rgba(0, 215, 255, .20);
}

.admin-theme-signal .crawler-mini-metrics strong {
    color: var(--sig-cyan);
}

.admin-theme-signal .ad-time-modal,
.admin-theme-signal .crawler-modal,
.admin-theme-signal .template-modal {
    backdrop-filter: blur(8px);
    background:
        radial-gradient(circle at 50% 20%, rgba(0, 215, 255, .16), transparent 320px),
        rgba(4, 7, 10, .72);
}

.admin-theme-signal .ad-time-dialog,
.admin-theme-signal .crawler-modal-card,
.admin-theme-signal .template-modal-card {
    border-radius: 4px;
    color: #111923;
    border-color: rgba(0, 215, 255, .36);
    clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 0 100%);
    box-shadow: 0 28px 90px rgba(0,0,0,.42), 0 0 0 1px rgba(0, 215, 255, .14);
}

.admin-theme-signal .ad-time-dialog::before,
.admin-theme-signal .crawler-modal-card::before,
.admin-theme-signal .template-modal-card::before {
    height: 3px;
    background: linear-gradient(90deg, var(--sig-cyan), transparent 35%, var(--sig-red), transparent 70%, var(--sig-lime));
}

.admin-theme-signal .ad-time-close,
.admin-theme-signal .crawler-modal-head button[data-crawler-close],
.admin-theme-signal .template-modal-close {
    border-radius: 3px;
}

.admin-theme-signal .signal-auth-stage {
    background:
        radial-gradient(circle at 22% 18%, rgba(0, 215, 255, .20), transparent 270px),
        radial-gradient(circle at 82% 84%, rgba(232, 65, 58, .14), transparent 320px),
        #080B10;
}

.admin-theme-signal .signal-auth-frame {
    border-radius: 4px;
    border-color: rgba(0, 215, 255, .28);
    clip-path: polygon(0 0, calc(100% - 24px) 0, 100% 24px, 100% 100%, 0 100%);
}

.admin-theme-signal .signal-auth-brand {
    background:
        linear-gradient(160deg, rgba(0, 215, 255, .18), transparent 42%, rgba(232, 65, 58, .12)),
        #0B1118;
}

.admin-theme-signal .signal-auth-brand span {
    border-radius: 3px;
}

.admin-theme-signal .auth-card {
    background: transparent;
}

.admin-theme-signal .auth-brand-mark {
    display: none;
}

.admin-theme-signal .signal-booting .signal-page > *,
.admin-theme-signal .signal-booting .page-head,
.admin-theme-signal .signal-booting .panel,
.admin-theme-signal .signal-booting .stat,
.admin-theme-signal .signal-booting .settings-card,
.admin-theme-signal .signal-booting .crawler-mini-card,
.admin-theme-signal .signal-booting .staff-create-card,
.admin-theme-signal .signal-booting .staff-list-card {
    animation: sigDeckIn .48s cubic-bezier(.2, .8, .2, 1) both;
    animation-delay: calc(var(--sig-delay, 0) * 36ms);
}

.admin-theme-signal .signal-ripple {
    position: absolute;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    pointer-events: none;
    transform: translate(-50%, -50%);
    background: rgba(255,255,255,.72);
    animation: sigRipple .56s ease-out forwards;
}

.admin-theme-signal .signal-dashboard-hero {
    min-height: 188px;
    padding-right: min(360px, 26vw);
}

.admin-theme-signal .signal-dashboard-hero .admin-actions {
    position: relative;
    z-index: 2;
}

.admin-theme-signal .signal-hero-radar {
    position: absolute;
    right: 34px;
    top: 50%;
    width: 170px;
    height: 170px;
    transform: translateY(-50%);
    opacity: .92;
    pointer-events: none;
}

.admin-theme-signal .radar-ring,
.admin-theme-signal .radar-sweep,
.admin-theme-signal .radar-core {
    position: absolute;
    inset: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
}

.admin-theme-signal .radar-ring {
    border: 1px solid rgba(0, 215, 255, .38);
    box-shadow: inset 0 0 24px rgba(0, 215, 255, .06), 0 0 18px rgba(0, 215, 255, .10);
}

.admin-theme-signal .ring-a { width: 54px; height: 54px; }
.admin-theme-signal .ring-b { width: 104px; height: 104px; }
.admin-theme-signal .ring-c { width: 154px; height: 154px; }

.admin-theme-signal .radar-sweep {
    width: 154px;
    height: 154px;
    background: conic-gradient(from 0deg, rgba(0, 215, 255, .38), transparent 34deg, transparent);
    animation: sigRadar 2.8s linear infinite;
    mask-image: radial-gradient(circle, transparent 0 12px, #000 13px);
}

.admin-theme-signal .radar-core {
    width: 12px;
    height: 12px;
    background: var(--sig-cyan);
    box-shadow: 0 0 22px rgba(0, 215, 255, .9);
}

.admin-theme-signal .signal-stat-online::after,
.admin-theme-signal .signal-stat-offline::after,
.admin-theme-signal .signal-stat-license::after,
.admin-theme-signal .signal-stat-money::after {
    content: "";
    position: absolute;
    right: 14px;
    bottom: 14px;
    width: 64px;
    height: 22px;
    border-bottom: 2px solid rgba(0, 215, 255, .34);
    background:
        linear-gradient(135deg, transparent 0 12px, rgba(0, 215, 255, .38) 13px 15px, transparent 16px 28px, rgba(0, 215, 255, .28) 29px 31px, transparent 32px);
    opacity: .82;
}

.admin-theme-signal .signal-stat-offline::after {
    border-bottom-color: rgba(232, 65, 58, .42);
    background:
        linear-gradient(135deg, transparent 0 12px, rgba(232, 65, 58, .42) 13px 15px, transparent 16px 28px, rgba(232, 65, 58, .28) 29px 31px, transparent 32px);
}

.admin-theme-signal .signal-stat-money::after {
    border-bottom-color: rgba(53, 224, 146, .42);
    background:
        linear-gradient(135deg, transparent 0 12px, rgba(53, 224, 146, .42) 13px 15px, transparent 16px 28px, rgba(53, 224, 146, .28) 29px 31px, transparent 32px);
}

.admin-theme-signal .dashboard-console-grid {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
    align-items: start;
}

.admin-theme-signal .dashboard-console-grid .program-info-panel {
    grid-column: 1 / -1;
}

.admin-theme-signal .program-info-list {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
}

.admin-theme-signal .program-info-list > div {
    display: grid;
    gap: 6px;
    min-height: 78px;
    padding: 11px;
    border: 1px solid rgba(174, 184, 197, .54);
    background: #F8FBFE;
}

.admin-theme-signal .program-info-list dt {
    color: var(--sig-muted);
    font-size: 11px;
    font-weight: 900;
}

.admin-theme-signal .program-info-list dd {
    margin: 0;
    color: var(--sig-text);
    font-size: 12px;
    line-height: 1.45;
}

@media (max-width: 1180px) {
    .admin-theme-signal .signal-dashboard-hero {
        padding-right: 22px;
    }

    .admin-theme-signal .signal-hero-radar {
        display: none;
    }

    .admin-theme-signal .program-info-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .admin-theme-signal .program-info-list {
        grid-template-columns: 1fr;
    }
}

.admin-theme-signal .signal-clock {
    display: inline-grid;
    gap: 1px;
    padding: 4px 8px;
    color: #DCE9F5;
    border: 1px solid rgba(0, 215, 255, .20);
    background: rgba(255,255,255,.045);
    font-family: Consolas, "Microsoft YaHei", monospace;
    font-size: 11px;
    line-height: 1.15;
    white-space: nowrap;
}

.admin-theme-signal .signal-clock strong {
    color: var(--sig-cyan);
    font-size: 14px;
}

@media (max-width: 1180px) {
    .admin-theme-signal .signal-topbar {
        grid-template-columns: auto minmax(0, 1fr) auto auto;
    }

    .admin-theme-signal .signal-command-meter,
    .admin-theme-signal .signal-clock {
        display: none;
    }
}

@media (max-width: 900px) {
    .admin-theme-signal .signal-shell,
    .admin-theme-signal.signal-sidebar-collapsed .signal-shell {
        background:
            radial-gradient(circle at 80% 0%, rgba(0, 215, 255, .16), transparent 240px),
            linear-gradient(135deg, #E7ECF2, #F8FAFC);
    }

    .admin-theme-signal .signal-grid-plane {
        left: 0;
    }

    .admin-theme-signal .page-head {
        min-height: auto;
        padding: 17px;
    }
}

@keyframes sigBeamDrift {
    from { transform: translateX(-34vw) rotate(18deg); }
    to { transform: translateX(68vw) rotate(18deg); }
}

@keyframes sigNodeBlink {
    0%, 100% { opacity: .35; transform: scale(.75); }
    50% { opacity: 1; transform: scale(1.25); }
}

@keyframes sigMeter {
    0%, 100% { transform: scaleY(.32); opacity: .52; }
    45% { transform: scaleY(1); opacity: 1; }
}

@keyframes sigDeckIn {
    from { opacity: 0; transform: translateY(14px) scale(.992); filter: saturate(.8); }
    to { opacity: 1; transform: translateY(0) scale(1); filter: saturate(1); }
}

@keyframes sigRipple {
    from { opacity: .5; transform: translate(-50%, -50%) scale(1); }
    to { opacity: 0; transform: translate(-50%, -50%) scale(18); }
}

@keyframes sigRadar {
    from { transform: translate(-50%, -50%) rotate(0deg); }
    to { transform: translate(-50%, -50%) rotate(360deg); }
}

/* Signal Console v4: silver-black operations rebuild */
.admin-theme-signal {
    --sig-v4-ink: #070A0E;
    --sig-v4-ink-2: #101722;
    --sig-v4-panel: rgba(246, 249, 252, .965);
    --sig-v4-panel-2: rgba(236, 242, 248, .98);
    --sig-v4-line: rgba(125, 146, 166, .54);
    --sig-v4-line-hot: rgba(0, 215, 255, .48);
    --sig-v4-text: #101722;
    --sig-v4-muted: #5E6D7F;
    --sig-v4-cyan: #00D7FF;
    --sig-v4-green: #35E092;
    --sig-v4-red: #E8413A;
    --sig-v4-amber: #F2B94B;
    --sig-v4-shadow: 0 18px 48px rgba(7, 10, 14, .17), 0 1px 0 rgba(255, 255, 255, .74) inset;
    --sig-v4-radius: 6px;
    color: var(--sig-v4-text);
}

.admin-theme-signal .signal-shell {
    display: block;
    min-height: 100dvh;
    overflow-x: clip;
    background:
        linear-gradient(90deg, rgba(7, 10, 14, .98) 0 296px, transparent 296px),
        radial-gradient(circle at 72% 7%, rgba(0, 215, 255, .16), transparent 285px),
        radial-gradient(circle at 96% 84%, rgba(232, 65, 58, .10), transparent 340px),
        linear-gradient(135deg, #DDE5EF 0%, #F7FAFD 47%, #C8D3E0 100%);
}

.admin-theme-signal .signal-grid-plane {
    inset: 0 0 0 296px;
}

.admin-theme-signal .signal-rail {
    position: fixed;
    z-index: 80;
    left: 0;
    top: 0;
    bottom: 0;
    width: 296px;
    height: 100dvh;
    padding: 16px 12px;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(0, 215, 255, .42) rgba(255, 255, 255, .04);
}

.admin-theme-signal .signal-nav {
    flex: 1 1 auto;
    min-height: 0;
}

.admin-theme-signal .signal-identity {
    flex: 0 0 auto;
    margin-top: auto;
}

.admin-theme-signal .signal-workspace {
    min-width: 0;
    margin-left: 296px;
    padding: 18px 20px 34px;
    transition: margin-left .24s ease;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-shell {
    background:
        linear-gradient(90deg, rgba(7, 10, 14, .98) 0 86px, transparent 86px),
        radial-gradient(circle at 72% 7%, rgba(0, 215, 255, .16), transparent 285px),
        radial-gradient(circle at 96% 84%, rgba(232, 65, 58, .10), transparent 340px),
        linear-gradient(135deg, #DDE5EF 0%, #F7FAFD 47%, #C8D3E0 100%);
}

.admin-theme-signal.signal-sidebar-collapsed .signal-grid-plane {
    left: 86px;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-rail {
    width: 86px;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-workspace {
    margin-left: 86px;
}

.admin-theme-signal .signal-topbar {
    position: sticky;
    top: 14px;
    z-index: 90;
    border-radius: 6px;
    overflow: visible;
}

.admin-theme-signal .signal-main {
    width: min(1660px, 100%);
}

.admin-theme-signal .page-head,
.admin-theme-signal .panel,
.admin-theme-signal .stat,
.admin-theme-signal .admin-card,
.admin-theme-signal .settings-card,
.admin-theme-signal .signal-panel,
.admin-theme-signal .package-card,
.admin-theme-signal .plugin-card,
.admin-theme-signal .crawler-mini-card,
.admin-theme-signal .member-edit-card,
.admin-theme-signal .member-wallet-card,
.admin-theme-signal .staff-create-card,
.admin-theme-signal .staff-list-card,
.admin-theme-signal .publish-edit-summary > div,
.admin-theme-signal .publish-create-summary,
.admin-theme-signal .user-summary-cards > div,
.admin-theme-signal .user-price-strip > div,
.admin-theme-signal .program-info-list > div,
.admin-theme-signal .crawler-mini-metrics div,
.admin-theme-signal .feed-item,
.admin-theme-signal .user-log-item,
.admin-theme-signal .message-item,
.admin-theme-signal .member-message-item,
.admin-theme-signal .template-card,
.admin-theme-signal .template-cloud-empty,
.admin-theme-signal .settings-color-card,
.admin-theme-signal .level-row,
.admin-theme-signal .recharge-card-block {
    position: relative;
    border: 1px solid var(--sig-v4-line);
    border-radius: var(--sig-v4-radius);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .82), rgba(231, 238, 245, .82)),
        var(--sig-v4-panel);
    box-shadow: var(--sig-v4-shadow);
    overflow: hidden;
}

.admin-theme-signal .page-head::before,
.admin-theme-signal .panel::before,
.admin-theme-signal .stat::before,
.admin-theme-signal .admin-card::before,
.admin-theme-signal .settings-card::before,
.admin-theme-signal .signal-panel::before,
.admin-theme-signal .package-card::before,
.admin-theme-signal .plugin-card::before,
.admin-theme-signal .crawler-mini-card::before,
.admin-theme-signal .member-edit-card::before,
.admin-theme-signal .member-wallet-card::before,
.admin-theme-signal .staff-create-card::before,
.admin-theme-signal .staff-list-card::before,
.admin-theme-signal .publish-edit-summary > div::before,
.admin-theme-signal .publish-create-summary::before,
.admin-theme-signal .user-summary-cards > div::before,
.admin-theme-signal .user-price-strip > div::before,
.admin-theme-signal .program-info-list > div::before,
.admin-theme-signal .crawler-mini-metrics div::before,
.admin-theme-signal .feed-item::before,
.admin-theme-signal .user-log-item::before,
.admin-theme-signal .message-item::before,
.admin-theme-signal .member-message-item::before,
.admin-theme-signal .template-card::before,
.admin-theme-signal .template-cloud-empty::before,
.admin-theme-signal .settings-color-card::before,
.admin-theme-signal .level-row::before,
.admin-theme-signal .recharge-card-block::before,
.admin-theme-signal .signal-metric-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: linear-gradient(180deg, var(--sig-v4-cyan), transparent 42%, var(--sig-v4-green));
    box-shadow: 0 0 18px rgba(0, 215, 255, .42);
}

.admin-theme-signal .page-head::after,
.admin-theme-signal .panel::after,
.admin-theme-signal .settings-card::after,
.admin-theme-signal .signal-panel::after,
.admin-theme-signal .template-card::after,
.admin-theme-signal .signal-metric-card::after {
    content: "";
    position: absolute;
    left: -22%;
    right: -22%;
    top: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 215, 255, .72), transparent);
    transform: translateX(-54%);
    opacity: 0;
    pointer-events: none;
}

.admin-theme-signal .page-head:hover::after,
.admin-theme-signal .panel:hover::after,
.admin-theme-signal .settings-card:hover::after,
.admin-theme-signal .signal-panel:hover::after,
.admin-theme-signal .template-card:hover::after,
.admin-theme-signal .signal-metric-card:hover::after {
    opacity: 1;
    animation: sigV4EdgeSweep 1.7s ease;
}

.admin-theme-signal .panel,
.admin-theme-signal .settings-card,
.admin-theme-signal .admin-card,
.admin-theme-signal .plugin-card,
.admin-theme-signal .crawler-mini-card,
.admin-theme-signal .member-edit-card,
.admin-theme-signal .member-wallet-card,
.admin-theme-signal .staff-create-card,
.admin-theme-signal .staff-list-card,
.admin-theme-signal .signal-panel {
    padding: 18px;
}

.admin-theme-signal .signal-page > *,
.admin-theme-signal .page-head,
.admin-theme-signal .panel,
.admin-theme-signal .settings-card,
.admin-theme-signal .signal-metric-card,
.admin-theme-signal [data-signal-module] {
    animation: sigV4ModuleIn .46s cubic-bezier(.2, .8, .2, 1) both;
    animation-delay: calc(var(--sig-delay, 0) * 34ms);
}

.admin-theme-signal .signal-metric-deck {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin: 0 0 16px;
}

.admin-theme-signal .signal-metric-card {
    position: relative;
    min-height: 176px;
    padding: 16px 16px 14px 20px;
    color: #EAF6FF;
    border: 1px solid rgba(0, 215, 255, .28);
    border-radius: 6px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .08), transparent 34%),
        radial-gradient(circle at 88% 16%, rgba(0, 215, 255, .24), transparent 130px),
        linear-gradient(180deg, #101722, #070A0E);
    box-shadow: 0 18px 48px rgba(7, 10, 14, .28), inset 0 1px 0 rgba(255, 255, 255, .08);
    overflow: hidden;
}

.admin-theme-signal .signal-metric-card::before {
    width: 3px;
}

.admin-theme-signal .signal-metric-card > * {
    position: relative;
    z-index: 1;
}

.admin-theme-signal .signal-metric-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
}

.admin-theme-signal .signal-metric-kicker {
    color: #93A9BC;
    font-family: Consolas, "Microsoft YaHei", monospace;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
}

.admin-theme-signal .signal-metric-node {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: var(--sig-v4-cyan);
    box-shadow: 0 0 0 5px rgba(0, 215, 255, .09), 0 0 20px rgba(0, 215, 255, .72);
    animation: sigV4NodePulse 1.8s ease-in-out infinite;
}

.admin-theme-signal .signal-metric-main {
    display: grid;
    gap: 5px;
    min-height: 74px;
}

.admin-theme-signal .signal-metric-main strong {
    color: #FFFFFF;
    font-family: Consolas, "Microsoft YaHei", monospace;
    font-size: clamp(32px, 4vw, 48px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0;
    text-shadow: 0 0 22px rgba(0, 215, 255, .28);
}

.admin-theme-signal .signal-metric-license .signal-metric-main strong {
    font-family: "Microsoft YaHei", Arial, sans-serif;
    font-size: clamp(22px, 2.4vw, 32px);
}

.admin-theme-signal .signal-metric-main span,
.admin-theme-signal .signal-metric-card p {
    color: #A9B8C8;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.45;
}

.admin-theme-signal .signal-metric-card p {
    margin: 14px 0 0;
}

.admin-theme-signal .signal-metric-wave {
    display: flex;
    align-items: flex-end;
    gap: 5px;
    height: 28px;
    margin-top: 10px;
}

.admin-theme-signal .signal-metric-wave i {
    width: 18%;
    min-width: 12px;
    height: 42%;
    border-radius: 2px 2px 0 0;
    background: linear-gradient(180deg, rgba(0, 215, 255, .82), rgba(0, 215, 255, .16));
    animation: sigV4Bars 1.5s ease-in-out infinite;
}

.admin-theme-signal .signal-metric-wave i:nth-child(2) { animation-delay: .12s; }
.admin-theme-signal .signal-metric-wave i:nth-child(3) { animation-delay: .24s; }
.admin-theme-signal .signal-metric-wave i:nth-child(4) { animation-delay: .36s; }
.admin-theme-signal .signal-metric-wave i:nth-child(5) { animation-delay: .48s; }

.admin-theme-signal .signal-metric-offline {
    border-color: rgba(232, 65, 58, .32);
}

.admin-theme-signal .signal-metric-offline::before {
    background: linear-gradient(180deg, var(--sig-v4-red), transparent);
}

.admin-theme-signal .signal-metric-offline .signal-metric-node,
.admin-theme-signal .signal-metric-offline .signal-metric-wave i {
    background: linear-gradient(180deg, rgba(232, 65, 58, .9), rgba(232, 65, 58, .18));
    box-shadow: 0 0 0 5px rgba(232, 65, 58, .08), 0 0 20px rgba(232, 65, 58, .52);
}

.admin-theme-signal .signal-metric-license {
    border-color: rgba(242, 185, 75, .38);
}

.admin-theme-signal .signal-metric-license::before {
    background: linear-gradient(180deg, var(--sig-v4-amber), transparent 44%, var(--sig-v4-cyan));
}

.admin-theme-signal .signal-metric-license-line {
    height: 8px;
    margin: 13px 0 16px;
    border: 1px solid rgba(242, 185, 75, .24);
    background: rgba(255, 255, 255, .06);
    overflow: hidden;
}

.admin-theme-signal .signal-metric-license-line span {
    display: block;
    width: 72%;
    height: 100%;
    background: linear-gradient(90deg, rgba(242, 185, 75, .2), rgba(242, 185, 75, .9), rgba(0, 215, 255, .45));
    animation: sigV4LicenseLine 2.2s ease-in-out infinite;
}

.admin-theme-signal .signal-metric-money::before {
    background: linear-gradient(180deg, var(--sig-v4-green), transparent 48%, var(--sig-v4-cyan));
}

.admin-theme-signal .signal-metric-money .signal-metric-node,
.admin-theme-signal .signal-metric-money .signal-metric-wave i {
    background: linear-gradient(180deg, rgba(53, 224, 146, .9), rgba(53, 224, 146, .16));
    box-shadow: 0 0 0 5px rgba(53, 224, 146, .08), 0 0 20px rgba(53, 224, 146, .52);
}

.admin-theme-signal .license-action-btn {
    width: fit-content;
    min-height: 34px;
    padding: 0 14px;
    border: 1px solid rgba(242, 185, 75, .46);
    border-radius: 4px;
    color: #FFF7DB;
    background: linear-gradient(180deg, rgba(242, 185, 75, .28), rgba(242, 185, 75, .12));
    font-weight: 900;
    cursor: pointer;
}

.admin-theme-signal .license-action-btn:disabled {
    cursor: default;
    opacity: .72;
}

.admin-theme-signal .ad-manager-panel {
    padding: 18px;
}

.admin-theme-signal .ad-filter-bar {
    display: grid;
    grid-template-columns: repeat(6, minmax(128px, 1fr)) auto;
    gap: 12px;
    align-items: end;
    padding: 12px;
    margin-bottom: 14px;
    border: 1px solid rgba(125, 146, 166, .35);
    border-radius: 6px;
    background: rgba(12, 18, 26, .045);
}

.admin-theme-signal .ad-filter-bar label {
    display: grid;
    gap: 6px;
    margin: 0;
}

.admin-theme-signal .ad-filter-bar label span {
    color: var(--sig-v4-muted);
    font-size: 11px;
    font-weight: 900;
}

.admin-theme-signal .ad-filter-bar input,
.admin-theme-signal .ad-filter-bar select {
    min-height: 36px;
}

.admin-theme-signal .ad-search-btn {
    min-height: 36px;
    padding-inline: 18px;
}

.admin-theme-signal .ad-list-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    margin-bottom: 12px;
    border: 1px solid rgba(125, 146, 166, .35);
    border-radius: 6px;
    background:
        linear-gradient(90deg, rgba(7, 10, 14, .05), transparent),
        rgba(255, 255, 255, .42);
}

.admin-theme-signal .ad-list-toolbar form {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
}

.admin-theme-signal .ad-list-toolbar > span {
    margin-left: auto;
    color: var(--sig-v4-muted);
    font-size: 12px;
    font-weight: 900;
}

.admin-theme-signal .ad-table-wrap {
    max-height: calc(100dvh - 330px);
    min-height: 340px;
    overflow: auto;
    border: 1px solid rgba(125, 146, 166, .42);
    border-radius: 6px;
    background: rgba(255, 255, 255, .58);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72);
}

.admin-theme-signal .ad-manager-table {
    min-width: 1380px;
    border-collapse: separate;
    border-spacing: 0;
}

.admin-theme-signal .ad-manager-table th {
    position: sticky;
    top: 0;
    z-index: 3;
    color: #DCEBFA;
    background: #111923;
    box-shadow: inset 0 -1px 0 rgba(0, 215, 255, .24);
}

.admin-theme-signal .ad-manager-table th:last-child {
    z-index: 5;
}

.admin-theme-signal .ad-manager-table td {
    vertical-align: middle;
}

.admin-theme-signal .ad-manager-table th:last-child,
.admin-theme-signal .ad-manager-table td:last-child {
    position: sticky;
    right: 0;
    min-width: 178px;
    background-clip: padding-box;
}

.admin-theme-signal .ad-manager-table td:last-child {
    background:
        linear-gradient(90deg, rgba(221, 229, 239, 0), rgba(246, 249, 252, .98) 18%),
        #F6F9FC;
    box-shadow: -12px 0 22px rgba(7, 10, 14, .08);
}

.admin-theme-signal .ad-manager-table th:last-child {
    background:
        linear-gradient(90deg, rgba(17, 25, 35, .5), #111923 20%),
        #111923;
}

.admin-theme-signal .ad-row-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(68px, 1fr));
    gap: 7px;
    align-items: stretch;
    min-width: 170px;
}

.admin-theme-signal .ad-row-actions form {
    display: contents;
    margin: 0;
}

.admin-theme-signal .ad-row-actions a,
.admin-theme-signal .ad-row-actions button {
    width: 100%;
    min-height: 31px;
    justify-content: center;
    padding-inline: 8px;
    font-size: 12px;
}

.admin-theme-signal .ad-type-list {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.admin-theme-signal .ad-toggle {
    min-width: 48px;
    height: 28px;
    padding: 0 7px;
    gap: 5px;
    border-radius: 999px;
    color: #6B7788;
    border: 1px solid rgba(125, 146, 166, .42);
    background: linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(228, 235, 242, .92));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.75);
}

.admin-theme-signal .ad-toggle span {
    width: 12px;
    height: 12px;
    background: #95A2B1;
    box-shadow: none;
}

.admin-theme-signal .ad-toggle.on {
    color: #05391F;
    border-color: rgba(53, 224, 146, .48);
    background: linear-gradient(180deg, rgba(53, 224, 146, .34), rgba(53, 224, 146, .16));
}

.admin-theme-signal .ad-toggle.on span {
    background: var(--sig-v4-green);
    box-shadow: 0 0 14px rgba(53, 224, 146, .58);
}

.admin-theme-signal .ad-toggle.is-disabled {
    opacity: .52;
}

.admin-theme-signal .template-modal,
.admin-theme-signal .ad-time-modal,
.admin-theme-signal .crawler-modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 10020 !important;
    align-items: center;
    justify-content: center;
    padding: 76px 24px 24px !important;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    backdrop-filter: blur(10px);
    background:
        radial-gradient(circle at 52% 16%, rgba(0, 215, 255, .18), transparent 320px),
        rgba(4, 7, 10, .76) !important;
}

.admin-theme-signal .template-modal.open {
    display: flex !important;
}

.admin-theme-signal .ad-time-modal:not([hidden]),
.admin-theme-signal .crawler-modal:not([hidden]) {
    display: flex;
}

.admin-theme-signal .template-modal-card,
.admin-theme-signal .ad-time-dialog,
.admin-theme-signal .crawler-modal-card {
    position: relative;
    width: min(1080px, calc(100vw - 48px));
    max-height: calc(100dvh - 104px);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(0, 215, 255, .42);
    border-radius: 6px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(235, 241, 247, .98));
    box-shadow: 0 28px 100px rgba(0, 0, 0, .46), 0 0 0 1px rgba(0, 215, 255, .16);
    clip-path: none;
}

.admin-theme-signal .ad-time-dialog {
    width: min(620px, calc(100vw - 48px));
    padding: 22px;
    overflow-y: auto;
}

.admin-theme-signal .crawler-modal-card {
    width: min(1180px, calc(100vw - 48px));
}

.admin-theme-signal .template-modal-card > form {
    min-height: 0;
    max-height: none;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

.admin-theme-signal .template-modal-head,
.admin-theme-signal .crawler-modal-head {
    position: sticky;
    top: 0;
    z-index: 4;
    flex: 0 0 auto;
    border-bottom: 1px solid rgba(125, 146, 166, .35);
    background:
        linear-gradient(90deg, rgba(0, 215, 255, .10), transparent),
        #F7FAFD;
}

.admin-theme-signal .template-modal-body,
.admin-theme-signal .crawler-modal-body,
.admin-theme-signal .crawler-modal-table {
    min-height: 0;
    flex: 1 1 auto;
    overflow: auto;
}

.admin-theme-signal .template-modal-actions {
    position: sticky;
    bottom: 0;
    z-index: 4;
    flex: 0 0 auto;
    margin: 0 -22px -24px;
    border-top: 1px solid rgba(125, 146, 166, .35);
    background: #F7FAFD;
}

.admin-theme-signal .template-modal-close,
.admin-theme-signal .ad-time-close,
.admin-theme-signal .crawler-modal-head button[data-crawler-close] {
    position: relative;
    z-index: 6;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    min-height: 36px;
    border: 1px solid rgba(125, 146, 166, .36);
    border-radius: 4px;
    color: #102033;
    background: #FFFFFF;
    box-shadow: 0 8px 18px rgba(7, 10, 14, .08);
}

.admin-theme-signal .template-modal-section {
    border-color: rgba(125, 146, 166, .34);
    border-radius: 6px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .74), rgba(238, 244, 249, .74));
}

.admin-theme-signal .signal-auth-stage {
    min-height: 100dvh;
    display: grid;
    place-items: center;
    padding: 28px;
    background:
        radial-gradient(circle at 24% 18%, rgba(0, 215, 255, .20), transparent 280px),
        radial-gradient(circle at 78% 84%, rgba(232, 65, 58, .15), transparent 330px),
        linear-gradient(135deg, #05070A, #111923 54%, #080B10);
}

.admin-theme-signal .signal-auth-frame {
    width: min(1040px, 100%);
    min-height: 620px;
    grid-template-columns: minmax(300px, .86fr) minmax(360px, 1fr);
    border: 1px solid rgba(0, 215, 255, .28);
    border-radius: 8px;
    background: rgba(255, 255, 255, .05);
    box-shadow: 0 28px 90px rgba(0, 0, 0, .38);
    overflow: hidden;
}

.admin-theme-signal .signal-auth-brand {
    position: relative;
    padding: 42px;
    align-content: end;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .05), transparent 38%),
        radial-gradient(circle at 28% 18%, rgba(0, 215, 255, .24), transparent 220px),
        linear-gradient(180deg, #111923, #05070A);
}

.admin-theme-signal .signal-auth-brand::after {
    content: "";
    position: absolute;
    inset: 30px;
    border: 1px solid rgba(0, 215, 255, .18);
    background:
        linear-gradient(90deg, rgba(0, 215, 255, .08) 0 1px, transparent 1px 54px),
        linear-gradient(180deg, rgba(255, 255, 255, .05) 0 1px, transparent 1px 42px);
    mask-image: linear-gradient(180deg, transparent, #000 18%, #000 82%, transparent);
    pointer-events: none;
}

.admin-theme-signal .signal-auth-brand strong {
    position: relative;
    z-index: 1;
    font-size: 30px;
    line-height: 1.2;
}

.admin-theme-signal .member-auth-brand strong {
    display: block;
    max-width: 10em;
    overflow: hidden;
    text-overflow: clip;
    white-space: nowrap;
}

.admin-theme-signal .signal-auth-brand em {
    position: relative;
    z-index: 1;
}

.admin-theme-signal .signal-auth-content {
    display: grid;
    align-items: center;
    padding: 34px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(230, 238, 246, .96));
}

.admin-theme-signal .auth-shell {
    position: relative;
    width: 100%;
}

.admin-theme-signal .signal-auth-orbit {
    position: absolute;
    inset: auto 16px 16px auto;
    width: 122px;
    height: 122px;
    pointer-events: none;
    opacity: .7;
}

.admin-theme-signal .signal-auth-orbit span {
    position: absolute;
    inset: 0;
    border: 1px solid rgba(0, 215, 255, .26);
    border-radius: 50%;
    animation: sigV4Orbit 4.8s linear infinite;
}

.admin-theme-signal .signal-auth-orbit span:nth-child(2) {
    inset: 20px;
    border-color: rgba(53, 224, 146, .24);
    animation-duration: 3.8s;
    animation-direction: reverse;
}

.admin-theme-signal .signal-auth-orbit span:nth-child(3) {
    inset: 42px;
    border-color: rgba(232, 65, 58, .22);
    animation-duration: 2.9s;
}

.admin-theme-signal .auth-card {
    position: relative;
    padding: 30px;
    border: 1px solid rgba(125, 146, 166, .42);
    border-radius: 8px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .86), rgba(238, 244, 249, .86));
    box-shadow: 0 22px 55px rgba(7, 10, 14, .14);
    overflow: hidden;
}

.admin-theme-signal .auth-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: linear-gradient(180deg, var(--sig-v4-cyan), transparent, var(--sig-v4-green));
}

.admin-theme-signal .admin-auth .auth-card::before {
    background: linear-gradient(180deg, var(--sig-v4-red), transparent, var(--sig-v4-amber));
}

.admin-theme-signal .auth-brand-mark {
    display: inline-flex;
    width: 48px;
    height: 48px;
    margin-bottom: 18px;
    align-items: center;
    justify-content: center;
    color: #061017;
    border-radius: 5px;
    background: linear-gradient(180deg, #7AF0FF, #00D7FF);
    box-shadow: 0 0 28px rgba(0, 215, 255, .32);
    font-size: 18px;
    font-weight: 900;
}

.admin-theme-signal .admin-auth .auth-brand-mark {
    color: #FFF7EA;
    background: linear-gradient(180deg, #F06860, #B92A26);
    box-shadow: 0 0 28px rgba(232, 65, 58, .28);
}

.admin-theme-signal .auth-head span {
    display: inline-flex;
    margin-bottom: 8px;
    color: var(--sig-v4-muted);
    font-family: Consolas, "Microsoft YaHei", monospace;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .12em;
}

.admin-theme-signal .auth-head h1 {
    margin: 0;
    color: var(--sig-v4-text);
    font-size: 30px;
}

.admin-theme-signal .auth-head p {
    color: var(--sig-v4-muted);
}

.admin-theme-signal .auth-form {
    gap: 14px;
}

.admin-theme-signal .auth-form label {
    color: #273545;
    font-weight: 900;
}

.admin-theme-signal .auth-form input {
    min-height: 42px;
}

.admin-theme-signal .auth-links {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 18px;
    padding: 12px;
    border: 1px solid rgba(0, 215, 255, .18);
    border-radius: 6px;
    background: rgba(0, 215, 255, .06);
}

.admin-theme-signal .auth-links span {
    color: var(--sig-v4-muted);
    font-size: 12px;
    font-weight: 800;
}

.admin-theme-signal .auth-links a {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    justify-content: center;
    padding: 0 12px;
    border: 1px solid rgba(0, 215, 255, .32);
    border-radius: 4px;
    color: #073C47;
    background: rgba(0, 215, 255, .12);
    font-size: 12px;
    font-weight: 900;
}

.admin-theme-signal .admin-auth .auth-links {
    border-color: rgba(232, 65, 58, .22);
    background: rgba(232, 65, 58, .06);
}

.admin-theme-signal .admin-auth .auth-links a {
    color: #741B18;
    border-color: rgba(232, 65, 58, .34);
    background: rgba(232, 65, 58, .11);
}

.admin-theme-signal .signal-hover-light {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 9999;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    pointer-events: none;
    opacity: 0;
    transform: translate(-50%, -50%);
    background: radial-gradient(circle, rgba(0, 215, 255, .16), rgba(0, 215, 255, .04) 38%, transparent 70%);
    transition: opacity .18s ease;
    mix-blend-mode: screen;
}

.admin-theme-signal.signal-pointer-active .signal-hover-light {
    opacity: 1;
}

@media (max-width: 1320px) {
    .admin-theme-signal .signal-metric-deck {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-theme-signal .ad-filter-bar {
        grid-template-columns: repeat(3, minmax(160px, 1fr));
    }

    .admin-theme-signal .ad-search-btn {
        width: 100%;
    }
}

@media (max-width: 900px) {
    .admin-theme-signal .signal-shell,
    .admin-theme-signal.signal-sidebar-collapsed .signal-shell {
        display: block;
        background:
            radial-gradient(circle at 78% 4%, rgba(0, 215, 255, .16), transparent 260px),
            linear-gradient(135deg, #DDE5EF, #F7FAFD);
    }

    .admin-theme-signal .signal-grid-plane,
    .admin-theme-signal.signal-sidebar-collapsed .signal-grid-plane {
        left: 0;
    }

    .admin-theme-signal .signal-rail,
    .admin-theme-signal.signal-sidebar-collapsed .signal-rail {
        width: min(306px, calc(100vw - 44px));
        transform: translateX(-105%);
    }

    .admin-theme-signal.signal-mobile-nav-open .signal-rail {
        transform: translateX(0);
    }

    .admin-theme-signal .signal-workspace,
    .admin-theme-signal.signal-sidebar-collapsed .signal-workspace {
        margin-left: 0;
        padding: 10px;
    }

    .admin-theme-signal .signal-metric-deck,
    .admin-theme-signal .ad-filter-bar {
        grid-template-columns: 1fr;
    }

    .admin-theme-signal .signal-auth-frame {
        min-height: auto;
        grid-template-columns: 1fr;
    }

    .admin-theme-signal .signal-auth-brand {
        min-height: 210px;
        padding: 28px;
    }

    .admin-theme-signal .signal-auth-content {
        padding: 20px;
    }

    .admin-theme-signal .template-modal,
    .admin-theme-signal .ad-time-modal,
    .admin-theme-signal .crawler-modal {
        padding: 18px 12px !important;
        align-items: flex-start;
    }

    .admin-theme-signal .template-modal-card,
    .admin-theme-signal .ad-time-dialog,
    .admin-theme-signal .crawler-modal-card {
        width: calc(100vw - 24px);
        max-height: calc(100dvh - 36px);
    }
}

@media (max-width: 640px) {
    .admin-theme-signal .page-head {
        grid-template-columns: 1fr;
    }

    .admin-theme-signal .ad-list-toolbar > span {
        width: 100%;
        margin-left: 0;
    }

    .admin-theme-signal .auth-card {
        padding: 22px;
    }

    .admin-theme-signal .auth-links {
        align-items: stretch;
        flex-direction: column;
    }
}

@media (prefers-reduced-motion: reduce) {
    .admin-theme-signal .signal-page > *,
    .admin-theme-signal .page-head,
    .admin-theme-signal .panel,
    .admin-theme-signal .settings-card,
    .admin-theme-signal .signal-metric-card,
    .admin-theme-signal [data-signal-module],
    .admin-theme-signal .signal-metric-node,
    .admin-theme-signal .signal-metric-wave i,
    .admin-theme-signal .signal-auth-orbit span,
    .admin-theme-signal .signal-metric-license-line span {
        animation: none !important;
    }
}

@keyframes sigV4ModuleIn {
    from { opacity: 0; transform: translateY(16px); filter: saturate(.75); }
    to { opacity: 1; transform: translateY(0); filter: saturate(1); }
}

@keyframes sigV4EdgeSweep {
    from { transform: translateX(-54%); }
    to { transform: translateX(54%); }
}

@keyframes sigV4NodePulse {
    0%, 100% { transform: scale(.76); opacity: .62; }
    50% { transform: scale(1.18); opacity: 1; }
}

@keyframes sigV4Bars {
    0%, 100% { height: 34%; opacity: .58; }
    45% { height: 100%; opacity: 1; }
}

@keyframes sigV4LicenseLine {
    0%, 100% { transform: translateX(-12%); opacity: .64; }
    50% { transform: translateX(34%); opacity: 1; }
}

@keyframes sigV4Orbit {
    from { transform: rotate(0deg) scale(1); }
    50% { transform: rotate(180deg) scale(.94); }
    to { transform: rotate(360deg) scale(1); }
}

/* Signal Console v4.1 final overlay */
.admin-theme-signal {
    --sig-v41-ink: #070B10;
    --sig-v41-panel: #0E151E;
    --sig-v41-panel-2: #121B26;
    --sig-v41-line: rgba(157, 177, 196, .34);
    --sig-v41-cyan: #00D7FF;
    --sig-v41-red: #E8413A;
    --sig-v41-amber: #F2B94B;
    --sig-v41-green: #35E092;
    --sig-v41-text: #EDF6FF;
    --sig-v41-muted: #A9B8C8;
    --sig-v41-radius: 6px;
}

.admin-theme-signal .signal-shell {
    display: block !important;
    min-height: 100dvh;
    background:
        linear-gradient(90deg, rgba(7, 10, 14, .98) 0 296px, transparent 296px),
        linear-gradient(135deg, #DDE5EF 0%, #F7FAFD 48%, #C9D4E0 100%) !important;
}

.admin-theme-signal .signal-rail {
    position: fixed !important;
    left: 0;
    top: 0;
    bottom: 0;
    width: 296px;
    height: auto !important;
    overflow: hidden auto;
}

.admin-theme-signal .signal-workspace {
    min-width: 0;
    margin-left: 296px;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-shell {
    background:
        linear-gradient(90deg, rgba(7, 10, 14, .98) 0 86px, transparent 86px),
        linear-gradient(135deg, #DDE5EF 0%, #F7FAFD 48%, #C9D4E0 100%) !important;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-rail {
    width: 86px;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-workspace {
    margin-left: 86px;
}

.admin-theme-signal .page-head {
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 16px;
    align-items: center;
    overflow: hidden;
    padding: 20px 22px !important;
    color: var(--sig-v41-text) !important;
    border: 1px solid rgba(157, 177, 196, .28) !important;
    border-radius: var(--sig-v41-radius) !important;
    background:
        linear-gradient(90deg, rgba(0, 215, 255, .16), transparent 42%),
        linear-gradient(180deg, #121B26, #070B10) !important;
    box-shadow: 0 18px 44px rgba(7, 10, 14, .18), inset 0 1px 0 rgba(255, 255, 255, .08) !important;
}

.admin-theme-signal .page-head::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: linear-gradient(180deg, var(--sig-v41-cyan), transparent 52%, var(--sig-v41-red));
    box-shadow: 0 0 24px rgba(0, 215, 255, .42);
}

.admin-theme-signal .page-head::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 1px;
    opacity: .72;
    background: linear-gradient(90deg, transparent, rgba(0, 215, 255, .72), rgba(242, 185, 75, .42), transparent);
}

.admin-theme-signal .page-head h1,
.admin-theme-signal .page-head .member-title-line h1 {
    margin: 4px 0 0;
    color: #FFFFFF !important;
    font-size: 26px;
    line-height: 1.18;
    letter-spacing: 0;
    text-shadow: 0 0 22px rgba(0, 215, 255, .18);
}

.admin-theme-signal .page-head p,
.admin-theme-signal .page-head .muted,
.admin-theme-signal .page-head small {
    color: #B8C8D8 !important;
    line-height: 1.55;
}

.admin-theme-signal .page-head .pill {
    color: #071017 !important;
    border: 0 !important;
    border-radius: 4px !important;
    background: linear-gradient(90deg, var(--sig-v41-cyan), #9BEFFF) !important;
    box-shadow: 0 0 22px rgba(0, 215, 255, .24);
    letter-spacing: 0;
}

.admin-theme-signal .page-head .admin-actions {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}

.admin-theme-signal .page-head .admin-actions .primary-btn,
.admin-theme-signal .page-head .admin-actions .secondary-btn,
.admin-theme-signal .page-head .admin-actions .disabled-like {
    min-height: 34px;
    border-radius: 4px;
    white-space: nowrap;
}

.admin-theme-signal .signal-identity {
    position: relative;
    display: grid;
    gap: 7px;
    padding: 14px;
    overflow: hidden;
    border: 1px solid rgba(0, 215, 255, .22);
    border-radius: var(--sig-v41-radius);
    background:
        linear-gradient(90deg, rgba(0, 215, 255, .10), transparent 58%),
        linear-gradient(180deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .02));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 16px 34px rgba(0, 0, 0, .18);
}

.admin-theme-signal .signal-identity::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--sig-v41-cyan), transparent, var(--sig-v41-amber));
}

.admin-theme-signal .signal-identity span {
    color: var(--sig-v41-muted) !important;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0;
}

.admin-theme-signal .signal-identity strong {
    color: #FFFFFF !important;
    font-size: 17px;
    line-height: 1.2;
}

.admin-theme-signal .signal-identity small {
    display: block;
    padding-top: 7px;
    color: #A8DFF0 !important;
    border-top: 1px solid rgba(157, 177, 196, .22);
    font-size: 12px;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-identity {
    justify-items: center;
    padding: 10px 6px;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-identity span,
.admin-theme-signal.signal-sidebar-collapsed .signal-identity small {
    display: none !important;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-identity strong {
    font-size: 12px;
}

.admin-theme-signal .panel,
.admin-theme-signal .settings-card,
.admin-theme-signal .admin-card,
.admin-theme-signal .package-card,
.admin-theme-signal .plugin-card,
.admin-theme-signal .member-edit-card,
.admin-theme-signal .member-wallet-card,
.admin-theme-signal .staff-create-card,
.admin-theme-signal .staff-list-card,
.admin-theme-signal .crawler-mini-card,
.admin-theme-signal .publish-edit-summary > div,
.admin-theme-signal .publish-create-summary,
.admin-theme-signal .user-summary-cards > div,
.admin-theme-signal .user-price-strip > div,
.admin-theme-signal .program-info-list > div,
.admin-theme-signal .feed-item,
.admin-theme-signal .user-log-item,
.admin-theme-signal .template-card,
.admin-theme-signal .template-cloud-empty,
.admin-theme-signal .settings-color-card,
.admin-theme-signal .level-row,
.admin-theme-signal .recharge-card-block {
    border-radius: var(--sig-v41-radius) !important;
    border-color: rgba(157, 177, 196, .46) !important;
}

.admin-theme-signal .signal-metric-deck {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.admin-theme-signal .signal-metric-card {
    min-height: 168px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border-radius: var(--sig-v41-radius) !important;
    background:
        linear-gradient(90deg, rgba(0, 215, 255, .12), transparent 44%),
        linear-gradient(180deg, #121C27, #080C12) !important;
}

.admin-theme-signal .signal-metric-main strong {
    font-size: 40px;
    line-height: 1;
    letter-spacing: 0;
}

.admin-theme-signal .signal-metric-license .signal-metric-main strong {
    font-size: 28px;
}

.admin-theme-signal .ad-manager-table {
    min-width: 1280px;
}

.admin-theme-signal .user-ad-list-table {
    min-width: 1320px;
}

.admin-theme-signal .ad-manager-table th:last-child,
.admin-theme-signal .ad-manager-table td:last-child {
    width: 142px;
    min-width: 142px !important;
}

.admin-theme-signal .ad-row-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(54px, 1fr)) !important;
    gap: 5px !important;
    align-items: stretch;
    width: 100%;
    min-width: 124px !important;
}

.admin-theme-signal .ad-row-actions form {
    display: contents !important;
}

.admin-theme-signal .ad-row-actions .ad-edit-btn,
.admin-theme-signal .ad-row-actions .ad-time-btn,
.admin-theme-signal .ad-row-actions .ad-warn-btn,
.admin-theme-signal .ad-row-actions .ad-delete-btn,
.admin-theme-signal .ad-row-actions button,
.admin-theme-signal .ad-row-actions a {
    display: inline-flex;
    width: 100%;
    min-height: 28px;
    align-items: center;
    justify-content: center;
    padding: 0 6px !important;
    border-radius: 4px !important;
    font-size: 11px !important;
    line-height: 1.1;
    white-space: nowrap;
}

.admin-theme-signal .ad-edit-btn.is-disabled,
.admin-theme-signal .ad-time-btn.is-disabled,
.admin-theme-signal .ad-warn-btn.is-disabled,
.admin-theme-signal .ad-delete-btn.is-disabled,
.admin-theme-signal .ad-toggle.is-disabled,
.admin-theme-signal button.is-disabled,
.admin-theme-signal span.is-disabled {
    cursor: not-allowed !important;
    pointer-events: none;
    opacity: .46 !important;
    filter: grayscale(.42);
    box-shadow: none !important;
}

.admin-theme-signal .ad-state.expired {
    color: #FFE9E6;
    border-color: rgba(232, 65, 58, .48);
    background: linear-gradient(180deg, rgba(232, 65, 58, .88), rgba(136, 30, 27, .88));
}

.admin-theme-signal .template-modal,
.admin-theme-signal .ad-time-modal,
.admin-theme-signal .crawler-modal {
    align-items: center !important;
    justify-content: center !important;
    padding: 24px 16px !important;
    overflow: auto !important;
}

.admin-theme-signal .template-modal-card {
    width: min(960px, calc(100vw - 40px)) !important;
    max-height: min(760px, calc(100dvh - 40px)) !important;
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    border-radius: var(--sig-v41-radius) !important;
    clip-path: none !important;
}

.admin-theme-signal .template-modal-card > form {
    min-height: 0;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

.admin-theme-signal .template-modal-head {
    position: sticky;
    top: 0;
    z-index: 5;
    flex: 0 0 auto;
}

.admin-theme-signal .template-modal-body {
    min-height: 0;
    flex: 1 1 auto;
    overflow: auto;
}

.admin-theme-signal .template-modal-actions {
    position: sticky;
    bottom: 0;
    z-index: 5;
    flex: 0 0 auto;
    margin: 0 !important;
    padding: 14px 18px !important;
    border-top: 1px solid rgba(157, 177, 196, .36);
}

.admin-theme-signal .template-modal-close {
    position: relative;
    z-index: 8;
    flex: 0 0 auto;
}

.admin-theme-signal .crawler-mini-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

.admin-theme-signal .crawler-mini-card {
    min-width: 0;
    min-height: 0 !important;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 14px !important;
}

.admin-theme-signal .crawler-mini-top,
.admin-theme-signal .crawler-mini-settings,
.admin-theme-signal .crawler-mini-foot {
    gap: 8px;
}

.admin-theme-signal .crawler-dispatch-note {
    padding: 9px 10px;
    line-height: 1.42;
}

.admin-theme-signal .crawler-mini-metrics {
    gap: 6px;
    margin: 6px 0;
}

.admin-theme-signal .crawler-mini-metrics div {
    padding: 8px 7px;
}

.admin-theme-signal .crawler-mini-metrics strong {
    font-size: 18px;
}

.admin-theme-signal .crawler-mini-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    margin-top: auto;
}

.admin-theme-signal .crawler-mini-actions form {
    display: contents;
}

.admin-theme-signal .crawler-mini-actions .primary-btn,
.admin-theme-signal .crawler-mini-actions .secondary-btn,
.admin-theme-signal .crawler-mini-actions button {
    width: 100%;
    min-height: 32px;
    justify-content: center;
    padding-inline: 8px;
    font-size: 12px;
}

.admin-theme-signal .user-dashboard-grid.user-dashboard-no-notice {
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, .85fr) !important;
    align-items: stretch;
}

.admin-theme-signal .user-dashboard-grid.user-dashboard-no-notice > .user-console-card {
    height: 560px;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.admin-theme-signal .user-dashboard-grid.user-dashboard-no-notice .settings-section-head {
    flex: 0 0 auto;
}

.admin-theme-signal .dashboard-user-table-wrap,
.admin-theme-signal .user-log-list {
    min-height: 0;
    flex: 1 1 auto;
    overflow: auto;
}

.admin-theme-signal .dashboard-user-table-wrap {
    border-radius: var(--sig-v41-radius);
}

.admin-theme-signal .user-log-list {
    display: grid;
    align-content: start;
    gap: 8px;
    padding-right: 4px;
}

.admin-theme-signal .user-log-item {
    grid-template-columns: 116px minmax(0, 1fr);
    gap: 4px 10px;
    padding: 10px 11px;
    min-width: 0;
}

.admin-theme-signal .user-log-item span,
.admin-theme-signal .user-log-item strong,
.admin-theme-signal .user-log-item p {
    min-width: 0;
    overflow-wrap: anywhere;
    white-space: normal;
}

.admin-theme-signal .user-log-item p {
    grid-column: 1 / -1;
    line-height: 1.48;
}

.signal-auth-body.admin-theme-signal {
    min-height: 100dvh;
    background: #05070A;
}

.admin-theme-signal .signal-auth-stage {
    padding: 28px;
    background:
        repeating-linear-gradient(90deg, rgba(255, 255, 255, .032) 0 1px, transparent 1px 72px),
        repeating-linear-gradient(180deg, rgba(255, 255, 255, .025) 0 1px, transparent 1px 54px),
        linear-gradient(135deg, #05070A, #121923 58%, #070B10) !important;
}

.admin-theme-signal .signal-auth-frame {
    display: grid;
    width: min(1040px, 100%);
    min-height: 610px;
    grid-template-columns: minmax(300px, .9fr) minmax(360px, 1fr);
    border-radius: 8px;
    clip-path: none !important;
}

.admin-theme-signal .signal-auth-brand {
    display: grid;
    align-content: end;
    min-width: 0;
}

.signal-admin-auth-body .signal-auth-frame {
    border-color: rgba(232, 65, 58, .42) !important;
    background: linear-gradient(180deg, rgba(232, 65, 58, .08), rgba(255, 255, 255, .03));
    box-shadow: 0 30px 100px rgba(0, 0, 0, .46), 0 0 0 1px rgba(232, 65, 58, .13);
}

.signal-admin-auth-body .admin-auth-brand {
    position: relative;
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(232, 65, 58, .16), transparent 48%),
        linear-gradient(180deg, #131922, #06090D) !important;
}

.signal-admin-auth-body .admin-auth-brand::before {
    content: "";
    position: absolute;
    inset: 28px;
    border: 1px solid rgba(232, 65, 58, .22);
    background:
        linear-gradient(90deg, rgba(232, 65, 58, .14) 0 1px, transparent 1px 58px),
        linear-gradient(180deg, rgba(255, 255, 255, .05) 0 1px, transparent 1px 42px);
    pointer-events: none;
}

.signal-admin-auth-body .signal-auth-brand span {
    color: #1A0706;
    background: linear-gradient(180deg, #FF776E, var(--sig-v41-red));
    box-shadow: 0 0 30px rgba(232, 65, 58, .32);
}

.signal-admin-auth-body .signal-auth-brand strong,
.signal-admin-auth-body .signal-auth-brand em {
    color: #FFF2F0;
}

.signal-admin-auth-body .signal-auth-content {
    background:
        linear-gradient(90deg, rgba(232, 65, 58, .10), transparent 34%),
        linear-gradient(180deg, #151E29, #080C12) !important;
}

.signal-admin-auth-body .admin-auth .auth-card {
    color: var(--sig-v41-text);
    border-color: rgba(232, 65, 58, .34);
    background:
        linear-gradient(90deg, rgba(232, 65, 58, .10), transparent 46%),
        linear-gradient(180deg, #101821, #0A0F15);
    box-shadow: 0 22px 60px rgba(0, 0, 0, .28), inset 0 1px 0 rgba(255, 255, 255, .07);
}

.signal-admin-auth-body .admin-auth .auth-head h1 {
    color: #FFFFFF;
}

.signal-admin-auth-body .admin-auth .auth-head span,
.signal-admin-auth-body .admin-auth .auth-head p,
.signal-admin-auth-body .admin-auth .auth-links span {
    color: #B8C8D8;
}

.signal-admin-auth-body .admin-auth .auth-form label {
    color: #DCEBFA;
}

.signal-admin-auth-body .admin-auth .auth-form input {
    color: #F5FBFF;
    border-color: rgba(232, 65, 58, .30);
    background: #070B10;
}

.signal-admin-auth-body .admin-auth .auth-links {
    border-color: rgba(232, 65, 58, .30);
    background: rgba(232, 65, 58, .09);
}

.signal-admin-auth-body .admin-auth .auth-links a {
    color: #FFE8E5;
    border-color: rgba(232, 65, 58, .46);
    background: rgba(232, 65, 58, .18);
}

/* v6+v7 remaining UI closure: keep signal modals outside the workspace frame. */
body.admin-theme-signal > .template-modal,
body.admin-theme-signal > .ad-time-modal,
body.admin-theme-signal > .crawler-modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 100000 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 24px 16px !important;
    overflow: auto !important;
    overscroll-behavior: contain;
    background:
        radial-gradient(circle at 50% 16%, rgba(0, 215, 255, .18), transparent 340px),
        rgba(4, 7, 10, .78) !important;
    backdrop-filter: blur(10px);
}

body.admin-theme-signal > .template-modal.open,
body.admin-theme-signal > .ad-time-modal:not([hidden]),
body.admin-theme-signal > .crawler-modal:not([hidden]) {
    display: flex !important;
}

body.admin-theme-signal.signal-modal-open,
body.admin-theme-signal.modal-open {
    overflow: hidden !important;
}

body.admin-theme-signal > .ad-time-modal .ad-time-dialog,
body.admin-theme-signal > .template-modal .template-modal-card,
body.admin-theme-signal > .crawler-modal .crawler-modal-card {
    position: relative !important;
    width: min(760px, calc(100dvw - 40px)) !important;
    max-height: calc(100dvh - 42px) !important;
    min-height: 0 !important;
    color: #0F1A26;
    border: 1px solid rgba(0, 215, 255, .42) !important;
    border-radius: 6px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, .99), rgba(244, 248, 252, .99)) !important;
    box-shadow: 0 28px 100px rgba(0, 0, 0, .48), 0 0 0 1px rgba(0, 215, 255, .18) !important;
    clip-path: none !important;
}

body.admin-theme-signal > .template-modal .template-modal-card,
body.admin-theme-signal > .crawler-modal .crawler-modal-card {
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}

body.admin-theme-signal > .template-modal .template-modal-card {
    width: min(980px, calc(100dvw - 40px)) !important;
}

body.admin-theme-signal > .crawler-modal .crawler-modal-card {
    width: min(1180px, calc(100dvw - 40px)) !important;
}

body.admin-theme-signal > .dashboard-feed-modal .dashboard-feed-dialog,
body.admin-theme-signal > .license-activate-modal .license-activate-dialog {
    width: min(720px, calc(100dvw - 40px)) !important;
}

body.admin-theme-signal > .update-permission-modal .update-permission-dialog {
    width: min(780px, calc(100dvw - 40px)) !important;
}

body.admin-theme-signal > .ad-time-modal .ad-time-dialog {
    padding: 26px 22px 20px !important;
    overflow: auto !important;
}

body.admin-theme-signal > .ad-time-modal .ad-time-dialog > h2,
body.admin-theme-signal > .ad-time-modal .ad-time-dialog > .ad-time-sub,
body.admin-theme-signal > .ad-time-modal .dashboard-feed-content {
    padding-right: 54px;
}

body.admin-theme-signal > .template-modal .template-modal-head,
body.admin-theme-signal > .crawler-modal .crawler-modal-head {
    position: sticky !important;
    top: 0;
    z-index: 8;
    padding-right: 58px !important;
}

body.admin-theme-signal > .template-modal .template-modal-card > form {
    min-height: 0 !important;
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
}

body.admin-theme-signal > .template-modal .template-modal-body,
body.admin-theme-signal > .crawler-modal .crawler-modal-body,
body.admin-theme-signal > .crawler-modal .crawler-modal-table {
    min-height: 0 !important;
    flex: 1 1 auto !important;
    overflow: auto !important;
}

body.admin-theme-signal > .template-modal .template-modal-actions,
body.admin-theme-signal > .crawler-modal .crawler-modal-pages {
    flex: 0 0 auto !important;
}

body.admin-theme-signal > .ad-time-modal .ad-time-close,
body.admin-theme-signal > .template-modal .template-modal-close,
body.admin-theme-signal > .crawler-modal .crawler-modal-head button[data-crawler-close] {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    z-index: 30 !important;
    display: inline-flex !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    border: 1px solid rgba(125, 146, 166, .42) !important;
    border-radius: 5px !important;
    color: #122033 !important;
    background: #FFFFFF !important;
    box-shadow: 0 8px 18px rgba(7, 10, 14, .12) !important;
    line-height: 1 !important;
    text-decoration: none !important;
}

body.admin-theme-signal > .ad-time-modal .ad-time-close:hover,
body.admin-theme-signal > .template-modal .template-modal-close:hover,
body.admin-theme-signal > .crawler-modal .crawler-modal-head button[data-crawler-close]:hover {
    color: #FFFFFF !important;
    border-color: rgba(232, 65, 58, .58) !important;
    background: linear-gradient(180deg, rgba(232, 65, 58, .92), rgba(150, 30, 28, .92)) !important;
}

.admin-theme-signal .ad-manager-table {
    min-width: 1340px !important;
}

.admin-theme-signal .ad-manager-table th:nth-child(9),
.admin-theme-signal .ad-manager-table td:nth-child(9),
.admin-theme-signal .ad-manager-table th:nth-child(10),
.admin-theme-signal .ad-manager-table td:nth-child(10),
.admin-theme-signal .ad-manager-table th:nth-child(11),
.admin-theme-signal .ad-manager-table td:nth-child(11),
.admin-theme-signal .ad-manager-table th:nth-child(12),
.admin-theme-signal .ad-manager-table td:nth-child(12) {
    width: 92px !important;
    min-width: 92px !important;
    max-width: 92px !important;
}

.admin-theme-signal .ad-manager-table th:nth-child(13),
.admin-theme-signal .ad-manager-table td:nth-child(13) {
    width: 158px !important;
    min-width: 158px !important;
    max-width: 158px !important;
}

.admin-theme-signal .ad-manager-table th:last-child,
.admin-theme-signal .ad-manager-table td:last-child {
    width: 184px !important;
    min-width: 184px !important;
    max-width: 184px !important;
}

.admin-theme-signal .ad-manager-table .ad-row-actions {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 4px !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 176px !important;
}

.admin-theme-signal .ad-manager-table .ad-row-actions form {
    display: contents !important;
}

.admin-theme-signal .ad-manager-table .ad-row-actions .ad-edit-btn,
.admin-theme-signal .ad-manager-table .ad-row-actions .ad-time-btn,
.admin-theme-signal .ad-manager-table .ad-row-actions .ad-warn-btn,
.admin-theme-signal .ad-manager-table .ad-row-actions .ad-delete-btn,
.admin-theme-signal .ad-manager-table .ad-row-actions button,
.admin-theme-signal .ad-manager-table .ad-row-actions a,
.admin-theme-signal .ad-manager-table .ad-row-actions span {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 26px !important;
    padding: 0 4px !important;
    font-size: 11px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.admin-theme-signal .ad-manager-table .ad-state {
    max-width: 100% !important;
    padding-inline: 9px !important;
    white-space: nowrap !important;
}

.admin-theme-signal .crawler-mini-actions .crawler-source-form {
    display: block !important;
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
}

.admin-theme-signal .crawler-mini-actions .crawler-source-switch {
    display: flex !important;
    width: 100% !important;
    min-height: 34px !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    padding: 0 10px 0 12px !important;
    white-space: nowrap !important;
}

.admin-theme-signal .crawler-mini-actions .crawler-source-switch > span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-theme-signal .crawler-mini-actions .crawler-source-switch i {
    flex: 0 0 46px;
}

.admin-theme-signal .user-log-item {
    display: grid !important;
    grid-template-columns: 126px 72px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 42px;
    padding: 8px 11px !important;
}

.admin-theme-signal .user-log-item span,
.admin-theme-signal .user-log-item strong,
.admin-theme-signal .user-log-item p {
    min-width: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    overflow-wrap: normal !important;
    white-space: nowrap !important;
}

.admin-theme-signal .user-log-item p {
    grid-column: auto !important;
    line-height: 1.2 !important;
}

@media (max-width: 1320px) {
    .admin-theme-signal .crawler-mini-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 1180px) {
    .admin-theme-signal .signal-metric-deck,
    .admin-theme-signal .user-dashboard-grid.user-dashboard-no-notice {
        grid-template-columns: 1fr !important;
    }

    .admin-theme-signal .user-dashboard-grid.user-dashboard-no-notice > .user-console-card {
        height: auto;
        min-height: 440px;
    }
}

@media (max-width: 900px) {
    .admin-theme-signal .signal-shell,
    .admin-theme-signal.signal-sidebar-collapsed .signal-shell {
        background: linear-gradient(135deg, #DDE5EF 0%, #F7FAFD 48%, #C9D4E0 100%) !important;
    }

    .admin-theme-signal .signal-rail,
    .admin-theme-signal.signal-sidebar-collapsed .signal-rail {
        width: min(306px, calc(100vw - 44px));
        transform: translateX(-105%);
    }

    .admin-theme-signal.signal-mobile-nav-open .signal-rail {
        transform: translateX(0);
    }

    .admin-theme-signal .signal-workspace,
    .admin-theme-signal.signal-sidebar-collapsed .signal-workspace {
        margin-left: 0;
        padding: 10px;
    }

    .admin-theme-signal .page-head,
    .admin-theme-signal .signal-auth-frame {
        grid-template-columns: 1fr;
    }

    .admin-theme-signal .signal-auth-frame {
        min-height: auto;
    }

    .admin-theme-signal .signal-auth-brand {
        min-height: 210px;
    }
}

@media (max-width: 760px) {
    .admin-theme-signal .crawler-mini-grid {
        grid-template-columns: 1fr !important;
    }

    .admin-theme-signal .page-head {
        padding: 18px !important;
    }

    .admin-theme-signal .page-head .admin-actions {
        justify-content: stretch;
    }

    .admin-theme-signal .page-head .admin-actions > * {
        flex: 1 1 100%;
    }

    .admin-theme-signal .signal-metric-main strong {
        font-size: 32px;
    }
}

/* PC-only signal console lock */
.admin-theme-signal {
    --signal-fixed-rail-width: 296px;
    --signal-fixed-content-gap: 0px;
    --signal-fixed-content-start: calc(var(--signal-fixed-rail-width) + var(--signal-fixed-content-gap));
}

.admin-theme-signal.signal-sidebar-collapsed {
    --signal-fixed-rail-width: 86px;
}

.admin-theme-signal .signal-shell,
.admin-theme-signal.signal-sidebar-collapsed .signal-shell {
    display: block !important;
    min-width: 1280px !important;
    min-height: 100vh !important;
    background:
        linear-gradient(90deg, rgba(7, 10, 14, .98) 0 var(--signal-fixed-content-start), transparent var(--signal-fixed-content-start)),
        radial-gradient(circle at 72% 7%, rgba(0, 215, 255, .16), transparent 285px),
        radial-gradient(circle at 96% 84%, rgba(232, 65, 58, .10), transparent 340px),
        linear-gradient(135deg, #DDE5EF 0%, #F7FAFD 47%, #C8D3E0 100%) !important;
}

.admin-theme-signal .signal-rail,
.admin-theme-signal.signal-sidebar-collapsed .signal-rail {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    z-index: 80 !important;
    width: var(--signal-fixed-rail-width) !important;
    height: 100vh !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    transform: none !important;
}

.admin-theme-signal .signal-grid-plane,
.admin-theme-signal.signal-sidebar-collapsed .signal-grid-plane {
    inset: 0 0 0 var(--signal-fixed-content-start) !important;
}

.admin-theme-signal.signal-mobile-nav-open::after {
    content: none !important;
}

.admin-theme-signal .signal-workspace,
.admin-theme-signal.signal-sidebar-collapsed .signal-workspace {
    display: block !important;
    min-width: 0 !important;
    margin-left: var(--signal-fixed-rail-width) !important;
    padding: 18px 20px 34px 20px !important;
}

.admin-theme-signal .signal-topbar {
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    grid-auto-flow: row !important;
}

/* Signal sidebar submenu compatibility: keep opened second-level menus visible in legacy/compat browsers. */
.admin-theme-signal .signal-subnav.admin-submenu.open {
    display: block !important;
    max-height: none !important;
    opacity: 1 !important;
    overflow: visible !important;
    transform: translateY(0) !important;
    visibility: visible !important;
}

.admin-theme-signal .signal-subnav.admin-submenu.open a {
    display: block !important;
    min-height: 31px !important;
    line-height: 31px !important;
    visibility: visible !important;
    opacity: 1 !important;
    white-space: nowrap !important;
}

.admin-theme-signal .signal-subnav.admin-submenu.open a .signal-icon {
    display: inline-block !important;
    margin-right: 8px !important;
    vertical-align: -3px !important;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-subnav.admin-submenu {
    display: none !important;
}

.admin-theme-signal .demo-mode-banner {
    border-color: rgba(251, 191, 36, 0.38);
    background: linear-gradient(135deg, rgba(120, 53, 15, 0.7), rgba(15, 23, 42, 0.92));
    color: #fde68a;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.24);
}

.admin-theme-signal .demo-mode-banner strong {
    color: #fbbf24;
}

.admin-theme-signal .demo-mode-banner span {
    color: #fde68a;
}

.admin-theme-signal .plugin-card-analytics {
    grid-column: 1 / -1 !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: stretch !important;
    gap: 18px;
}

.admin-theme-signal .plugin-card-analytics .plugin-analytics-head,
.admin-theme-signal .plugin-card-analytics .plugin-analytics-control,
.admin-theme-signal .plugin-card-analytics .plugin-code-field,
.admin-theme-signal .plugin-card-analytics .plugin-analytics-actions {
    grid-column: 1 / -1 !important;
}

.admin-theme-signal .plugin-analytics-title h2 {
    color: #10233F;
}

.admin-theme-signal .plugin-analytics-title p,
.admin-theme-signal .plugin-analytics-actions p,
.admin-theme-signal .plugin-analytics-control small {
    color: #526176;
}

.admin-theme-signal .plugin-status {
    color: #526176;
    border-color: #D5E0EA;
    background: #F3F6FA;
}

.admin-theme-signal .plugin-status.on {
    color: #047857;
    border-color: #A7F3D0;
    background: #ECFDF5;
}

.admin-theme-signal .plugin-analytics-control {
    border-color: #BDECF8;
    background: #F8FBFF;
}

.admin-theme-signal .plugin-toggle-line {
    color: #10233F;
}

.admin-theme-signal .plugin-code-field {
    color: #526176;
}

.admin-theme-signal .plugin-code-field textarea {
    color: #D7FBE8;
    border-color: rgba(0,215,255,.22);
    background: #081018;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04);
}

.admin-theme-signal .plugin-code-field textarea:focus {
    border-color: rgba(0,215,255,.64);
    box-shadow: 0 0 0 3px rgba(0,215,255,.12), inset 0 0 0 1px rgba(255,255,255,.06);
}

.admin-theme-signal .signal-top-tools {
    grid-column: auto !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
}

.admin-theme-signal .signal-command-meter,
.admin-theme-signal .signal-clock,
.admin-theme-signal .signal-top-status,
.admin-theme-signal .signal-top-actions {
    flex: 0 0 auto !important;
}

.admin-theme-signal .signal-top-actions {
    flex-wrap: nowrap !important;
}

.admin-theme-signal .signal-command-meter,
.admin-theme-signal .signal-clock,
.admin-theme-signal .signal-top-status {
    white-space: nowrap !important;
}

.admin-theme-signal .page-head {
    grid-template-columns: minmax(0, 1fr) auto !important;
}

.admin-theme-signal .signal-auth-frame {
    grid-template-columns: minmax(260px, 360px) minmax(320px, 460px) !important;
    min-height: 620px !important;
}

.admin-theme-signal .signal-auth-brand {
    min-height: 620px !important;
}

.admin-theme-signal .crawler-mini-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

/* Final signal sidebar submenu compatibility override. Keep this at the end. */
.admin-theme-signal .signal-subnav.admin-submenu.open {
    display: block !important;
    max-height: none !important;
    opacity: 1 !important;
    overflow: visible !important;
    transform: translateY(0) !important;
    visibility: visible !important;
}

.admin-theme-signal .signal-subnav.admin-submenu.open a {
    display: block !important;
    min-height: 31px !important;
    line-height: 31px !important;
    visibility: visible !important;
    opacity: 1 !important;
    white-space: nowrap !important;
}

.admin-theme-signal .signal-subnav.admin-submenu.open a .signal-icon {
    display: inline-block !important;
    margin-right: 8px !important;
    vertical-align: -3px !important;
}

.admin-theme-signal.signal-sidebar-collapsed .signal-subnav.admin-submenu {
    display: none !important;
}
