        :root {
            --text-main: #0f172a;
            --text-muted: #607086;
            --primary: #2f6fff;
            --primary-hover: #245ce0;
            --success: #1f9254;
            --danger: #d43f3f;
            --border-soft: rgba(255, 255, 255, 0.68);
            --glass-bg: rgba(255, 255, 255, 0.58);
            --glass-strong: rgba(255, 255, 255, 0.78);
            --glass-shadow: 0 18px 56px rgba(15, 23, 42, 0.12);
            --field-bg: #f4f8ff;
            --field-border: #95abcf;
            --field-border-hover: #7e97c3;
            --field-focus: #4f7df0;
            --cursor-x: 50vw;
            --cursor-y: 26vh;
            --scroll-progress: 0;
            --scroll-depth: 0px;
        }

        *,
        *::before,
        *::after {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            min-width: 0;
            font-family: 'SF Pro Display', 'PingFang SC', 'Microsoft YaHei', 'Segoe UI', sans-serif;
        }

        img,
        svg,
        video,
        canvas {
            max-width: 100%;
            height: auto;
        }

        body {
            min-height: 100vh;
            color: var(--text-main);
            background:
                radial-gradient(1200px 560px at -16% -24%, rgba(119, 167, 255, 0.3), transparent 66%),
                radial-gradient(1060px 580px at 122% -6%, rgba(143, 218, 255, 0.23), transparent 68%),
                linear-gradient(168deg, #f4f7fc 0%, #edf3fb 38%, #f2f6fb 100%);
            overflow-x: hidden;
        }

        body::before {
            content: "";
            position: fixed;
            inset: 0;
            pointer-events: none;
            background-image:
                linear-gradient(rgba(255, 255, 255, 0.24) 1px, transparent 1px),
                linear-gradient(90deg, rgba(255, 255, 255, 0.24) 1px, transparent 1px);
            background-size: 24px 24px;
            mask-image: radial-gradient(circle at center, rgba(0, 0, 0, 0.72), transparent 78%);
            z-index: -1;
        }

        body::after {
            content: "";
            position: fixed;
            inset: -14%;
            pointer-events: none;
            background:
                radial-gradient(620px 380px at var(--cursor-x) var(--cursor-y), rgba(255, 255, 255, 0.62), transparent 74%),
                radial-gradient(760px 420px at calc(88% + var(--scroll-depth)) calc(12% + var(--scroll-depth)), rgba(173, 210, 255, 0.32), transparent 75%),
                radial-gradient(880px 420px at calc(12% - var(--scroll-depth)) calc(100% - var(--scroll-depth)), rgba(174, 234, 255, 0.22), transparent 78%);
            opacity: 0.72;
            transform: translate3d(0, calc(var(--scroll-progress) * -28px), 0);
            filter: saturate(108%);
            z-index: -1;
            animation: ambientDrift 18s ease-in-out infinite alternate;
        }

        @keyframes ambientDrift {
            0% {
                opacity: 0.6;
                transform: translate3d(0, calc(var(--scroll-progress) * -16px), 0) scale(1);
            }
            100% {
                opacity: 0.78;
                transform: translate3d(0, calc(var(--scroll-progress) * -34px), 0) scale(1.04);
            }
        }

        .btn {
            padding: 0.58rem 1.02rem;
            border: 1px solid rgba(255, 255, 255, 0.4);
            border-radius: 999px;
            background: linear-gradient(160deg, #4a86ff 0%, #2f6fff 56%, #265de0 100%);
            color: #fff;
            font-size: 14px;
            cursor: pointer;
            box-shadow:
                0 10px 26px rgba(44, 101, 238, 0.28),
                inset 0 1px 0 rgba(255, 255, 255, 0.44);
            transition: transform 0.16s ease, background 0.2s ease, box-shadow 0.2s ease;
        }

        .btn:hover {
            background: linear-gradient(160deg, #3f7efc 0%, #2b68ef 56%, #1e53cd 100%);
            transform: translateY(-1px);
            box-shadow:
                0 16px 28px rgba(44, 101, 238, 0.3),
                inset 0 1px 0 rgba(255, 255, 255, 0.52);
        }

        .btn.outline {
            color: var(--text-main);
            background: rgba(255, 255, 255, 0.72);
            border-color: rgba(255, 255, 255, 0.66);
            box-shadow: none;
        }

        .btn.outline:hover {
            background: rgba(255, 255, 255, 0.72);
        }

        .text-action {
            color: var(--primary);
            border: none;
            background: none;
            cursor: pointer;
            font-size: 13px;
        }

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

        .admin-only {
            display: none;
        }

        .admin-manage-only {
            display: none;
        }

        .entry-create-only {
            display: none;
        }

        .sales-feedback-only {
            display: none;
        }

        .sales-feedback-write-only {
            display: none;
        }

        .input-group {
            margin-bottom: 0.92rem;
        }

        .input-group label {
            display: block;
            margin-bottom: 0.48rem;
            font-weight: 600;
            color: var(--text-main);
        }

        .input-group small {
            color: var(--text-muted);
            font-size: 12px;
        }

        .lead-entry-card .input-group {
            margin-bottom: 0.76rem;
        }

        .lead-entry-form {
            display: grid;
            gap: 0.78rem;
        }

        .lead-entry-primary-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 0.72rem;
        }

        .lead-entry-secondary-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.72rem;
        }

        .lead-entry-contact-box {
            padding: 0.84rem 0.92rem;
            border-radius: 16px;
            border: 1px solid rgba(179, 197, 228, 0.42);
            background: linear-gradient(180deg, rgba(248, 251, 255, 0.92), rgba(241, 247, 255, 0.76));
        }

        .lead-entry-contact-head {
            display: flex;
            align-items: baseline;
            justify-content: space-between;
            gap: 0.56rem;
            margin-bottom: 0.68rem;
            flex-wrap: wrap;
        }

        .lead-entry-contact-head strong {
            font-size: 14px;
        }

        .lead-entry-contact-head span {
            font-size: 12px;
            color: var(--text-muted);
        }

        .lead-entry-contact-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 0.72rem;
            align-items: start;
        }

        .lead-entry-source-field {
            grid-column: span 1;
        }

        .lead-entry-source-actions {
            align-self: end;
        }

        .lead-entry-source-actions label {
            opacity: 0;
            pointer-events: none;
        }

        .lead-entry-notes-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.72rem;
        }

        .lead-entry-actions {
            display: flex;
            justify-content: flex-end;
            gap: 0.56rem;
            flex-wrap: wrap;
        }

        .form-persist-tip {
            padding: 0.72rem 0.84rem;
            border: 1px dashed rgba(138, 168, 214, 0.75);
            border-radius: 14px;
            background: rgba(245, 249, 255, 0.72);
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.6;
        }

        .form-persist-tip.compact {
            padding: 0;
            border: 0;
            border-radius: 0;
            background: transparent;
            font-size: 12px;
        }

        .lead-collapsible {
            border-radius: 16px;
            border: 1px solid rgba(179, 197, 228, 0.46);
            background: rgba(255, 255, 255, 0.52);
            overflow: hidden;
        }

        .lead-collapsible + .lead-collapsible {
            margin-top: 0.18rem;
        }

        .lead-collapsible > summary {
            list-style: none;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.8rem;
            padding: 0.84rem 0.92rem;
            font-weight: 700;
            color: var(--text-main);
            user-select: none;
        }

        .lead-collapsible > summary::-webkit-details-marker {
            display: none;
        }

        .lead-collapsible > summary span {
            color: var(--text-muted);
            font-size: 12px;
            font-weight: 500;
        }

        .lead-collapsible > summary::after {
            content: '展开';
            color: var(--primary);
            font-size: 12px;
            font-weight: 600;
        }

        .lead-collapsible[open] > summary {
            border-bottom: 1px solid rgba(179, 197, 228, 0.38);
        }

        .lead-collapsible[open] > summary::after {
            content: '收起';
        }

        .lead-collapsible-body {
            padding: 0.88rem 0.92rem 0.92rem;
            display: grid;
            gap: 0.74rem;
        }

        .btn.tiny {
            padding: 0.38rem 0.78rem;
            min-height: auto;
            border-radius: 999px;
            font-size: 12px;
            box-shadow: none;
        }

        .lead-edit-toolbar {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.8rem;
            flex-wrap: wrap;
            margin-bottom: 0.62rem;
        }

        .lead-edit-time-note {
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.55;
        }

        .lead-edit-modal {
            max-height: min(92vh, 980px);
            display: flex;
            flex-direction: column;
            overflow: hidden;
        }

        .lead-edit-scroll {
            flex: 1 1 auto;
            min-height: 0;
            overflow-y: auto;
            padding-right: 0.16rem;
        }

        .lead-edit-scroll::-webkit-scrollbar {
            width: 8px;
        }

        .lead-edit-scroll::-webkit-scrollbar-thumb {
            border-radius: 999px;
            background: rgba(145, 167, 206, 0.58);
        }

        .lead-edit-actions {
            display: flex;
            justify-content: space-between;
            gap: 0.5rem;
            flex-wrap: wrap;
            margin-top: 0.82rem;
            padding-top: 0.72rem;
            border-top: 1px solid rgba(201, 217, 244, 0.82);
            background: transparent;
            box-shadow: none;
        }

        .lead-edit-actions-right {
            display: flex;
            justify-content: flex-end;
            gap: 0.5rem;
            margin-left: auto;
        }

        .lead-edit-history-block {
            margin-top: 0.15rem;
        }

        .lead-edit-history-list {
            max-height: 190px;
            overflow: auto;
        }

        .lead-quality-panel {
            margin-top: 0.62rem;
            margin-bottom: 0.82rem;
            padding: 0.78rem 0.9rem;
            border-radius: 14px;
            border: 1px solid rgba(138, 168, 214, 0.38);
            background: rgba(245, 249, 255, 0.78);
            color: var(--text-main);
            font-size: 13px;
            line-height: 1.65;
        }

        .lead-quality-panel .lead-quality-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.6rem;
            margin-bottom: 0.5rem;
        }

        .lead-quality-panel .lead-quality-title {
            font-size: 13px;
            font-weight: 700;
            color: var(--text-main);
        }

        .lead-quality-panel .lead-quality-reason-block {
            border-radius: 12px;
            background: rgba(255, 255, 255, 0.72);
            border: 1px solid rgba(201, 217, 244, 0.72);
            padding: 0.58rem 0.66rem;
        }

        .lead-quality-panel .lead-quality-reason-block label {
            display: block;
            margin-bottom: 0.26rem;
            font-size: 12px;
            font-weight: 600;
            color: var(--text-muted);
        }

        .lead-quality-panel .lead-quality-reason {
            margin-top: 0;
            color: var(--text-main);
            font-size: 13px;
            line-height: 1.75;
            white-space: normal;
            word-break: break-word;
        }

        .input,
        .filter-input,
        .status-select,
        textarea,
        select {
            width: 100%;
            border: 1.5px solid var(--field-border);
            border-radius: 9px;
            background: linear-gradient(180deg, #ffffff 0%, var(--field-bg) 100%);
            color: var(--text-main);
            padding: 0.55rem 0.72rem;
            font-size: 14px;
            outline: none;
            box-shadow:
                inset 0 1px 2px rgba(15, 23, 42, 0.06),
                0 1px 0 rgba(255, 255, 255, 0.75);
            transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
        }

        .input:hover,
        .filter-input:hover,
        .status-select:hover,
        textarea:hover,
        select:hover {
            border-color: var(--field-border-hover);
        }

        .input::placeholder,
        .filter-input::placeholder,
        textarea::placeholder {
            color: #8a97ad;
        }

        .input:focus,
        .filter-input:focus,
        .status-select:focus,
        textarea:focus,
        select:focus {
            border-color: var(--field-focus);
            background: #ffffff;
            box-shadow: 0 0 0 3px rgba(79, 125, 240, 0.26);
        }

        textarea {
            resize: vertical;
        }

        #login-screen {
            position: fixed;
            inset: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 2.2rem;
            overflow: hidden;
            z-index: 1000;
        }

        #login-screen::before {
            content: "";
            position: absolute;
            inset: 0;
            background:
                radial-gradient(780px 360px at 12% 8%, rgba(59, 130, 246, 0.26), transparent 66%),
                radial-gradient(680px 340px at 86% 16%, rgba(56, 189, 248, 0.18), transparent 68%),
                radial-gradient(900px 520px at 50% 100%, rgba(14, 116, 144, 0.12), transparent 72%);
            pointer-events: none;
        }

        .login-ambient {
            position: absolute;
            border-radius: 999px;
            filter: blur(8px);
            pointer-events: none;
        }

        .login-ambient.a {
            width: 430px;
            height: 430px;
            left: -140px;
            top: -120px;
            background: radial-gradient(circle at 30% 30%, rgba(156, 206, 255, 0.72), rgba(147, 197, 253, 0));
            animation: floatA 16s ease-in-out infinite alternate;
        }

        .login-ambient.b {
            width: 420px;
            height: 420px;
            right: 2%;
            top: 12%;
            background: radial-gradient(circle at 50% 50%, rgba(186, 230, 253, 0.58), rgba(186, 230, 253, 0));
            animation: floatB 18s ease-in-out infinite alternate;
        }

        .login-ambient.c {
            width: 520px;
            height: 520px;
            right: -180px;
            bottom: -210px;
            background: radial-gradient(circle at 30% 30%, rgba(191, 219, 254, 0.68), rgba(191, 219, 254, 0));
            animation: floatC 20s ease-in-out infinite alternate;
        }

        @keyframes floatA {
            from { transform: translate3d(0, 0, 0); }
            to { transform: translate3d(28px, 18px, 0); }
        }

        @keyframes floatB {
            from { transform: translate3d(0, 0, 0); }
            to { transform: translate3d(-26px, 26px, 0); }
        }

        @keyframes floatC {
            from { transform: translate3d(0, 0, 0); }
            to { transform: translate3d(-22px, -24px, 0); }
        }

        .login-shell {
            width: min(500px, 100%);
            position: relative;
            z-index: 2;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 0.9rem;
        }

        .login-box,
        .sidebar,
        .card,
        .table-wrapper,
        .modal,
        .toast {
            background: var(--glass-bg);
            border: 1px solid var(--border-soft);
            box-shadow: var(--glass-shadow);
            backdrop-filter: blur(16px) saturate(145%);
            -webkit-backdrop-filter: blur(16px) saturate(145%);
        }

        .login-box {
            width: 100%;
            border-radius: 22px;
            padding: 2.2rem 2rem 1.9rem;
            background: var(--glass-strong);
            align-self: center;
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, 0.84),
                0 12px 34px rgba(23, 58, 122, 0.1);
        }

        .login-box h2 {
            font-size: 34px;
            margin-bottom: 1.2rem;
            line-height: 1.2;
            color: #0f172a;
            text-align: center;
            letter-spacing: 0.02em;
        }

        .login-box form {
            border: 1px solid rgba(255, 255, 255, 0.72);
            border-radius: 16px;
            padding: 1.15rem 1.15rem 1.2rem;
            margin-top: 0;
            background: rgba(255, 255, 255, 0.68);
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
        }

        .login-box .input-group {
            margin-bottom: 0.86rem;
        }

        .login-box .input-group label {
            color: #334155;
            letter-spacing: 0.2px;
        }

        .login-box .input {
            border: 1.5px solid rgba(122, 143, 176, 0.72);
            background: rgba(255, 255, 255, 0.96);
            box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.05);
        }

        .login-box .input::placeholder {
            color: #94a3b8;
        }

        .login-box #login-btn {
            margin-top: 0.28rem;
            height: 44px;
        }

        .login-record {
            position: absolute;
            left: 50%;
            bottom: 18px;
            transform: translateX(-50%);
            z-index: 2;
            width: auto;
            text-align: center;
            font-size: 12px;
            line-height: 1.5;
            color: rgba(71, 85, 105, 0.82);
            letter-spacing: 0.02em;
            text-decoration: none;
        }

        .login-record:hover {
            color: #1d4ed8;
        }

        .login-box .input:focus {
            border-color: #3b82f6;
            box-shadow:
                0 0 0 3px rgba(59, 130, 246, 0.2),
                0 6px 14px rgba(37, 99, 235, 0.12);
        }

        #app-layout {
            display: none;
            min-height: 100vh;
            width: 100%;
            align-items: stretch;
            overflow-x: hidden;
        }

        .sidebar {
            width: 294px;
            flex: 0 0 294px;
            border-right: 1px solid rgba(255, 255, 255, 0.76);
            padding: 1.28rem 1.05rem 1.1rem;
            display: flex;
            flex-direction: column;
            background:
                radial-gradient(circle at 18% 0%, rgba(255, 255, 255, 0.92), transparent 31%),
                linear-gradient(175deg, rgba(247, 251, 255, 0.94), rgba(232, 242, 255, 0.78));
            box-shadow: inset -1px 0 0 rgba(255, 255, 255, 0.62), 10px 0 34px rgba(43, 76, 134, 0.05);
        }

        .logo {
            margin-bottom: 1.35rem;
            padding: 0.2rem 0.4rem;
            line-height: 1.22;
            letter-spacing: 0.02em;
            text-align: left;
        }

        .logo-main {
            display: block;
            font-size: 25px;
            font-weight: 850;
            color: #17233b;
            max-width: 100%;
        }

        .logo-sub {
            display: none;
            margin-top: 0.2rem;
            font-size: 17px;
            color: #334155;
            white-space: nowrap;
        }

        .nav-item {
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.42rem;
            color: var(--text-muted);
            text-decoration: none;
            border: 1px solid transparent;
            border-radius: 12px;
            padding: 0.7rem 0.92rem;
            margin-bottom: 0.56rem;
            cursor: pointer;
            transition: all 0.18s ease;
            text-align: center;
            width: 100%;
            font: inherit;
            background: transparent;
        }

        .nav-item:hover {
            color: var(--text-main);
            background: rgba(255, 255, 255, 0.66);
            border-color: rgba(255, 255, 255, 0.74);
            box-shadow: 0 8px 18px rgba(26, 60, 124, 0.08);
        }

        .nav-item.active {
            color: #1f48d2;
            background: linear-gradient(135deg, rgba(255, 255, 255, 0.82), rgba(228, 239, 255, 0.56));
            border-color: rgba(255, 255, 255, 0.84);
            box-shadow:
                inset 3px 0 0 var(--primary),
                0 12px 24px rgba(67, 99, 207, 0.15);
        }

        .nav-badge {
            min-width: 20px;
            height: 20px;
            padding: 0 0.38rem;
            border-radius: 999px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            color: #fff;
            background: #ef4444;
            font-size: 11px;
            font-weight: 700;
            line-height: 1;
            box-shadow: 0 8px 16px rgba(239, 68, 68, 0.24);
        }

        .nav-item:focus-visible {
            outline: 3px solid rgba(48, 91, 255, 0.34);
            outline-offset: 2px;
        }

        .nav-group,
        .nav-group-items {
            display: contents;
        }

        .nav-group-toggle {
            display: none;
        }

        .sidebar.grouped-nav nav {
            display: grid;
            gap: 0.62rem;
            flex: 1 1 auto;
            align-content: start;
            min-height: 0;
            overflow-y: auto;
            padding: 0.12rem 0.12rem 0.75rem;
            scrollbar-width: thin;
            scrollbar-color: rgba(120, 146, 187, 0.32) transparent;
        }

        .sidebar.grouped-nav nav::-webkit-scrollbar {
            width: 5px;
        }

        .sidebar.grouped-nav nav::-webkit-scrollbar-thumb {
            border-radius: 999px;
            background: rgba(120, 146, 187, 0.28);
        }

        .sidebar.grouped-nav .nav-primary {
            justify-content: flex-start;
            min-height: 54px;
            margin: 0;
            padding: 0.72rem 0.82rem;
            border-color: rgba(195, 213, 241, 0.82);
            border-radius: 16px;
            background: rgba(255, 255, 255, 0.7);
            color: #324866;
            font-size: 16px;
            font-weight: 800;
            text-align: left;
            box-shadow: 0 8px 20px rgba(54, 87, 145, 0.06);
        }

        .sidebar.grouped-nav .nav-primary::before,
        .sidebar.grouped-nav .nav-group-toggle::before {
            width: 32px;
            height: 32px;
            flex: 0 0 32px;
            border-radius: 10px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            color: #2f6fff;
            background: linear-gradient(145deg, rgba(47, 111, 255, 0.15), rgba(98, 167, 255, 0.08));
            font-size: 13px;
            font-weight: 900;
            line-height: 1;
            box-shadow: inset 0 0 0 1px rgba(47, 111, 255, 0.12);
        }

        .sidebar.grouped-nav .nav-primary::before {
            content: '概';
        }
        .sidebar.grouped-nav .nav-primary[data-target="appointments"]::before {
            content: '约';
        }

        .sidebar.grouped-nav .nav-primary.active {
            color: #1f48d2;
            border-color: rgba(94, 139, 255, 0.38);
            background: linear-gradient(135deg, rgba(255, 255, 255, 0.94), rgba(226, 238, 255, 0.88));
            box-shadow: inset 4px 0 0 var(--primary), 0 13px 26px rgba(50, 94, 197, 0.13);
        }

        .sidebar.grouped-nav .nav-group {
            display: block;
            margin: 0;
            padding: 0.3rem;
            border: 1px solid rgba(196, 214, 241, 0.74);
            border-radius: 17px;
            background: rgba(255, 255, 255, 0.48);
            box-shadow: 0 8px 22px rgba(54, 87, 145, 0.045);
            transition: border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
        }

        .sidebar.grouped-nav .nav-group.has-active {
            border-color: rgba(83, 131, 255, 0.38);
            background: rgba(245, 249, 255, 0.82);
            box-shadow: 0 11px 25px rgba(47, 91, 185, 0.08);
        }

        .sidebar.grouped-nav .nav-group-toggle {
            width: 100%;
            min-height: 50px;
            margin: 0;
            padding: 0.55rem 0.62rem;
            border: 1px solid transparent;
            border-radius: 13px;
            display: flex;
            align-items: center;
            gap: 0.68rem;
            color: #314763;
            background: transparent;
            font: inherit;
            font-size: 15.5px;
            font-weight: 850;
            text-align: left;
            cursor: pointer;
            transition: all 0.18s ease;
        }

        .sidebar.grouped-nav .nav-group[data-nav-group="customers"] .nav-group-toggle::before { content: '客'; }
        .sidebar.grouped-nav .nav-group[data-nav-group="sales"] .nav-group-toggle::before { content: '销'; color: #8a4fd0; background: rgba(139, 92, 246, 0.11); box-shadow: inset 0 0 0 1px rgba(139, 92, 246, 0.12); }
        .sidebar.grouped-nav .nav-group[data-nav-group="entry-performance"] .nav-group-toggle::before { content: '绩'; color: #118265; background: rgba(18, 163, 119, 0.1); box-shadow: inset 0 0 0 1px rgba(18, 163, 119, 0.12); }
        .sidebar.grouped-nav .nav-group[data-nav-group="content-spend"] .nav-group-toggle::before { content: '投'; color: #b36a00; background: rgba(245, 158, 11, 0.11); box-shadow: inset 0 0 0 1px rgba(245, 158, 11, 0.14); }
        .sidebar.grouped-nav .nav-group[data-nav-group="system"] .nav-group-toggle::before { content: '设'; color: #52647e; background: rgba(100, 116, 139, 0.1); box-shadow: inset 0 0 0 1px rgba(100, 116, 139, 0.12); }

        .sidebar.grouped-nav .nav-group-toggle:hover,
        .sidebar.grouped-nav .nav-group.has-active .nav-group-toggle {
            color: #214bbf;
            border-color: rgba(184, 205, 239, 0.8);
            background: rgba(255, 255, 255, 0.72);
        }

        .nav-group-title {
            flex: 1 1 auto;
            min-width: 0;
        }

        .nav-group-alert {
            min-width: 20px;
            height: 20px;
            padding: 0 0.38rem;
            border-radius: 999px;
            display: none;
            align-items: center;
            justify-content: center;
            color: #fff;
            background: #ef4444;
            font-size: 11px;
            line-height: 1;
            box-shadow: 0 7px 14px rgba(239, 68, 68, 0.22);
        }

        .nav-group-chevron {
            width: 8px;
            height: 8px;
            flex: 0 0 auto;
            border-right: 2px solid currentColor;
            border-bottom: 2px solid currentColor;
            transform: rotate(45deg) translate(-1px, -1px);
            transition: transform 0.18s ease;
        }

        .sidebar.grouped-nav .nav-group.is-collapsed .nav-group-chevron {
            transform: rotate(-45deg) translate(1px, -1px);
        }

        .sidebar.grouped-nav .nav-group-items {
            display: block;
            margin: 0.18rem 0.38rem 0.28rem 1.58rem;
            padding: 0.08rem 0 0.02rem 0.58rem;
            border-left: 1px solid rgba(150, 176, 217, 0.42);
        }

        .sidebar.grouped-nav .nav-group.is-collapsed .nav-group-items {
            display: none;
        }

        .sidebar.grouped-nav .nav-group-items .nav-item {
            justify-content: flex-start;
            min-height: 44px;
            margin-bottom: 0.16rem;
            padding: 0.62rem 0.7rem;
            border-radius: 11px;
            color: #50637e;
            font-size: 15px;
            font-weight: 650;
            line-height: 1.35;
            text-align: left;
        }

        .sidebar.grouped-nav .nav-group-items .nav-item::before {
            content: '';
            width: 6px;
            height: 6px;
            flex: 0 0 6px;
            border-radius: 999px;
            background: rgba(107, 128, 160, 0.38);
            transition: transform 0.18s ease, background 0.18s ease;
        }

        .sidebar.grouped-nav .nav-group-items .nav-item:hover {
            color: #263d5c;
            border-color: rgba(197, 215, 242, 0.82);
            background: rgba(255, 255, 255, 0.76);
            box-shadow: 0 7px 16px rgba(49, 80, 133, 0.07);
        }

        .sidebar.grouped-nav .nav-group-items .nav-item.active {
            color: #1f4ecf;
            border-color: rgba(112, 151, 249, 0.34);
            background: linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(224, 237, 255, 0.86));
            box-shadow: 0 9px 19px rgba(47, 96, 199, 0.11);
        }

        .sidebar.grouped-nav .nav-group-items .nav-item.active::before {
            background: #2f6fff;
            transform: scale(1.35);
            box-shadow: 0 0 0 4px rgba(47, 111, 255, 0.09);
        }

        .user-profile {
            margin-top: auto;
            padding: 0.72rem;
            border: 1px solid rgba(196, 214, 241, 0.72);
            border-radius: 15px;
            background: rgba(255, 255, 255, 0.58);
            display: flex;
            align-items: center;
            gap: 0.72rem;
            box-shadow: 0 8px 20px rgba(54, 87, 145, 0.05);
        }

        .user-profile .avatar,
        .user-profile .text-action {
            flex: 0 0 auto;
        }

        .user-profile > div:not(.avatar) {
            min-width: 0;
            flex: 1 1 auto;
        }

        #user-name,
        #user-role-label {
            display: block;
            max-width: 100%;
            overflow: hidden;
            white-space: nowrap;
            text-overflow: ellipsis;
        }

        .avatar {
            width: 36px;
            height: 36px;
            border-radius: 11px;
            border: 1px solid rgba(255, 255, 255, 0.74);
            background: linear-gradient(145deg, rgba(255, 255, 255, 0.8), rgba(212, 229, 255, 0.62));
            color: var(--primary);
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: 700;
        }

        .main-content {
            flex: 1;
            height: 100vh; } @media screen and (min-width: 1081px) { #app-layout { height: 100vh; } .sidebar { min-height: 0; overflow-y: auto; scrollbar-width: thin; } .sidebar.grouped-nav nav { min-height: 180px; } } .main-content {
            overflow-y: auto;
            overflow-x: hidden;
            padding: 1.48rem 1.9rem;
            min-width: 0;
            position: relative;
            isolation: isolate;
        }

        .main-content::before {
            content: "";
            position: fixed;
            inset: 0;
            pointer-events: none;
            z-index: 0;
            background:
                radial-gradient(700px 390px at var(--cursor-x) calc(var(--cursor-y) + var(--scroll-depth)), rgba(255, 255, 255, 0.42), transparent 74%),
                radial-gradient(680px 360px at calc(8% - var(--scroll-depth)) calc(100% - var(--scroll-depth)), rgba(184, 226, 255, 0.16), transparent 76%);
            opacity: 0.8;
        }

        .main-content > * {
            position: relative;
            z-index: 1;
        }

        .section {
            display: none;
            width: 100%;
            max-width: 100%;
            min-width: 0;
        }

        .section.active {
            display: block;
            animation: sectionRise 0.32s ease;
            width: 100%;
            max-width: 100%;
            min-width: 0;
        }

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

        .header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.8rem;
            border-bottom: 1px solid rgba(255, 255, 255, 0.74);
            margin-bottom: 1.2rem;
            padding-bottom: 0.86rem;
        }

        .header h2 {
            font-size: 33px;
            font-weight: 700;
            letter-spacing: 0.02em;
        }

        .header-actions {
            display: flex;
            align-items: center;
            gap: 0.56rem;
            flex-wrap: wrap;
            justify-content: flex-end;
        }

        .range-switch {
            display: inline-flex;
            align-items: center;
            gap: 0.3rem;
            padding: 0.24rem;
            border-radius: 999px;
            border: 1px solid rgba(255, 255, 255, 0.74);
            background: rgba(255, 255, 255, 0.72);
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
            box-shadow: 0 8px 20px rgba(18, 50, 106, 0.08);
        }

        .range-switch.compact {
            transform: scale(0.95);
            transform-origin: right center;
        }

        .month-picker {
            min-width: 132px;
            padding: 0.52rem 0.78rem;
            border: 1.5px solid var(--field-border);
            border-radius: 999px;
            background: linear-gradient(180deg, #ffffff 0%, var(--field-bg) 100%);
            color: var(--text-main);
            font-size: 14px;
            box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.06);
        }

        .month-picker.hidden {
            display: none;
        }

        .range-prefix {
            font-size: 12px;
            color: var(--text-muted);
            padding-left: 0.38rem;
        }

        .range-tab {
            border: 0;
            border-radius: 999px;
            padding: 0.34rem 0.62rem;
            background: transparent;
            color: #334155;
            font-size: 12px;
            font-weight: 500;
            cursor: pointer;
            transition: all 0.2s ease;
        }

        .range-tab:hover {
            background: rgba(255, 255, 255, 0.8);
        }

        .range-tab.active {
            background: rgba(37, 99, 235, 0.95);
            color: #fff;
            box-shadow: 0 8px 16px rgba(37, 99, 235, 0.34);
        }

        .card {
            border-radius: 18px;
            padding: 1.08rem;
            min-width: 0;
            border: 1px solid rgba(255, 255, 255, 0.78);
            background: linear-gradient(155deg, rgba(255, 255, 255, 0.74), rgba(236, 245, 255, 0.52));
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, 0.84),
                0 12px 30px rgba(18, 53, 116, 0.09);
            transition: transform 0.18s ease, box-shadow 0.18s ease;
        }

        .card:hover {
            transform: translateY(-1px);
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, 0.88),
                0 16px 36px rgba(18, 53, 116, 0.11);
        }

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

        .stats-grid > .card {
            min-height: 136px;
            justify-content: flex-start;
        }

        .overview-card {
            position: relative;
            overflow: hidden;
            padding: 1rem 1.02rem 0.96rem;
            border: 1px solid rgba(206, 220, 244, 0.76);
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, 0.9),
                0 18px 34px rgba(16, 55, 120, 0.08);
        }

        .overview-card::after {
            content: '';
            position: absolute;
            inset: auto -18px -30px auto;
            width: 110px;
            height: 110px;
            border-radius: 50%;
            background: radial-gradient(circle, rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0));
            pointer-events: none;
        }

        .overview-card.tone-primary {
            background: linear-gradient(160deg, rgba(237, 245, 255, 0.96), rgba(255, 255, 255, 0.88));
        }

        .overview-card.tone-danger {
            background: linear-gradient(160deg, rgba(255, 243, 243, 0.96), rgba(255, 255, 255, 0.9));
        }

        .overview-card.tone-success {
            background: linear-gradient(160deg, rgba(241, 253, 245, 0.96), rgba(255, 255, 255, 0.9));
        }

        .overview-card.tone-neutral {
            background: linear-gradient(160deg, rgba(245, 248, 255, 0.96), rgba(255, 255, 255, 0.9));
        }

        .stat-title {
            color: var(--text-muted);
            margin-bottom: 0.54rem;
            font-size: 13px;
            font-weight: 600;
        }

        .stat-value {
            font-size: 34px;
            font-weight: 700;
            line-height: 1.05;
            letter-spacing: -0.02em;
            font-variant-numeric: tabular-nums;
        }

        .stat-caption {
            margin-top: 0.56rem;
            font-size: 12px;
            color: var(--text-muted);
        }

        .stat-structure-split {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.7rem;
            margin-top: 0.2rem;
        }

        .stat-structure-item {
            padding: 0.8rem 0.9rem;
            border-radius: 16px;
            border: 1px solid rgba(143, 168, 216, 0.26);
            background: rgba(255, 255, 255, 0.56);
            display: flex;
            flex-direction: column;
            gap: 0.2rem;
        }

        .stat-structure-item span {
            font-size: 12px;
            color: var(--text-muted);
        }

        .stat-structure-item strong {
            font-size: 26px;
            line-height: 1.1;
        }

        .a-class-panel {
            margin-bottom: 0.8rem;
        }

        .a-class-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.6rem;
            margin-bottom: 0.6rem;
        }

        .a-class-head h3 {
            font-size: 18px;
            margin-bottom: 0.2rem;
        }

        .a-class-week {
            font-size: 12px;
            color: var(--text-muted);
        }

        .a-class-alert {
            border-radius: 12px;
            border: 1px solid rgba(239, 68, 68, 0.36);
            background: rgba(254, 242, 242, 0.72);
            color: #991b1b;
            font-size: 13px;
            padding: 0.56rem 0.72rem;
            margin-bottom: 0.58rem;
        }

        .a-class-layout {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.7rem;
            align-items: stretch;
        }

        .a-class-block {
            border: 1px solid rgba(255, 255, 255, 0.82);
            border-radius: 12px;
            padding: 0.66rem;
            background: rgba(255, 255, 255, 0.48);
            min-height: 0;
            display: flex;
            flex-direction: column;
            height: 100%;
        }

        .a-class-block.order-block {
            display: grid;
            grid-template-rows: auto minmax(0, 1fr) auto auto;
            align-content: start;
        }

        .a-class-block.progress-block {
            display: grid;
            grid-template-rows: auto auto minmax(0, 1fr);
            align-content: start;
        }

        .a-class-subtitle {
            font-size: 13px;
            color: var(--text-muted);
            margin-bottom: 0.52rem;
        }

        .a-class-owner-list {
            display: grid;
            gap: 0.42rem;
            margin-bottom: 0.6rem;
            align-content: start;
            min-height: calc(var(--a-class-display-rows, 5) * 48px + (var(--a-class-display-rows, 5) - 1) * 0.42rem);
        }

        .a-class-owner-add {
            display: grid;
            grid-template-columns: 1fr 1fr auto;
            gap: 0.42rem;
            margin-bottom: 0.6rem;
            align-items: center;
        }

        .a-class-owner-add .btn {
            height: 38px;
            min-width: 78px;
        }

        .a-class-owner-item {
            display: grid;
            grid-template-columns: 34px minmax(0, 1fr) minmax(290px, auto);
            align-items: center;
            gap: 0.5rem;
            border: 1px solid rgba(179, 197, 228, 0.52);
            border-radius: 10px;
            background: rgba(255, 255, 255, 0.74);
            padding: 0.44rem 0.56rem;
            font-size: 13px;
            min-height: 48px;
        }

        .a-class-owner-rank {
            color: var(--text-muted);
            width: 34px;
            text-align: center;
            font-variant-numeric: tabular-nums;
        }

        .a-class-owner-name {
            font-weight: 600;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .a-class-owner-actions {
            display: flex;
            justify-content: flex-end;
            align-items: center;
            gap: 0.42rem;
            min-width: 0;
            flex-wrap: nowrap;
        }

        .a-class-owner-actions .btn {
            height: 30px;
            padding: 0.18rem 0.56rem;
            font-size: 12px;
            box-shadow: none;
            flex: 0 0 auto;
        }

        .a-class-owner-actions .btn:disabled {
            opacity: 0.52;
            cursor: not-allowed;
        }

        .a-class-owner-button-group {
            display: inline-flex;
            align-items: center;
            gap: 0.28rem;
            flex: 0 0 auto;
            flex-wrap: nowrap;
        }

        .a-class-progress-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.52rem;
            margin-bottom: 0.7rem;
        }

        .a-class-kpi {
            border-radius: 10px;
            border: 1px solid rgba(179, 197, 228, 0.48);
            background: rgba(255, 255, 255, 0.74);
            padding: 0.56rem 0.66rem;
            min-height: 88px;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        .a-class-kpi label {
            display: block;
            font-size: 12px;
            color: var(--text-muted);
            margin-bottom: 0.28rem;
        }

        .a-class-kpi b {
            font-size: 17px;
            line-height: 1.25;
            font-variant-numeric: tabular-nums;
        }

        .a-class-kpi-next {
            justify-content: flex-start;
        }

        .a-class-kpi-value {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            align-items: center;
            gap: 0.62rem;
            min-height: 42px;
        }

        .a-class-next-owner {
            display: inline-flex;
            align-items: center;
            min-height: 36px;
            padding: 0 0.72rem;
            border-radius: 10px;
            background: rgba(244, 248, 255, 0.92);
            border: 1px solid rgba(214, 225, 242, 0.86);
            color: #0f172a;
            font-size: 18px;
            font-weight: 700;
            line-height: 1;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .a-class-quick-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 92px;
            height: 32px;
            padding: 0 0.78rem;
            border: 1px solid rgba(96, 144, 255, 0.3);
            border-radius: 999px;
            background: rgba(239, 245, 255, 0.96);
            color: #2f6fff;
            font-size: 12px;
            font-weight: 600;
            letter-spacing: 0.01em;
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
            white-space: nowrap;
        }

        .a-class-quick-btn:hover {
            background: rgba(229, 239, 255, 0.98);
            transform: translateY(-1px);
        }

        .a-class-quick-btn:disabled {
            opacity: 0.5;
            cursor: not-allowed;
            transform: none;
            box-shadow: none;
        }

        .a-class-owner-stats {
            display: grid;
            gap: 0.42rem;
            align-content: start;
            min-height: calc(var(--a-class-display-rows, 5) * 48px + (var(--a-class-display-rows, 5) - 1) * 0.42rem);
        }

        .a-class-owner-stat {
            display: grid;
            grid-template-columns: 76px minmax(0, 1fr);
            align-items: center;
            gap: 0.72rem;
            font-size: 12px;
            color: #334155;
            border: 1px solid rgba(179, 197, 228, 0.42);
            border-radius: 10px;
            background: rgba(255, 255, 255, 0.64);
            padding: 0.46rem 0.58rem;
            min-height: 48px;
        }

        .a-class-owner-stat-name {
            font-weight: 600;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            text-align: left;
        }

        .a-class-owner-meta {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 0.42rem;
            min-width: 0;
        }

        .a-class-block.order-block .a-class-owner-list,
        .a-class-block.progress-block .a-class-owner-stats {
            grid-auto-rows: 1fr;
        }

        .a-class-order-summary {
            margin-top: auto;
            border: 1px solid rgba(214, 225, 242, 0.62);
            border-radius: 12px;
            background: linear-gradient(160deg, rgba(248, 251, 255, 0.96), rgba(239, 246, 255, 0.72));
            padding: 0.72rem;
            display: grid;
            gap: 0.62rem;
        }

        .a-class-order-summary-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 0.5rem;
        }

        .a-class-order-summary-item {
            border-radius: 10px;
            border: 1px solid rgba(214, 225, 242, 0.78);
            background: rgba(255, 255, 255, 0.9);
            padding: 0.56rem 0.6rem;
        }

        .a-class-order-summary-item label {
            display: block;
            font-size: 12px;
            color: var(--text-muted);
            margin-bottom: 0.22rem;
        }

        .a-class-order-summary-item b {
            display: block;
            font-size: 18px;
            color: #0f172a;
            line-height: 1.15;
            font-variant-numeric: tabular-nums;
        }

        .a-class-order-note {
            border-radius: 10px;
            border: 1px dashed rgba(179, 197, 228, 0.78);
            background: rgba(255, 255, 255, 0.72);
            padding: 0.62rem 0.7rem;
            font-size: 12px;
            line-height: 1.7;
            color: var(--text-muted);
        }

        .a-class-owner-stat-meta {
            display: inline-flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.4rem;
            min-width: 126px;
            border-radius: 8px;
            background: rgba(244, 248, 255, 0.96);
            border: 1px solid rgba(214, 225, 242, 0.72);
            padding: 0.32rem 0.46rem;
            font-variant-numeric: tabular-nums;
            color: var(--text-muted);
            flex: 0 0 auto;
        }

        .a-class-owner-stat-meta span {
            white-space: nowrap;
        }

        .a-class-owner-stat-meta b {
            color: #0f172a;
            font-weight: 600;
            white-space: nowrap;
        }

        .admin-week-panel {
            margin-bottom: 0.8rem;
            min-height: 214px;
        }

        .staff-progress-card {
            margin-bottom: 0.8rem;
        }

        .dashboard-spend-card {
            padding: 0.76rem 0.84rem;
        }

        .dashboard-spend-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.8rem;
            margin-bottom: 0.56rem;
        }

        .dashboard-spend-head h3 {
            margin: 0;
            font-size: 18px;
        }

        .dashboard-spend-head p {
            margin: 0.18rem 0 0;
            color: var(--text-muted);
            font-size: 12px;
        }

        .dashboard-spend-grid {
            display: grid;
            grid-template-columns: 1.05fr 0.9fr 0.95fr 1fr 0.9fr 1.3fr;
            gap: 0.56rem;
            align-items: end;
        }

        .dashboard-spend-field {
            margin-bottom: 0;
        }

        .dashboard-spend-field label {
            margin-bottom: 0.22rem;
            font-size: 12px;
        }

        .dashboard-spend-actions {
            display: flex;
            justify-content: flex-end;
            gap: 0.5rem;
            flex-wrap: wrap;
            margin-top: 0.54rem;
        }

        .staff-progress-head {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            gap: 0.8rem;
            margin-bottom: 0.9rem;
        }

        .staff-progress-head h3 {
            margin: 0;
            font-size: 20px;
        }

        .staff-progress-head p {
            margin: 0.3rem 0 0;
            color: var(--text-muted);
            font-size: 13px;
        }

        .staff-progress-amount {
            text-align: right;
        }

        .staff-progress-amount strong {
            display: block;
            font-size: 28px;
            line-height: 1;
            color: #0f172a;
        }

        .staff-progress-amount span {
            display: block;
            margin-top: 0.34rem;
            color: var(--text-muted);
            font-size: 12px;
        }

        .staff-progress-section {
            margin-top: 0.8rem;
        }

        .staff-progress-stack {
            display: grid;
            gap: 0.9rem;
            margin-top: 0.86rem;
        }

        .staff-progress-line {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 0.6rem;
            margin-bottom: 0.34rem;
            font-size: 13px;
            color: #334155;
        }

        .staff-progress-track {
            width: 100%;
            height: 10px;
            border-radius: 999px;
            background: rgba(202, 214, 235, 0.62);
            overflow: hidden;
        }

        .staff-progress-track i {
            display: block;
            height: 100%;
            border-radius: inherit;
            background: linear-gradient(90deg, #2d5bff, #5a89ff);
        }

        .staff-progress-track.warm i {
            background: linear-gradient(90deg, #ff9f43, #ff7f50);
        }

        .staff-progress-meta {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.82rem;
            margin-top: 0.95rem;
        }

        .staff-progress-meta.boss-flat-grid {
            grid-template-columns: 1fr;
            gap: 0;
        }

        .staff-progress-meta.boss-flat-grid .staff-progress-meta-grid {
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }

        .staff-progress-meta-group {
            display: grid;
            gap: 0.52rem;
        }

        .staff-progress-meta-title {
            font-size: 12px;
            font-weight: 700;
            color: #607086;
            letter-spacing: 0.02em;
        }

        .staff-progress-meta-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 0.7rem;
        }

        .staff-progress-meta-item {
            min-height: 92px;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            gap: 0.3rem;
            padding: 0.86rem 0.94rem;
            border-radius: 16px;
            background: rgba(255, 255, 255, 0.92);
            border: 1px solid rgba(187, 203, 230, 0.78);
            box-shadow: 0 10px 24px rgba(168, 184, 214, 0.14);
        }

        .staff-progress-meta-item label {
            display: block;
            color: #6b7a90;
            font-size: 12px;
            margin-bottom: 0;
        }

        .staff-progress-meta-item strong {
            font-size: 28px;
            line-height: 1;
            color: #0f172a;
            font-variant-numeric: tabular-nums;
        }

        #admin-performance-progress-card .staff-progress-meta-item {
            min-height: 82px;
            padding: 0.78rem 0.86rem;
        }

        #admin-performance-progress-card .staff-progress-meta-item label {
            font-size: 11px;
        }

        #admin-performance-progress-card .staff-progress-meta-item strong {
            font-size: 18px;
            line-height: 1.15;
        }

        .staff-progress-detail-card {
            margin-top: 0.8rem;
        }

        .staff-progress-detail-headline {
            display: flex;
            align-items: baseline;
            justify-content: space-between;
            gap: 0.8rem;
            margin-bottom: 0.8rem;
        }

        .staff-progress-detail-headline h3 {
            margin: 0;
            font-size: 18px;
        }

        .staff-progress-detail-headline p {
            margin: 0.18rem 0 0;
            color: var(--text-muted);
            font-size: 12px;
        }

        .staff-progress-detail-list {
            display: grid;
            gap: 0.72rem;
        }

        .staff-progress-detail-item {
            padding: 0.95rem 1rem;
            border-radius: 16px;
            background:
                linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(247, 250, 255, 0.92));
            border: 1px solid rgba(191, 206, 232, 0.78);
            box-shadow: 0 10px 24px rgba(172, 188, 215, 0.12);
        }

        .staff-progress-detail-head {
            display: grid;
            grid-template-columns: auto 1fr auto;
            align-items: center;
            gap: 0.72rem;
            margin-bottom: 0.72rem;
        }

        .staff-progress-detail-order {
            width: 34px;
            height: 34px;
            border-radius: 999px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: rgba(45, 91, 255, 0.1);
            color: #2d5bff;
            font-size: 13px;
            font-weight: 700;
            font-variant-numeric: tabular-nums;
        }

        .staff-progress-detail-main {
            display: flex;
            align-items: center;
            gap: 0.58rem;
            min-width: 0;
        }

        .staff-progress-detail-title {
            font-size: 14px;
            font-weight: 700;
            color: #0f172a;
        }

        .staff-progress-detail-owner {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 0.26rem 0.58rem;
            border-radius: 999px;
            background: rgba(45, 91, 255, 0.08);
            color: #2d5bff;
            font-size: 12px;
            font-weight: 600;
            white-space: nowrap;
        }

        .staff-progress-detail-amount {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 0.4rem 0.78rem;
            border-radius: 12px;
            background: rgba(45, 91, 255, 0.08);
            border: 1px solid rgba(45, 91, 255, 0.18);
            font-size: 22px;
            line-height: 1.05;
            font-weight: 700;
            color: #2d5bff;
            font-variant-numeric: tabular-nums;
        }

        .staff-progress-detail-meta {
            display: flex;
            flex-wrap: wrap;
            gap: 0.52rem;
        }

        .staff-progress-detail-chip {
            display: inline-flex;
            align-items: center;
            padding: 0.34rem 0.62rem;
            border-radius: 10px;
            background: rgba(244, 247, 253, 0.92);
            border: 1px solid rgba(204, 214, 232, 0.72);
            color: #607086;
            font-size: 12px;
            line-height: 1.35;
            white-space: nowrap;
        }

        .staff-progress-detail-chip strong {
            margin-left: 0.28rem;
            color: #0f172a;
            font-weight: 600;
        }

        .staff-progress-detail-chip.location {
            white-space: normal;
        }

        .staff-progress-detail-chip.source {
            color: #3157d8;
            border-color: rgba(112, 145, 255, 0.26);
            background: rgba(240, 245, 255, 0.95);
        }

        .staff-progress-detail-chip.count {
            color: #0f766e;
            border-color: rgba(20, 184, 166, 0.18);
            background: rgba(236, 253, 245, 0.96);
        }

        .staff-progress-detail-chip.date {
            color: #5b6578;
        }

        .target-readonly-value {
            display: inline-flex;
            align-items: center;
            gap: 0.42rem;
            min-height: 42px;
            padding: 0.65rem 0.86rem;
            border-radius: 12px;
            background: rgba(244, 247, 253, 0.95);
            border: 1px solid rgba(204, 214, 232, 0.72);
            color: #607086;
            font-size: 13px;
        }

        .target-readonly-value strong {
            color: #0f172a;
            font-size: 14px;
            font-weight: 700;
        }

        @media (max-width: 640px) {
            .staff-progress-detail-head {
                grid-template-columns: 1fr;
                align-items: flex-start;
            }

            .staff-progress-detail-main {
                order: 1;
            }

            .staff-progress-detail-order {
                order: 0;
                width: 30px;
                height: 30px;
                font-size: 12px;
            }

            .staff-progress-detail-amount {
                order: 2;
                width: 100%;
                justify-content: flex-start;
                font-size: 20px;
            }

            .staff-progress-detail-chip {
                white-space: normal;
            }
        }

        .admin-week-grid {
            display: grid;
            grid-template-columns: repeat(5, minmax(0, 1fr));
            gap: 0.56rem;
        }

        .admin-week-kpi {
            border: 1px solid rgba(179, 197, 228, 0.48);
            border-radius: 12px;
            background: rgba(255, 255, 255, 0.72);
            padding: 0.58rem 0.64rem;
        }

        .admin-week-kpi label {
            display: block;
            font-size: 12px;
            color: var(--text-muted);
            margin-bottom: 0.2rem;
        }

        .admin-week-kpi b {
            font-size: 18px;
            line-height: 1.2;
        }

        .dashboard-dual-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.8rem;
            margin-bottom: 0.8rem;
        }

        .admin-overview-head {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            gap: 0.8rem;
            margin-bottom: 0.8rem;
        }

        .admin-overview-subtitle {
            font-size: 13px;
            color: var(--text-muted);
            line-height: 1.6;
        }

        .admin-overview-tag {
            display: inline-flex;
            align-items: center;
            border-radius: 999px;
            padding: 0.36rem 0.7rem;
            background: rgba(45, 91, 255, 0.12);
            color: var(--primary);
            font-size: 12px;
            font-weight: 600;
            white-space: nowrap;
        }

        .performance-summary-grid {
            display: grid;
            grid-template-columns: repeat(6, minmax(0, 1fr));
            gap: 0.65rem;
        }

        .performance-summary-item {
            border-radius: 14px;
            border: 1px solid rgba(179, 197, 228, 0.46);
            background: linear-gradient(160deg, rgba(255, 255, 255, 0.86), rgba(240, 246, 255, 0.68));
            padding: 0.78rem 0.82rem;
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
        }

        .performance-summary-item label {
            display: block;
            font-size: 12px;
            color: var(--text-muted);
            margin-bottom: 0.26rem;
        }

        .performance-summary-item strong {
            display: block;
            font-size: 24px;
            line-height: 1.18;
            font-variant-numeric: tabular-nums;
        }

        .performance-summary-item.tone-primary {
            background: linear-gradient(160deg, rgba(37, 99, 235, 0.14), rgba(255, 255, 255, 0.88));
            border-color: rgba(59, 130, 246, 0.28);
        }

        .performance-summary-item.tone-success {
            background: linear-gradient(160deg, rgba(22, 163, 74, 0.12), rgba(255, 255, 255, 0.88));
            border-color: rgba(74, 222, 128, 0.32);
        }

        .performance-summary-item.tone-warm {
            background: linear-gradient(160deg, rgba(245, 158, 11, 0.12), rgba(255, 255, 255, 0.9));
            border-color: rgba(245, 158, 11, 0.24);
        }

        .chart-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.8rem;
            margin-bottom: 0.8rem;
            width: 100%;
            max-width: 100%;
            min-width: 0;
        }

        .chart-grid > .card {
            min-height: 386px;
        }

        .overview-chart-card {
            padding: 1rem 1.02rem 0.9rem;
            border: 1px solid rgba(201, 217, 244, 0.78);
            background: linear-gradient(160deg, rgba(248, 252, 255, 0.96), rgba(255, 255, 255, 0.88));
        }

        .overview-chart-note {
            margin-bottom: 0.82rem;
            color: var(--text-muted);
            font-size: 13px;
            font-weight: 500;
        }

        .chart-grid.single-chart {
            grid-template-columns: 1fr;
        }

        .performance-table-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.8rem;
            margin-bottom: 0.8rem;
            width: 100%;
            max-width: 100%;
            min-width: 0;
        }

        .metric-table-card {
            overflow: hidden;
            min-height: 458px;
            max-height: 458px;
            display: flex;
            flex-direction: column;
        }

        .delivery-dashboard-card {
            min-height: 0;
            max-height: none;
            padding: 1rem 1.02rem 0.98rem;
            border: 1px solid rgba(201, 217, 244, 0.76);
            background: linear-gradient(160deg, rgba(248, 252, 255, 0.96), rgba(255, 255, 255, 0.9));
        }

        .delivery-dashboard-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.8rem;
            margin-top: 1rem;
            width: 100%;
            max-width: 100%;
            min-width: 0;
        }

        .delivery-dashboard-list {
            display: grid;
            gap: 0.75rem;
        }

        .delivery-quality-card {
            margin-top: 1rem;
        }

        .delivery-quality-list {
            display: grid;
            gap: 0.65rem;
            margin-top: 0.85rem;
        }

        .delivery-quality-row {
            display: grid;
            grid-template-columns: minmax(160px, 1.2fr) repeat(5, minmax(88px, 0.72fr));
            gap: 0.7rem;
            align-items: center;
            padding: 0.75rem 0.85rem;
            border: 1px solid rgba(162, 194, 244, 0.52);
            border-radius: 8px;
            background: rgba(255, 255, 255, 0.56);
        }

        .delivery-quality-name strong,
        .delivery-quality-metric strong {
            display: block;
            color: var(--text-main);
            font-size: 1rem;
        }

        .delivery-quality-name span,
        .delivery-quality-metric span {
            display: block;
            margin-top: 0.16rem;
            color: var(--text-muted);
            font-size: 0.78rem;
        }

        .delivery-quality-metric strong {
            color: var(--primary);
        }

        .beijing-assignment-dashboard {
            display: grid;
            grid-template-columns: minmax(420px, 0.9fr) minmax(520px, 1.1fr);
            align-items: stretch;
            gap: 0.8rem;
            margin-bottom: 0.85rem;
        }

        .beijing-assignment-card {
            display: grid;
            gap: 0.68rem;
            min-width: 0;
            height: 100%;
            align-content: start;
            padding: 0.95rem 1rem;
            border-radius: 14px;
        }

        .beijing-assignment-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.75rem;
        }

        .beijing-assignment-head h3 {
            margin: 0;
            font-size: 17px;
        }

        .beijing-assignment-head p {
            margin: 0.25rem 0 0;
            color: var(--text-muted);
            font-size: 13px;
            line-height: 1.45;
        }

        .beijing-assignment-main-number {
            flex: 0 0 auto;
            min-width: 40px;
            text-align: right;
            font-size: clamp(28px, 2.6vw, 40px);
            line-height: 1;
            font-weight: 800;
            color: var(--primary);
        }

        .beijing-assignment-kpis,
        .beijing-workload-grid {
            display: grid;
            gap: 0.5rem;
        }

        .beijing-assignment-kpis {
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }

        .beijing-workload-section {
            display: grid;
            gap: 0.5rem;
            padding-top: 0.15rem;
        }

        .beijing-workload-title {
            color: var(--text-muted);
            font-size: 12px;
            font-weight: 800;
        }

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

        .beijing-assignment-kpi,
        .beijing-workload-item {
            min-width: 0;
            border: 1px solid var(--border);
            border-radius: 8px;
            padding: 0.58rem 0.66rem;
            background: rgba(255, 255, 255, 0.68);
        }

        .beijing-workload-item {
            padding: 0.52rem 0.6rem;
        }

        .beijing-assignment-kpi strong,
        .beijing-workload-item strong {
            display: block;
            color: var(--text-main);
            font-size: 18px;
            line-height: 1.2;
            overflow-wrap: anywhere;
        }

        .beijing-workload-item strong {
            font-size: 15px;
        }

        .beijing-assignment-kpi span,
        .beijing-workload-item span {
            display: block;
            margin-top: 0.28rem;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.35;
            overflow-wrap: anywhere;
        }

        .beijing-assignment-kpi.alert {
            border-color: rgba(217, 80, 80, 0.24);
            background: rgba(255, 238, 238, 0.72);
        }

        .beijing-assignment-actions {
            display: flex;
            gap: 0.6rem;
            align-items: center;
            flex-wrap: wrap;
        }

        .beijing-assignment-actions .btn {
            min-height: 36px;
            padding: 0.48rem 0.86rem;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            flex: 0 0 auto;
            white-space: nowrap;
        }

        .beijing-round-robin-list {
            display: grid;
            gap: 0.5rem;
        }

        .beijing-round-robin-item {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            align-items: center;
            gap: 0.6rem;
            border: 1px solid var(--border);
            border-radius: 8px;
            padding: 0.52rem 0.66rem;
            background: rgba(255, 255, 255, 0.72);
        }

        .beijing-round-robin-item strong {
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .beijing-round-robin-actions {
            display: flex;
            gap: 0.35rem;
        }

        .beijing-round-robin-actions button {
            min-width: 34px;
            padding: 0.32rem 0.5rem;
            border-radius: 999px;
        }

        .beijing-round-robin-actions .danger {
            color: #c43d4d;
            border-color: rgba(196, 61, 77, 0.24);
            background: rgba(255, 242, 244, 0.88);
        }

        .beijing-round-robin-toolbar {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.7rem;
            margin: 0.8rem 0 0.5rem;
        }

        .beijing-round-robin-toolbar strong {
            min-width: 0;
            font-size: 0.88rem;
        }

        .beijing-round-robin-dirty {
            color: #a15b00;
            font-size: 0.76rem;
            font-weight: 700;
        }

        .beijing-round-robin-pending {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.5rem;
        }

        .beijing-round-robin-pending .beijing-round-robin-item {
            background: rgba(244, 248, 255, 0.82);
        }

        .beijing-round-robin-empty {
            padding: 0.68rem 0.75rem;
            border: 1px dashed rgba(75, 116, 194, 0.22);
            border-radius: 8px;
            color: var(--muted);
            font-size: 0.8rem;
            line-height: 1.5;
        }

        @media (max-width: 760px) {
            .beijing-round-robin-pending {
                grid-template-columns: minmax(0, 1fr);
            }
        }

        .beijing-assignment-row-overdue {
            background: rgba(255, 244, 232, 0.82) !important;
        }

        .beijing-pending-chip {
            display: inline-flex;
            align-items: center;
            gap: 0.25rem;
            margin-top: 0.28rem;
            padding: 0.18rem 0.45rem;
            border-radius: 999px;
            color: #a14a00;
            background: rgba(255, 173, 72, 0.16);
            font-size: 11px;
            font-weight: 700;
        }

        .boss-command-center {
            display: grid;
            gap: 0.85rem;
            margin-bottom: 0.9rem;
        }

        .boss-command-grid {
            display: grid;
            grid-template-columns: minmax(520px, 1.08fr) minmax(420px, 0.92fr);
            gap: 0.85rem;
            align-items: stretch;
        }

        .boss-overview-grid {
            align-items: start;
        }

        .boss-command-column {
            display: grid;
            align-content: start;
            gap: 0.85rem;
            min-width: 0;
        }

        .boss-command-card {
            padding: 1rem 1.02rem;
            border: 1px solid rgba(201, 217, 244, 0.78);
            background: linear-gradient(160deg, rgba(248, 252, 255, 0.96), rgba(255, 255, 255, 0.9));
        }

        .boss-side-card {
            display: flex;
            flex-direction: column;
        }

        .boss-summary-grid {
            display: grid;
            grid-template-columns: repeat(6, minmax(0, 1fr));
            gap: 0.6rem;
            margin-top: 0.85rem;
        }

        .boss-summary-item,
        .boss-alert-item {
            min-width: 0;
            border: 1px solid rgba(198, 214, 240, 0.72);
            border-radius: 12px;
            padding: 0.74rem 0.78rem;
            background: rgba(255, 255, 255, 0.78);
        }

        .boss-summary-item label,
        .boss-alert-item span,
        .boss-sales-meta,
        .boss-round-meta {
            display: block;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.35;
        }

        .boss-summary-item strong {
            display: block;
            margin-top: 0.24rem;
            font-size: 22px;
            line-height: 1.18;
            font-variant-numeric: tabular-nums;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .boss-sales-list,
        .boss-round-list,
        .boss-alert-list {
            display: grid;
            gap: 0.58rem;
            margin-top: 0.75rem;
        }

        .boss-sales-row {
            display: grid;
            grid-template-columns: 34px minmax(118px, 0.62fr) minmax(0, 2.38fr);
            align-items: center;
            gap: 0.48rem;
            min-height: 58px;
            padding: 0.62rem 0.72rem;
            border: 1px solid rgba(214, 225, 242, 0.72);
            border-radius: 12px;
            background: rgba(255, 255, 255, 0.76);
        }

        .boss-sales-rank {
            width: 30px;
            height: 30px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border-radius: 999px;
            background: rgba(47, 111, 255, 0.12);
            color: var(--primary);
            font-size: 13px;
            font-weight: 800;
        }

        .boss-sales-name strong,
        .boss-round-head strong {
            display: block;
            font-size: 15px;
            line-height: 1.25;
            overflow-wrap: anywhere;
        }

        .boss-sales-metrics {
            display: grid;
            grid-template-columns: repeat(7, minmax(0, 1fr));
            gap: 0.28rem;
            align-items: center;
            min-width: 0;
        }

        .boss-sales-metric {
            text-align: center;
            color: var(--text-main);
            font-size: 11px;
            line-height: 1.25;
            min-width: 0;
            overflow-wrap: anywhere;
        }

        .boss-sales-metric b {
            display: block;
            font-size: 14px;
            color: var(--primary);
            font-variant-numeric: tabular-nums;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .boss-round-card {
            display: grid;
            gap: 0.62rem;
            padding: 0.74rem;
            border-radius: 12px;
            border: 1px solid rgba(214, 225, 242, 0.72);
            background: rgba(255, 255, 255, 0.76);
        }

        .boss-round-head {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            gap: 0.6rem;
            align-items: start;
        }

        .boss-round-next {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 30px;
            padding: 0.28rem 0.62rem;
            border-radius: 999px;
            background: rgba(47, 111, 255, 0.12);
            color: var(--primary);
            font-size: 12px;
            font-weight: 800;
            white-space: nowrap;
        }

        .boss-round-order {
            display: flex;
            gap: 0.35rem;
            flex-wrap: wrap;
        }

        .boss-round-chip {
            max-width: 100%;
            padding: 0.26rem 0.5rem;
            border-radius: 999px;
            background: rgba(238, 244, 255, 0.98);
            border: 1px solid rgba(198, 214, 240, 0.7);
            color: #29446b;
            font-size: 12px;
            font-weight: 700;
            overflow-wrap: anywhere;
        }

        .boss-city-panel {
            margin-top: 0.8rem;
            padding: 0.82rem;
            border-radius: 14px;
            border: 1px solid rgba(196, 214, 242, 0.74);
            background: linear-gradient(160deg, rgba(247, 251, 255, 0.96), rgba(255, 255, 255, 0.86));
        }

        .boss-city-head {
            display: flex;
            justify-content: space-between;
            gap: 0.8rem;
            align-items: flex-start;
            margin-bottom: 0.68rem;
        }

        .boss-city-head strong {
            display: block;
            font-size: 15px;
            line-height: 1.25;
        }

        .boss-city-head span {
            display: block;
            margin-top: 0.18rem;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.35;
        }

        .boss-city-total-roi {
            color: var(--primary);
            font-size: 20px;
            font-weight: 800;
            line-height: 1;
            white-space: nowrap;
            font-variant-numeric: tabular-nums;
        }

        .boss-city-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 0.58rem;
        }

        .boss-city-card {
            min-width: 0;
            padding: 0.68rem;
            border-radius: 13px;
            border: 1px solid rgba(214, 225, 242, 0.74);
            background: rgba(255, 255, 255, 0.78);
        }

        .boss-city-card-head {
            display: flex;
            justify-content: space-between;
            gap: 0.5rem;
            align-items: center;
            margin-bottom: 0.58rem;
        }

        .boss-city-card-head strong {
            font-size: 15px;
            line-height: 1.2;
        }

        .boss-city-card-head b {
            color: var(--primary);
            font-size: 15px;
            font-variant-numeric: tabular-nums;
        }

        .boss-city-metrics {
            display: grid;
            gap: 0.38rem;
        }

        .boss-city-metric {
            display: flex;
            justify-content: space-between;
            gap: 0.6rem;
            align-items: baseline;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.35;
        }

        .boss-city-metric b {
            color: #102044;
            font-size: 13px;
            font-variant-numeric: tabular-nums;
            text-align: right;
            white-space: nowrap;
        }

        .boss-conversion-panel {
            margin-top: 0.8rem;
            padding: 0.82rem;
            border-radius: 14px;
            border: 1px solid rgba(196, 214, 242, 0.74);
            background: linear-gradient(160deg, rgba(244, 249, 255, 0.94), rgba(255, 255, 255, 0.82));
        }

        .boss-conversion-head {
            display: flex;
            justify-content: space-between;
            gap: 0.8rem;
            align-items: flex-start;
            margin-bottom: 0.72rem;
        }

        .boss-conversion-head > div:first-child {
            flex: 1 1 auto;
            min-width: 0;
        }

        .boss-conversion-head strong {
            display: block;
            font-size: 15px;
            line-height: 1.25;
        }

        .boss-conversion-head span {
            display: block;
            margin-top: 0.18rem;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.35;
        }

        .boss-conversion-rate {
            flex: 0 0 auto;
            color: var(--primary);
            font-size: 22px;
            font-weight: 800;
            line-height: 1;
            white-space: nowrap;
            font-variant-numeric: tabular-nums;
        }

        .boss-conversion-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 0.5rem;
        }

        .boss-conversion-item {
            min-width: 0;
            padding: 0.58rem 0.64rem;
            border-radius: 12px;
            border: 1px solid rgba(214, 225, 242, 0.74);
            background: rgba(255, 255, 255, 0.76);
        }

        .boss-conversion-item label {
            display: block;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.3;
        }

        .boss-conversion-item strong {
            display: block;
            margin-top: 0.2rem;
            color: #102044;
            font-size: 18px;
            line-height: 1.15;
            font-variant-numeric: tabular-nums;
            overflow-wrap: anywhere;
        }

        .boss-conversion-city-list {
            display: grid;
            gap: 0.44rem;
            margin-top: 0.64rem;
        }

        .boss-conversion-city {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            gap: 0.5rem;
            align-items: center;
            color: #29446b;
            font-size: 12px;
            line-height: 1.4;
        }

        .boss-conversion-city b {
            color: var(--primary);
            font-size: 13px;
            font-variant-numeric: tabular-nums;
        }

        .boss-conversion-note {
            margin-top: 0.62rem;
            padding-top: 0.58rem;
            border-top: 1px dashed rgba(174, 194, 225, 0.7);
            color: var(--text-muted);
            font-size: 11px;
            line-height: 1.45;
        }

        .boss-alert-item {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            gap: 0.7rem;
            align-items: center;
        }

        .boss-alert-item strong {
            overflow-wrap: anywhere;
        }

        .sales-management-page {
            display: grid;
            gap: 0.9rem;
        }

        .sales-management-summary-grid {
            display: grid;
            grid-template-columns: repeat(8, minmax(0, 1fr));
            gap: 0.72rem;
        }

        .sales-management-kpi {
            min-width: 0;
            min-height: 90px;
            padding: 0.82rem 0.88rem;
            border: 1px solid rgba(198, 214, 240, 0.78);
            border-radius: 14px;
            background: rgba(255, 255, 255, 0.74);
            display: grid;
            align-content: center;
            gap: 0.22rem;
        }

        .sales-management-kpi label {
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.35;
        }

        .boss-sales-plan-reason {
            display: block;
            margin-top: 0.28rem;
            color: #42618f;
            font-size: 12px;
            line-height: 1.4;
            overflow-wrap: anywhere;
        }

        .sales-management-kpi strong {
            color: #102044;
            font-size: 23px;
            line-height: 1.15;
            font-variant-numeric: tabular-nums;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .sales-management-kpi span {
            color: var(--text-muted);
            font-size: 11px;
            line-height: 1.3;
        }

        .sales-management-layout {
            display: grid;
            grid-template-columns: minmax(620px, 1.34fr) minmax(320px, 0.66fr);
            gap: 0.9rem;
            align-items: stretch;
        }

        .sales-management-layout > *,
        .sales-management-side-stack,
        .sales-management-profile {
            min-width: 0;
        }

        .sales-management-panel {
            padding: 1rem;
            border: 1px solid rgba(201, 217, 244, 0.78);
            background: linear-gradient(160deg, rgba(248, 252, 255, 0.96), rgba(255, 255, 255, 0.88));
        }

        .sales-management-side-stack {
            display: grid;
            gap: 0.9rem;
        }

        .sales-management-filters {
            display: grid;
            grid-template-columns: minmax(140px, 0.75fr) minmax(170px, 0.9fr) minmax(200px, 1.35fr);
            gap: 0.52rem;
            margin: 0.78rem 0 0.68rem;
        }

        .sales-management-table-wrap {
            overflow-x: auto;
            border-radius: 14px;
        }

        .sales-management-table {
            width: 100%;
            border-collapse: separate;
            border-spacing: 0 0.5rem;
            min-width: 0;
            table-layout: fixed;
        }

        .sales-management-table th {
            padding: 0.42rem 0.52rem;
            color: var(--text-muted);
            font-size: 12px;
            font-weight: 700;
            text-align: center;
            white-space: nowrap;
        }

        .sales-management-table th:first-child,
        .sales-management-table td:first-child {
            text-align: left;
        }

        .sales-management-table td {
            padding: 0.68rem 0.28rem;
            background: rgba(255, 255, 255, 0.78);
            border-top: 1px solid rgba(207, 222, 247, 0.82);
            border-bottom: 1px solid rgba(207, 222, 247, 0.82);
            text-align: center;
            font-size: 13px;
            vertical-align: middle;
            font-variant-numeric: tabular-nums;
        }

        .sales-management-table td:first-child {
            border-left: 1px solid rgba(207, 222, 247, 0.82);
            border-radius: 14px 0 0 14px;
        }

        .sales-management-table th:first-child,
        .sales-management-table td:first-child {
            width: 21%;
        }

        .sales-management-table td:last-child {
            border-right: 1px solid rgba(207, 222, 247, 0.82);
            border-radius: 0 14px 14px 0;
        }

        .sales-management-funnel-enhanced {
            min-width: 0;
        }

        .sales-management-funnel-enhanced .metric-table-head {
            align-items: flex-start;
            gap: 0.8rem;
        }

        .sales-management-funnel-summary {
            display: flex;
            flex-wrap: wrap;
            justify-content: flex-end;
            gap: 0.38rem;
        }

        .sales-management-funnel-chip,
        .sales-management-warning-badge {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 26px;
            padding: 0.25rem 0.52rem;
            border-radius: 999px;
            background: rgba(47, 111, 255, 0.1);
            color: #2559c7;
            font-size: 11px;
            font-weight: 800;
            line-height: 1.2;
            white-space: nowrap;
        }

        .sales-management-warning-badge.good {
            background: rgba(25, 157, 105, 0.11);
            color: #137c55;
        }

        .sales-management-warning-badge.medium {
            background: rgba(245, 158, 11, 0.14);
            color: #a45c00;
        }

        .sales-management-warning-badge.high {
            background: rgba(231, 76, 60, 0.13);
            color: #c13f33;
        }

        .sales-management-funnel-table {
            min-width: 1080px;
        }

        .sales-management-funnel-table th:first-child,
        .sales-management-funnel-table td:first-child {
            width: 12%;
        }

        .sales-management-funnel-table th:last-child,
        .sales-management-funnel-table td:last-child {
            width: 22%;
        }

        .sales-management-funnel-table td {
            padding: 0.62rem 0.38rem;
        }

        .sales-management-business-issue-cell {
            overflow: hidden;
            white-space: normal;
        }

        .sales-management-business-issue-list {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            justify-content: center;
            gap: 0.28rem;
            width: 100%;
            min-width: 0;
        }

        .sales-management-business-issue-list .sales-management-warning-badge {
            max-width: 100%;
            padding: 0.22rem 0.46rem;
            text-align: center;
            white-space: normal;
            overflow-wrap: anywhere;
        }

        .sales-management-funnel-table tr.is-active td {
            border-color: rgba(47, 111, 255, 0.58);
            box-shadow: 0 8px 22px rgba(47, 111, 255, 0.08);
        }

        .sales-management-funnel-metric strong {
            display: block;
            color: #102044;
            font-size: 15px;
            line-height: 1.2;
        }

        .sales-management-funnel-metric span {
            display: block;
            margin-top: 0.12rem;
            color: var(--text-muted);
            font-size: 10px;
            line-height: 1.3;
        }

        .sales-management-funnel-footnote {
            margin-top: 0.58rem;
            padding-top: 0.56rem;
            border-top: 1px dashed rgba(174, 194, 225, 0.7);
            color: var(--text-muted);
            font-size: 11px;
            line-height: 1.5;
        }

        .sales-management-prospect {
            margin-top: 18px;
            border-color: rgba(85, 159, 137, 0.3);
            background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(244,252,249,.94));
        }

        .sales-management-independent-tag {
            display: inline-flex;
            align-items: center;
            min-height: 23px;
            margin-left: 7px;
            padding: 0 9px;
            border-radius: 999px;
            background: #e9f8f2;
            color: #168052;
            font-size: 11px;
            font-weight: 750;
            vertical-align: middle;
        }

        .sales-management-prospect-summary {
            display: flex;
            flex-wrap: wrap;
            justify-content: flex-end;
            gap: 7px;
        }

        .sales-management-prospect-summary span {
            display: inline-flex;
            align-items: baseline;
            gap: 5px;
            min-height: 31px;
            padding: 0 10px;
            border: 1px solid #d7ebe4;
            border-radius: 10px;
            background: rgba(255,255,255,.9);
            color: #6a7b75;
            font-size: 11px;
        }

        .sales-management-prospect-summary strong {
            color: #166a4c;
            font-size: 15px;
        }

        .sales-management-prospect-table {
            min-width: 1060px;
        }

        .sales-management-prospect-table td {
            text-align: center;
        }

        .sales-management-prospect-table td:first-child {
            text-align: left;
        }

        .sales-management-prospect-metric strong,
        .sales-management-prospect-metric span {
            display: block;
        }

        .sales-management-prospect-metric strong {
            color: #1c304e;
            font-size: 16px;
        }

        .sales-management-prospect-metric span {
            margin-top: 4px;
            color: #708099;
            font-size: 11px;
        }

        .sales-management-profile-funnel {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 0.42rem;
            margin-top: 0.62rem;
            padding-top: 0.62rem;
            border-top: 1px dashed rgba(174, 194, 225, 0.7);
        }

        .sales-management-profile-funnel div {
            min-width: 0;
            color: var(--text-muted);
            font-size: 10px;
            line-height: 1.25;
        }

        .sales-management-profile-funnel b {
            display: block;
            margin-bottom: 0.08rem;
            color: #102044;
            font-size: 15px;
            font-variant-numeric: tabular-nums;
        }

        .sales-management-row {
            cursor: pointer;
        }

        .sales-management-row.is-active td {
            border-color: rgba(47, 111, 255, 0.58);
            box-shadow: 0 8px 22px rgba(47, 111, 255, 0.08);
        }

        .sales-management-person {
            display: grid;
            grid-template-columns: 30px minmax(72px, 1fr);
            gap: 0.42rem;
            align-items: center;
            min-width: 0;
        }

        .sales-management-rank {
            width: 30px;
            height: 30px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border-radius: 999px;
            background: rgba(47, 111, 255, 0.12);
            color: var(--primary);
            font-weight: 800;
        }

        .sales-management-name strong {
            display: block;
            font-size: 14px;
            line-height: 1.28;
            white-space: normal;
            overflow-wrap: anywhere;
        }

        .sales-management-name span,
        .sales-management-cell-note {
            display: block;
            margin-top: 0.1rem;
            color: var(--text-muted);
            font-size: 11px;
            line-height: 1.35;
        }

        .sales-management-number {
            color: var(--primary);
            font-weight: 800;
        }

        .sales-management-profile {
            min-height: 174px;
        }

        .sales-management-profile-head {
            display: flex;
            justify-content: space-between;
            gap: 0.8rem;
            align-items: flex-start;
        }

        .sales-management-profile-head strong {
            display: block;
            font-size: 21px;
            line-height: 1.2;
            overflow-wrap: anywhere;
        }

        .sales-management-profile-head span {
            display: block;
            margin-top: 0.18rem;
            color: var(--text-muted);
            font-size: 12px;
        }

        .sales-management-profile .lead-cell-meta {
            white-space: normal;
            overflow-wrap: anywhere;
        }

        .sales-management-profile-rate {
            color: var(--primary);
            font-size: 30px;
            font-weight: 900;
            line-height: 1;
            font-variant-numeric: tabular-nums;
            text-align: right;
            white-space: nowrap;
        }

        .sales-management-profile-rate span {
            display: block;
            margin-top: 0.18rem;
            color: var(--primary);
            font-size: 13px;
            font-weight: 800;
        }

        .sales-management-profile-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 0.52rem;
            margin-top: 0.85rem;
        }

        .sales-management-mini-kpi {
            min-width: 0;
            min-height: 76px;
            padding: 0.62rem 0.68rem;
            border-radius: 12px;
            border: 1px solid rgba(214, 225, 242, 0.74);
            background: rgba(255, 255, 255, 0.76);
        }

        .boss-sales-row.is-allocation-plan {
            grid-template-columns: minmax(190px, 0.72fr) minmax(0, 2.28fr);
        }

        .boss-sales-plan-group {
            margin: 0.28rem 0 -0.1rem;
            color: #274e8a;
            font-size: 14px;
            font-weight: 850;
            line-height: 1.4;
        }

        .sales-management-mini-kpi label {
            display: block;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.3;
        }

        .sales-management-mini-kpi strong {
            display: block;
            margin-top: 0.22rem;
            color: #102044;
            font-size: 20px;
            font-variant-numeric: tabular-nums;
        }

        .sales-management-bars {
            display: grid;
            gap: 0.62rem;
            margin-top: 0.74rem;
        }

        .sales-management-bar-row {
            display: grid;
            grid-template-columns: 36px minmax(0, 1fr) 86px;
            gap: 0.5rem;
            align-items: center;
            font-size: 12px;
            font-weight: 800;
        }

        .sales-management-bar-track {
            height: 10px;
            border-radius: 999px;
            background: rgba(222, 232, 248, 0.82);
            overflow: hidden;
        }

        .sales-management-bar-fill {
            height: 100%;
            border-radius: inherit;
            background: linear-gradient(90deg, #2f6fff, #62a7ff);
        }

        .sales-management-list {
            display: grid;
            gap: 0.52rem;
            margin-top: 0.72rem;
        }

        .sales-management-list-item {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            gap: 0.68rem;
            align-items: center;
            min-height: 54px;
            padding: 0.6rem 0.72rem;
            border: 1px solid rgba(214, 225, 242, 0.72);
            border-radius: 12px;
            background: rgba(255, 255, 255, 0.74);
            font-size: 13px;
        }

        .sales-management-list-item strong,
        .sales-management-list-item span {
            display: block;
            min-width: 0;
            overflow-wrap: anywhere;
        }

        .sales-management-list-item span {
            margin-top: 0.12rem;
            color: var(--text-muted);
            font-size: 12px;
        }

        .sales-management-list-item b {
            color: var(--primary);
            font-size: 16px;
            font-variant-numeric: tabular-nums;
            white-space: nowrap;
        }

        .sales-management-lower-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.9rem;
            align-items: stretch;
        }

        .sales-management-wide-grid {
            display: grid;
            grid-template-columns: minmax(0, 1.45fr) minmax(300px, 0.55fr);
            gap: 0.9rem;
        }

        .sales-management-empty {
            padding: 1rem;
            border: 1px dashed rgba(166, 189, 224, 0.82);
            border-radius: 14px;
            color: var(--text-muted);
            text-align: center;
            background: rgba(255, 255, 255, 0.48);
        }

        .allocation-v2-management-panel {
            display: block;
            margin-bottom: 0.9rem;
            padding: 1rem;
            overflow: hidden;
            border-color: rgba(113, 154, 230, 0.42);
            background: linear-gradient(145deg, rgba(248, 251, 255, 0.97), rgba(237, 245, 255, 0.94));
        }

        .exit-handover-followup-board {
            margin-bottom: 0.9rem;
            padding: 1rem;
            overflow: hidden;
            border-color: rgba(113, 154, 230, 0.42);
            background: rgba(250, 252, 255, 0.96);
        }
        .exit-handover-followup-metrics {
            display: grid;
            grid-template-columns: repeat(6, minmax(0, 1fr));
            gap: 0.55rem;
            margin: 0.85rem 0;
        }
        .exit-handover-followup-metrics button {
            display: grid;
            gap: 0.22rem;
            min-width: 0;
            padding: 0.7rem 0.75rem;
            border: 1px solid rgba(124, 157, 216, 0.32);
            border-radius: 12px;
            color: #65738a;
            text-align: left;
            background: rgba(255,255,255,0.84);
            cursor: pointer;
        }
        .exit-handover-followup-metrics button.active { border-color: #2f6fff; box-shadow: 0 0 0 2px rgba(47,111,255,0.1); }
        .exit-handover-followup-metrics strong { color: #235fd4; font-size: 21px; }
        .exit-handover-followup-filters {
            display: grid;
            grid-template-columns: repeat(3, minmax(140px, 0.7fr)) minmax(220px, 1.4fr) auto;
            gap: 0.55rem;
            margin-bottom: 0.75rem;
        }
        .exit-handover-followup-filters select,
        .exit-handover-followup-filters input {
            min-width: 0;
            min-height: 38px;
            padding: 0.5rem 0.65rem;
            border: 1px solid rgba(124, 157, 216, 0.42);
            border-radius: 10px;
            color: #263a5d;
            background: rgba(255,255,255,0.94);
        }
        .exit-handover-followup-table-wrap { overflow-x: auto; border: 1px solid rgba(124,157,216,0.25); border-radius: 13px; }
        .exit-handover-followup-table { width: 100%; min-width: 1100px; border-collapse: collapse; }
        .exit-handover-followup-table th,
        .exit-handover-followup-table td { padding: 0.68rem 0.72rem; border-bottom: 1px solid rgba(160,183,220,0.24); text-align: left; vertical-align: top; }
        .exit-handover-followup-table th { color: #50617d; font-size: 12px; background: rgba(235,242,254,0.84); }
        .exit-handover-followup-table td { color: #172b4d; font-size: 13px; }
        .exit-handover-followup-table td strong,
        .exit-handover-followup-table td span { display: block; }
        .exit-handover-followup-table td span { margin-top: 0.2rem; color: #6f7e95; font-size: 12px; }
        .exit-handover-followup-content { max-width: 360px; line-height: 1.45; overflow-wrap: anywhere; }
        .exit-handover-followup-badges { display: flex; flex-wrap: wrap; gap: 0.28rem; margin-bottom: 0.35rem; }
        .exit-handover-followup-badge { display: inline-flex !important; margin: 0 !important; padding: 0.16rem 0.42rem; border-radius: 999px; font-size: 11px !important; font-weight: 800; }
        .exit-handover-followup-badge.followed { color: #137a50; background: #e5f8ef; }
        .exit-handover-followup-badge.warning { color: #986014; background: #fff3d7; }
        .exit-handover-followup-badge.danger { color: #b42318; background: #fee9e7; }
        .exit-handover-followup-badge.today { color: #235fd4; background: #e8f0ff; }
        .exit-handover-followup-badge.closed { color: #637083; background: #edf0f4; }
        .exit-handover-followup-pagination { display: flex; align-items: center; justify-content: space-between; gap: 0.7rem; margin-top: 0.7rem; color: #6f7e95; font-size: 12px; }
        .exit-handover-followup-pagination > div { display: flex; gap: 0.4rem; }
        .exit-handover-followup-empty { padding: 1rem; color: #6f7e95; text-align: center; }
        .exit-handover-followup-muted { color: #8a95a7 !important; }
        .sales-handover-receipts { padding: 1rem; margin: 0 0 1rem; border: 1px solid #bfd3fa; border-radius: 16px; background: #f4f8ff; }
        .handover-receipt-heading strong, .handover-receipt-row strong { display: block; color: #173565; }
        .handover-receipt-heading span, .handover-receipt-row span { display: block; margin-top: .3rem; color: #52698c; font-size: 13px; line-height: 1.5; }
        .handover-receipt-row { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .85rem 0; border-bottom: 1px solid #dbe6f8; }
        .handover-receipt-row:last-child { border: 0; padding-bottom: 0; }
        .handover-receipt-row.active strong { color: #235fd4; }
        .handover-receipt-actions { display: flex; flex-wrap: wrap; gap: .4rem; flex-shrink: 0; }
        .handover-receipt-summary { margin: .8rem 0; }
        .handover-receipt-summary > p { font-size: 12px; color: #617390; margin: .4rem 0 .6rem; }
        .handover-receipt-table { min-width: 650px; }
        @media(max-width: 700px) { .handover-receipt-row { align-items: flex-start; flex-direction: column; gap: .65rem; } }
        @media (max-width: 1000px) {
            .exit-handover-followup-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
            .exit-handover-followup-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        }

        .allocation-v2-dashboard-summary {
            display: none;
            margin-bottom: 18px;
            padding: 18px 20px;
            border: 1px solid rgba(45, 91, 255, 0.18);
            background: linear-gradient(135deg, rgba(45, 91, 255, 0.08), rgba(255, 255, 255, 0.96) 58%);
        }

        .allocation-v2-dashboard-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
            margin-bottom: 14px;
        }

        .allocation-v2-dashboard-head h3,
        .allocation-v2-dashboard-head p { margin: 0; }
        .allocation-v2-dashboard-head p { margin-top: 4px; color: var(--text-muted); font-size: 13px; }
        .allocation-v2-dashboard-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
        .allocation-v2-dashboard-metrics > div {
            padding: 12px 14px;
            border: 1px solid rgba(45, 91, 255, 0.12);
            border-radius: 12px;
            background: rgba(255, 255, 255, 0.84);
        }
        .allocation-v2-dashboard-metrics span,
        .allocation-v2-dashboard-metrics strong { display: block; }
        .allocation-v2-dashboard-metrics span { color: var(--text-muted); font-size: 12px; }
        .allocation-v2-dashboard-metrics strong { margin-top: 5px; color: var(--primary); font-size: 22px; }
        .allocation-v2-dashboard-error { color: #b42318; }

        .formal-allocation-next-card {
            margin-bottom: 18px;
            padding: 18px 20px;
            border: 1px solid rgba(45, 91, 255, 0.2);
            background: linear-gradient(145deg, rgba(237, 244, 255, 0.98), rgba(255, 255, 255, 0.98));
        }
        .formal-allocation-next-head {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 18px;
            margin-bottom: 14px;
        }
        .formal-allocation-next-head h3,
        .formal-allocation-next-head p { margin: 0; }
        .formal-allocation-next-head p {
            margin-top: 5px;
            color: var(--text-muted);
            font-size: 13px;
            line-height: 1.55;
        }
        .formal-allocation-next-head > div:last-child {
            display: flex;
            align-items: center;
            gap: 10px;
            color: var(--text-muted);
            font-size: 12px;
            white-space: nowrap;
        }
        .formal-allocation-next-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 10px;
        }
        .formal-allocation-next-item {
            min-width: 0;
            padding: 14px;
            border: 1px solid rgba(45, 91, 255, 0.14);
            border-radius: 14px;
            background: rgba(255, 255, 255, 0.9);
        }
        .formal-allocation-next-item.is-ready { box-shadow: inset 3px 0 0 #2d5bff; }
        .formal-allocation-next-item.is-unavailable { box-shadow: inset 3px 0 0 #d92d20; }
        .formal-allocation-next-group,
        .formal-allocation-next-person,
        .formal-allocation-next-facts {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 8px;
        }
        .formal-allocation-next-group strong { color: #122343; font-size: 14px; }
        .formal-allocation-next-group span {
            padding: 3px 8px;
            border-radius: 999px;
            background: #edf3ff;
            color: #2d5bff;
            font-size: 12px;
        }
        .formal-allocation-next-person { margin-top: 12px; }
        .formal-allocation-next-person span { color: var(--text-muted); font-size: 13px; }
        .formal-allocation-next-person strong { color: #175cd3; font-size: 24px; }
        .formal-allocation-next-facts {
            justify-content: flex-start;
            flex-wrap: wrap;
            margin-top: 10px;
            color: #60708c;
            font-size: 12px;
        }
        .formal-allocation-next-facts span + span::before { content: '·'; margin-right: 8px; color: #a8b2c3; }
        .formal-allocation-next-unavailable { margin-top: 12px; }
        .formal-allocation-next-unavailable strong,
        .formal-allocation-next-unavailable span { display: block; }
        .formal-allocation-next-unavailable strong { color: #b42318; font-size: 16px; }
        .formal-allocation-next-unavailable span { margin-top: 4px; color: var(--text-muted); font-size: 12px; }
        .formal-allocation-next-empty { grid-column: 1 / -1; padding: 18px; color: var(--text-muted); text-align: center; }
        .formal-allocation-next-footnote { margin: 12px 0 0; color: #60708c; font-size: 12px; line-height: 1.55; }

        @media (max-width: 900px) {
            .allocation-v2-dashboard-head { align-items: flex-start; flex-direction: column; }
            .allocation-v2-dashboard-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; }
            .formal-allocation-next-head { flex-direction: column; }
            .formal-allocation-next-grid { grid-template-columns: 1fr; }
        }

        .allocation-v2-head,
        .allocation-v2-self-head {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 1rem;
        }

        .allocation-v2-head h3 {
            margin: 0.15rem 0 0;
            color: #122343;
            font-size: 20px;
        }

        .allocation-v2-head p {
            margin: 0.25rem 0 0;
            color: var(--text-muted);
            font-size: 14px;
            line-height: 1.5;
        }

        .allocation-v2-eyebrow {
            color: #5075ba;
            font-size: 13px;
            font-weight: 850;
            letter-spacing: 0.08em;
            text-transform: uppercase;
        }

        .allocation-v2-live,
        .allocation-v2-tier {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 28px;
            padding: 0.2rem 0.65rem;
            border-radius: 999px;
            font-size: 13px;
            font-weight: 850;
            white-space: nowrap;
        }

        .allocation-v2-plan-alert {
            display: grid;
            gap: 0.16rem;
            margin-top: 0.72rem;
            padding: 0.62rem 0.72rem;
            border: 1px solid rgba(211, 118, 76, 0.42);
            border-radius: 12px;
            background: rgba(255, 241, 229, 0.9);
            color: #88441f;
            font-size: 13px;
        }

        .allocation-v2-plan-alert span {
            color: #9a6040;
            line-height: 1.45;
        }

        .allocation-v2-flag-stack {
            display: grid;
            justify-items: end;
            gap: 0.36rem;
        }

        .allocation-v2-head-actions {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 0.45rem;
        }

        .allocation-v2-handover-button {
            min-height: 32px;
            padding: 0.32rem 0.7rem;
            border-color: rgba(75, 123, 219, 0.42);
            color: #285dbd;
            background: rgba(255, 255, 255, 0.82);
            font-size: 11px;
            font-weight: 850;
        }

        .exit-handover-modal {
            width: min(1120px, calc(100vw - 32px));
            max-height: min(88vh, 900px);
            padding: 1rem;
            overflow: auto;
            border: 1px solid rgba(148, 178, 226, 0.64);
            border-radius: 20px;
            background: linear-gradient(145deg, rgba(250, 252, 255, 0.99), rgba(238, 245, 255, 0.98));
            box-shadow: 0 26px 70px rgba(36, 67, 119, 0.25);
        }

        .exit-handover-head,
        .exit-handover-actions {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.75rem;
        }

        .exit-handover-actions {
            position: sticky;
            bottom: -1rem;
            z-index: 3;
            padding: 0.55rem 0 1rem;
            background: linear-gradient(180deg, rgba(241, 247, 255, 0), rgba(241, 247, 255, 0.98) 24%);
        }

        .exit-handover-head h3 {
            margin: 0;
            color: #172b4d;
        }

        .exit-handover-head p,
        .exit-handover-note {
            margin: 0.25rem 0 0;
            color: #667993;
            font-size: 11px;
            line-height: 1.55;
        }

        .exit-handover-summary {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 0.55rem;
            margin-top: 0.75rem;
        }

        .boss-sales-list.is-allocation-plan-list {
            max-height: min(68vh, 760px);
            padding-right: 0.22rem;
            overflow-y: auto;
            overscroll-behavior: contain;
            scrollbar-gutter: stable;
        }

        .exit-handover-summary > div {
            padding: 0.62rem 0.7rem;
            border: 1px solid rgba(194, 213, 241, 0.86);
            border-radius: 13px;
            background: rgba(255, 255, 255, 0.82);
        }

        .exit-handover-summary span,
        .exit-handover-summary small,
        .exit-handover-table small {
            display: block;
            color: #74859e;
            font-size: 10px;
        }

        .exit-handover-summary strong {
            display: block;
            margin: 0.12rem 0;
            color: #235fc9;
            font-size: 20px;
        }

        .exit-handover-summary .is-warning strong,
        .exit-handover-table tr.is-warning td {
            color: #bd423c;
        }

        .exit-handover-sections {
            display: grid;
            grid-template-columns: minmax(360px, 0.8fr) minmax(520px, 1.2fr);
            gap: 0.7rem;
            min-height: 0;
            margin-top: 0.7rem;
        }

        .exit-handover-section {
            min-width: 0;
            padding: 0.7rem;
            border: 1px solid rgba(194, 213, 241, 0.8);
            border-radius: 14px;
            background: rgba(255, 255, 255, 0.7);
        }

        .exit-handover-section h4 {
            margin: 0 0 0.48rem;
            color: #263e66;
            font-size: 12px;
        }

        .exit-handover-table-wrap {
            max-height: 46vh;
            overflow: auto;
            border: 1px solid rgba(213, 226, 245, 0.86);
            border-radius: 11px;
        }

        .exit-handover-table {
            width: 100%;
            border-collapse: collapse;
            font-size: 11px;
        }

        .exit-handover-table th {
            position: sticky;
            top: 0;
            z-index: 1;
            padding: 0.5rem;
            color: #60728e;
            text-align: left;
            background: #edf4ff;
        }

        .exit-handover-table td {
            padding: 0.5rem;
            border-top: 1px solid rgba(217, 228, 244, 0.8);
            color: #293f61;
            vertical-align: top;
        }

        .exit-handover-note {
            margin: 0.7rem 0;
            padding: 0.58rem 0.7rem;
            border-radius: 11px;
            background: rgba(48, 111, 243, 0.08);
            color: #315c9e;
        }

        @media (max-width: 900px) {
            .exit-handover-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
            .exit-handover-sections { grid-template-columns: 1fr; }
            .exit-handover-table-wrap { max-height: 31vh; }
        }

        .allocation-v2-flags {
            display: flex;
            flex-wrap: wrap;
            justify-content: flex-end;
            gap: 0.28rem;
        }

        .allocation-v2-flag {
            display: inline-flex;
            align-items: center;
            gap: 0.24rem;
            padding: 0.2rem 0.42rem;
            border: 1px solid rgba(196, 212, 237, 0.86);
            border-radius: 999px;
            background: rgba(255, 255, 255, 0.76);
            color: #6c7b93;
            font-size: 13px;
            font-weight: 750;
            white-space: nowrap;
        }

        .allocation-v2-flag i {
            width: 6px;
            height: 6px;
            border-radius: 50%;
            background: #a8b4c6;
        }

        .allocation-v2-flag.is-on {
            color: #1c7655;
        }

        .allocation-v2-flag.is-on i {
            background: #45b982;
        }

        .allocation-v2-live,
        .allocation-v2-tier.is-normal {
            background: rgba(70, 187, 133, 0.13);
            color: #1c8058;
        }

        .allocation-v2-tier.is-observe {
            background: rgba(238, 173, 63, 0.16);
            color: #976000;
        }

        .allocation-v2-tier.is-training,
        .allocation-v2-tier.is-validation {
            background: rgba(91, 141, 239, 0.13);
            color: #2f66c4;
        }

        .allocation-v2-tier.is-paused {
            background: rgba(239, 106, 106, 0.13);
            color: #b23838;
        }

        .allocation-v2-summary {
            display: grid;
            grid-template-columns: repeat(6, minmax(0, 1fr));
            gap: 0.55rem;
            margin-top: 0.85rem;
        }

        .allocation-v2-summary > div {
            min-width: 0;
            min-height: 78px;
            padding: 0.62rem 0.7rem;
            border: 1px solid rgba(198, 216, 243, 0.82);
            border-radius: 13px;
            background: rgba(255, 255, 255, 0.82);
        }

        .allocation-v2-summary span,
        .allocation-v2-summary strong,
        .allocation-v2-summary small {
            display: block;
        }

        .allocation-v2-summary span {
            color: var(--text-muted);
            font-size: 13px;
        }

        .allocation-v2-summary strong {
            margin-top: 0.16rem;
            color: #173465;
            font-size: 24px;
            font-variant-numeric: tabular-nums;
        }

        .allocation-v2-summary small {
            margin-top: 0.18rem;
            color: #7787a1;
            font-size: 13px;
            line-height: 1.45;
        }

        .allocation-v2-groups {
            display: flex;
            gap: 0.42rem;
            margin-top: 0.72rem;
            padding-bottom: 0.08rem;
            overflow-x: auto;
        }

        .allocation-v2-group-chip {
            display: inline-flex;
            align-items: center;
            gap: 0.5rem;
            min-width: max-content;
            padding: 0.4rem 0.62rem;
            border: 1px solid rgba(179, 202, 238, 0.78);
            border-radius: 999px;
            background: rgba(255, 255, 255, 0.76);
            color: #304c78;
            font-size: 14px;
        }

        .allocation-v2-group-chip small {
            color: #2f6fff;
            font-weight: 850;
        }

        .allocation-v2-table-wrap {
            margin-top: 0.75rem;
            overflow-x: auto;
            border: 1px solid rgba(199, 216, 242, 0.78);
            border-radius: 14px;
            background: rgba(255, 255, 255, 0.7);
        }

        .allocation-tier-controls { display: flex; flex-wrap: wrap; align-items: center; justify-content: inherit; gap: 5px; margin-top: 5px; }
        .boss-sales-metric .allocation-tier-controls { justify-content: center; }
        .allocation-tier-edit { border: 1px solid #b9cff5; border-radius: 6px; padding: 3px 7px; background: #f4f8ff; color: #245ab8; font: inherit; font-size: 12px; line-height: 1.4; cursor: pointer; }
        .allocation-tier-edit:hover { background: #e5efff; }
        .allocation-tier-edit:focus-visible { outline: 2px solid #2f6fff; outline-offset: 2px; }
        .allocation-tier-manual { color: #97630b; font-size: 12px; line-height: 1.4; }
        .modal.allocation-tier-modal { width: min(760px, 95vw); max-width: 760px; max-height: 90vh; overflow-y: auto; background: rgba(255, 255, 255, 0.98); box-sizing: border-box; }
        .allocation-tier-modal h3 { margin-bottom: 8px; }
        .allocation-tier-modal fieldset { border: 0; padding: 0; margin: 18px 0 0; min-width: 0; }
        .allocation-tier-form-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
        .allocation-tier-form-grid .input-group { min-width: 0; }
        .allocation-tier-form-grid select { width: 100%; }
        .allocation-tier-modal .input-group textarea { width: 100%; box-sizing: border-box; resize: vertical; }
        .allocation-tier-note { color: #62738e; font-size: 13px; line-height: 1.6; margin: 8px 0; }
        .allocation-tier-preview { border: 1px solid #b9cff5; border-radius: 12px; padding: 14px; margin: 14px 0; background: #f5f9ff; }
        .allocation-tier-preview p { margin: 7px 0 12px; line-height: 1.6; }
        .allocation-tier-table-wrap { overflow-x: auto; }
        .allocation-tier-table { width: 100%; border-collapse: collapse; font-size: 14px; }
        .allocation-tier-table th, .allocation-tier-table td { padding: 9px; border-bottom: 1px solid #dce7f7; text-align: left; white-space: nowrap; }
        .allocation-tier-table .is-adjusted { background: #e5eeff; font-weight: 700; }
        .allocation-tier-table small { color: #62738e; font-weight: 400; }
        .allocation-tier-history { margin-top: 14px; font-size: 13px; }
        .allocation-tier-history summary { cursor: pointer; color: #405b87; }
        .allocation-tier-history-list { max-height: 180px; overflow-y: auto; margin-top: 10px; }
        .allocation-tier-history-item { border-top: 1px solid #e1e9f5; padding: 9px 0; }
        .allocation-tier-history-item span { display: block; color: #62738e; margin-top: 3px; }
        .allocation-tier-history-item p { margin: 5px 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
        .allocation-tier-error { color: #bf3535; white-space: pre-wrap; margin: 12px 0; }
        .allocation-tier-footer { display: flex; justify-content: flex-end; gap: 10px; margin-top: 18px; }
        .allocation-tier-footer [hidden], .allocation-tier-modal [hidden] { display: none !important; }
        @media (max-width: 600px) { .allocation-tier-form-grid { grid-template-columns: 1fr; gap: 0; } }

        .allocation-v2-table {
            width: 100%;
            min-width: 1180px;
            border-collapse: separate;
            border-spacing: 0;
            font-size: 15px;
            line-height: 1.4;
        }

        .allocation-v2-table th {
            padding: 0.78rem 0.8rem;
            background: rgba(232, 241, 255, 0.78);
            color: #60718e;
            font-size: 14px;
            font-weight: 850;
            text-align: left;
        }

        .allocation-v2-table td {
            padding: 0.84rem 0.8rem;
            border-top: 1px solid rgba(216, 227, 244, 0.66);
            color: #233858;
            vertical-align: middle;
        }

        .allocation-v2-table td > small,
        .allocation-v2-cell-note,
        .allocation-v2-person span,
        .allocation-v2-state-note span,
        .allocation-v2-target span {
            display: block;
            margin-top: 0.16rem;
            color: #7585a0;
            font-size: 13px;
            line-height: 1.45;
        }

        .allocation-v2-person strong,
        .allocation-v2-state-note strong,
        .allocation-v2-target strong {
            display: block;
            color: #182e52;
            font-size: 17px;
        }

        .allocation-v2-target i,
        .allocation-v2-self-progress i {
            display: block;
            height: 6px;
            margin-top: 0.35rem;
            overflow: hidden;
            border-radius: 999px;
            background: #e2ebf8;
        }

        .allocation-v2-target i b,
        .allocation-v2-self-progress i b {
            display: block;
            height: 100%;
            border-radius: inherit;
            background: linear-gradient(90deg, #2f6fff, #6f9cff);
        }

        .allocation-v2-danger {
            color: #c43e3e !important;
        }

        .allocation-v2-bottom-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 0.58rem;
            margin-top: 0.72rem;
        }

        .allocation-v2-bottom-grid > section {
            min-width: 0;
            padding: 0.66rem;
            border: 1px solid rgba(199, 216, 242, 0.76);
            border-radius: 13px;
            background: rgba(255, 255, 255, 0.72);
        }

        .allocation-v2-subhead {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.5rem;
            margin-bottom: 0.42rem;
            color: #243b62;
            font-size: 14px;
        }

        .allocation-v2-subhead span {
            color: #2f6fff;
            font-weight: 800;
        }

        .allocation-v2-list-item {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.5rem;
            padding: 0.38rem 0;
            border-top: 1px dashed rgba(204, 219, 240, 0.8);
            color: #31496e;
            font-size: 13px;
        }

        .allocation-v2-list-item span {
            display: block;
            margin-top: 0.1rem;
            color: #7888a2;
        }

        .allocation-v2-list-item b {
            color: #2f6fff;
            font-size: 13px;
        }

        .allocation-v2-muted {
            display: block;
            padding: 0.45rem 0;
            color: #8390a6;
            font-size: 10px;
        }

        .allocation-v2-airdrop-summary {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.35rem;
        }

        .allocation-v2-airdrop-summary span {
            padding: 0.42rem;
            border-radius: 9px;
            background: rgba(232, 241, 255, 0.78);
        }

        .allocation-v2-airdrop-summary small,
        .allocation-v2-airdrop-summary b {
            display: block;
        }

        .allocation-v2-airdrop-summary small {
            color: #72829c;
            font-size: 9px;
        }

        .allocation-v2-airdrop-summary b {
            margin-top: 0.1rem;
            color: #275fc6;
            font-size: 15px;
        }

        .allocation-v2-self-card {
            margin-bottom: 14px;
            padding: 17px 18px;
            border: 1px solid rgba(132, 169, 232, 0.5);
            border-radius: 18px;
            background: linear-gradient(145deg, rgba(247, 251, 255, 0.98), rgba(234, 243, 255, 0.95));
            box-shadow: 0 14px 30px rgba(46, 94, 177, 0.08);
        }

        .allocation-v2-self-head > div > span,
        .allocation-v2-self-head > div > strong,
        .allocation-v2-self-head > div > small {
            display: inline-block;
            margin-right: 0.55rem;
        }

        .allocation-v2-self-head > div > span {
            color: #5c7193;
            font-size: 12px;
            font-weight: 750;
        }

        .allocation-v2-self-head > div > strong {
            color: #173b75;
            font-size: 20px;
        }

        .allocation-v2-self-head > div > small {
            color: #2f6fff;
            font-size: 11px;
            font-weight: 800;
        }

        .allocation-v2-self-metrics {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 0.48rem;
            margin-top: 0.75rem;
        }

        .allocation-v2-self-metrics > div {
            padding: 0.58rem 0.65rem;
            border: 1px solid rgba(200, 217, 243, 0.8);
            border-radius: 12px;
            background: rgba(255, 255, 255, 0.78);
        }

        .allocation-v2-self-metrics span,
        .allocation-v2-self-metrics strong {
            display: block;
        }

        .allocation-v2-self-metrics span {
            color: #71819b;
            font-size: 10px;
        }

        .allocation-v2-self-metrics strong {
            margin-top: 0.14rem;
            color: #173b75;
            font-size: 20px;
        }

        .allocation-v2-self-progress {
            margin-top: 0.66rem;
        }

        .allocation-v2-self-groups {
            display: grid;
            gap: 0.38rem;
            margin-top: 0.66rem;
        }

        .allocation-v2-self-groups-title {
            color: #506889;
            font-size: 10px;
            font-weight: 850;
        }

        .allocation-v2-self-group-row {
            display: grid;
            grid-template-columns: minmax(0, 1fr) 58px 58px;
            gap: 0.5rem;
            align-items: center;
            padding: 0.5rem 0.62rem;
            border: 1px solid rgba(201, 217, 241, 0.78);
            border-radius: 11px;
            background: rgba(255, 255, 255, 0.7);
        }

        .allocation-v2-self-group-row > span,
        .allocation-v2-self-group-row strong,
        .allocation-v2-self-group-row small,
        .allocation-v2-self-group-row b {
            display: block;
            min-width: 0;
        }

        .allocation-v2-self-group-row strong {
            overflow-wrap: anywhere;
            color: #28466f;
            font-size: 10px;
        }

        .allocation-v2-self-group-row small {
            margin-top: 0.1rem;
            color: #7989a1;
            font-size: 9px;
        }

        .allocation-v2-self-group-row b {
            color: #2f6fff;
            font-size: 15px;
        }

        .allocation-v2-self-progress > div {
            display: flex;
            justify-content: space-between;
            color: #627594;
            font-size: 10px;
        }

        .allocation-v2-self-progress > div b {
            color: #2f6fff;
        }

        .allocation-v2-self-guidance {
            display: grid;
            gap: 0.16rem;
            margin-top: 0.65rem;
            padding: 0.55rem 0.65rem;
            border-radius: 11px;
            background: rgba(225, 245, 236, 0.75);
            color: #25684f;
            font-size: 11px;
        }

        .allocation-v2-self-guidance.is-paused {
            background: rgba(255, 235, 235, 0.82);
            color: #9a3939;
        }

        .allocation-v2-self-guidance span {
            opacity: 0.82;
        }

        .allocation-v2-self-airdrop {
            display: grid;
            grid-template-columns: auto repeat(4, minmax(70px, 1fr));
            align-items: center;
            gap: 0.45rem;
            margin-top: 0.68rem;
            padding-top: 0.62rem;
            border-top: 1px dashed rgba(174, 197, 232, 0.84);
        }

        .allocation-v2-self-airdrop-title {
            color: #315789;
            font-size: 11px;
            font-weight: 850;
        }

        .allocation-v2-self-airdrop > span:not(.allocation-v2-self-airdrop-title) {
            display: flex;
            align-items: baseline;
            justify-content: space-between;
            gap: 0.35rem;
            padding: 0.4rem 0.5rem;
            border-radius: 9px;
            background: rgba(255, 255, 255, 0.72);
        }

        .allocation-v2-self-airdrop small {
            color: #73829a;
            font-size: 9px;
        }

        .allocation-v2-self-airdrop b {
            color: #2f6fff;
            font-size: 13px;
        }

        @media (max-width: 1180px) {
            .allocation-v2-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
            .allocation-v2-bottom-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        }

        @media (max-width: 720px) {
            .allocation-v2-summary,
            .allocation-v2-self-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
            .allocation-v2-bottom-grid { grid-template-columns: 1fr; }
            .allocation-v2-self-airdrop { grid-template-columns: repeat(2, minmax(0, 1fr)); }
            .allocation-v2-self-airdrop-title { grid-column: 1 / -1; }
            .allocation-v2-head { display: grid; }
            .allocation-v2-flag-stack { justify-items: start; }
            .allocation-v2-flags { justify-content: flex-start; }
        }

        .follow-up-quality-page {
            display: grid;
            gap: 0.9rem;
        }

        .follow-up-quality-hero {
            display: grid;
            grid-template-columns: minmax(0, 1fr) minmax(390px, 0.62fr);
            gap: 1rem;
            align-items: center;
            padding: 1.05rem 1.1rem;
            border-color: rgba(112, 151, 225, 0.5);
            background:
                radial-gradient(circle at 12% 15%, rgba(47, 111, 255, 0.1), transparent 34%),
                rgba(255, 255, 255, 0.72);
        }

        .follow-up-quality-eyebrow {
            display: block;
            margin-bottom: 0.24rem;
            color: #2f6fff;
            font-size: 11px;
            font-weight: 900;
            letter-spacing: 0.12em;
        }

        .follow-up-quality-hero-copy strong {
            display: block;
            color: #13233f;
            font-size: 21px;
            line-height: 1.35;
        }

        .follow-up-quality-hero-copy p {
            margin: 0.34rem 0 0;
            color: var(--text-muted);
            font-size: 13px;
            line-height: 1.6;
        }

        .follow-up-quality-controls {
            display: grid;
            grid-template-columns: minmax(150px, 0.7fr) minmax(190px, 1fr);
            gap: 0.64rem;
        }

        .follow-up-quality-control label {
            display: block;
            margin-bottom: 0.32rem;
            color: #65758d;
            font-size: 12px;
            font-weight: 800;
        }

        .follow-up-quality-control .filter-input {
            width: 100%;
            min-height: 44px;
        }

        .follow-up-quality-threshold-input {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            gap: 0.36rem;
            align-items: center;
        }

        .follow-up-quality-threshold-input span {
            color: var(--text-muted);
            font-size: 12px;
            font-weight: 700;
        }

        .follow-up-quality-summary {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 0.68rem;
        }

        .follow-up-quality-kpi {
            min-width: 0;
            min-height: 106px;
            padding: 0.85rem 0.92rem;
            border: 1px solid rgba(200, 217, 243, 0.88);
            border-radius: 16px;
            background: rgba(255, 255, 255, 0.78);
            color: #263a60;
            text-align: left;
            cursor: pointer;
            transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
        }

        .follow-up-quality-kpi:hover {
            transform: translateY(-2px);
            box-shadow: 0 12px 24px rgba(46, 80, 138, 0.09);
        }

        .follow-up-quality-kpi.is-active {
            border-color: rgba(47, 111, 255, 0.55);
            box-shadow: inset 0 0 0 1px rgba(47, 111, 255, 0.16), 0 12px 25px rgba(47, 94, 190, 0.1);
        }

        .follow-up-quality-kpi strong {
            display: block;
            color: #102044;
            font-size: 27px;
            line-height: 1.1;
        }

        .follow-up-quality-kpi b {
            display: block;
            margin-top: 0.3rem;
            color: #253a5c;
            font-size: 14px;
        }

        .follow-up-quality-kpi span {
            display: block;
            margin-top: 0.18rem;
            color: var(--text-muted);
            font-size: 11px;
            line-height: 1.4;
        }

        .follow-up-quality-kpi.category-a { border-top: 4px solid #f59e0b; }
        .follow-up-quality-kpi.category-b { border-top: 4px solid #2f6fff; }
        .follow-up-quality-kpi.category-c { border-top: 4px solid #dc4c3f; }

        .follow-up-quality-workspace {
            display: grid;
            grid-template-columns: minmax(260px, 0.28fr) minmax(620px, 0.72fr);
            gap: 0.9rem;
            align-items: start;
        }

        .follow-up-quality-side {
            display: grid;
            gap: 0.9rem;
            position: sticky;
            top: 0;
        }

        .follow-up-quality-side-card,
        .follow-up-quality-cases-panel {
            padding: 0.92rem;
            border-color: rgba(200, 217, 243, 0.82);
            background: rgba(255, 255, 255, 0.72);
        }

        .follow-up-quality-section-head,
        .follow-up-quality-cases-head {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 0.68rem;
        }

        .follow-up-quality-section-head span {
            display: block;
            color: var(--text-muted);
            font-size: 11px;
        }

        .follow-up-quality-section-head strong {
            display: block;
            margin-top: 0.12rem;
            color: #172844;
            font-size: 16px;
        }

        .follow-up-quality-sales-summary {
            display: grid;
            gap: 0.42rem;
            margin-top: 0.72rem;
            max-height: 430px;
            overflow-y: auto;
        }

        .follow-up-quality-sales-row {
            width: 100%;
            padding: 0.58rem 0.62rem;
            border: 1px solid rgba(210, 224, 245, 0.86);
            border-radius: 12px;
            background: rgba(250, 252, 255, 0.78);
            color: #2c4264;
            text-align: left;
            cursor: pointer;
        }

        .follow-up-quality-sales-row.is-active {
            border-color: rgba(47, 111, 255, 0.46);
            background: rgba(47, 111, 255, 0.08);
        }

        .follow-up-quality-sales-row-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.5rem;
        }

        .follow-up-quality-sales-row-head strong {
            font-size: 13px;
        }

        .follow-up-quality-sales-row-head b {
            color: #203b72;
            font-size: 14px;
        }

        .follow-up-quality-sales-row-meta {
            display: flex;
            gap: 0.48rem;
            margin-top: 0.3rem;
            color: #718198;
            font-size: 10px;
        }

        .follow-up-quality-sales-riskbar {
            display: block;
            height: 5px;
            margin-top: 0.42rem;
            border-radius: 999px;
            overflow: hidden;
            background: rgba(219, 229, 244, 0.9);
        }

        .follow-up-quality-sales-riskbar span {
            display: block;
            height: 100%;
            border-radius: inherit;
            background: linear-gradient(90deg, #dc4c3f, #f59e0b);
        }

        .follow-up-quality-history-list {
            display: grid;
            gap: 0.46rem;
            margin-top: 0.7rem;
        }

        .follow-up-quality-history-item {
            padding: 0.55rem 0;
            border-top: 1px dashed rgba(190, 208, 235, 0.78);
        }

        .follow-up-quality-history-item:first-child {
            border-top: 0;
            padding-top: 0;
        }

        .follow-up-quality-history-item strong,
        .follow-up-quality-history-item span {
            display: block;
            overflow-wrap: anywhere;
        }

        .follow-up-quality-history-item strong {
            color: #283d5e;
            font-size: 12px;
        }

        .follow-up-quality-history-item span {
            margin-top: 0.16rem;
            color: var(--text-muted);
            font-size: 10px;
            line-height: 1.4;
        }

        .follow-up-quality-cases-panel {
            min-width: 0;
        }

        .follow-up-quality-cases-head {
            padding: 0.08rem 0.12rem 0.78rem;
            border-bottom: 1px solid rgba(198, 216, 242, 0.76);
        }

        .follow-up-quality-cases-head h3 {
            margin: 0;
            color: #132440;
            font-size: 21px;
        }

        .follow-up-quality-cases-head p {
            margin: 0.25rem 0 0;
            color: var(--text-muted);
            font-size: 12px;
        }

        .follow-up-quality-category-tabs {
            display: flex;
            flex-wrap: wrap;
            justify-content: flex-end;
            gap: 0.36rem;
        }

        .follow-up-quality-category-tab {
            min-height: 34px;
            padding: 0.38rem 0.62rem;
            border: 1px solid rgba(201, 218, 243, 0.9);
            border-radius: 999px;
            background: rgba(255, 255, 255, 0.72);
            color: #52647f;
            font-size: 11px;
            font-weight: 800;
            cursor: pointer;
        }

        .follow-up-quality-category-tab.is-active {
            color: #1f4ecf;
            border-color: rgba(47, 111, 255, 0.46);
            background: rgba(47, 111, 255, 0.1);
        }

        .follow-up-quality-list {
            display: grid;
            gap: 0.68rem;
            margin-top: 0.78rem;
        }

        .follow-up-quality-card {
            padding: 0.82rem 0.86rem;
            border: 1px solid rgba(205, 221, 245, 0.9);
            border-left: 4px solid #2f6fff;
            border-radius: 15px;
            background: rgba(255, 255, 255, 0.84);
            box-shadow: 0 7px 18px rgba(49, 81, 135, 0.045);
        }

        .follow-up-quality-card.category-a { border-left-color: #f59e0b; }
        .follow-up-quality-card.category-c { border-left-color: #dc4c3f; }

        .follow-up-quality-card-head {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 0.72rem;
        }

        .follow-up-quality-card-identity {
            min-width: 0;
        }

        .follow-up-quality-card-identity strong {
            display: inline;
            color: #152640;
            font-size: 16px;
        }

        .follow-up-quality-card-identity span {
            margin-left: 0.4rem;
            color: var(--text-muted);
            font-size: 11px;
        }

        .follow-up-quality-category-badge {
            display: inline-flex;
            align-items: center;
            min-height: 25px;
            margin-bottom: 0.34rem;
            padding: 0.23rem 0.48rem;
            border-radius: 999px;
            color: #2156c7;
            background: rgba(47, 111, 255, 0.1);
            font-size: 10px;
            font-weight: 900;
        }

        .category-a .follow-up-quality-category-badge { color: #9c5b00; background: rgba(245, 158, 11, 0.13); }
        .category-c .follow-up-quality-category-badge { color: #b43c32; background: rgba(220, 76, 63, 0.11); }

        .follow-up-quality-days {
            flex: 0 0 auto;
            color: #203b72;
            font-size: 12px;
            font-weight: 850;
            text-align: right;
        }

        .follow-up-quality-note-box {
            margin-top: 0.68rem;
            padding: 0.68rem 0.74rem;
            border-radius: 12px;
            background: rgba(240, 246, 255, 0.72);
        }

        .follow-up-quality-note-box label {
            display: block;
            color: #74839a;
            font-size: 10px;
            font-weight: 800;
        }

        .follow-up-quality-note-box p {
            margin: 0.24rem 0 0;
            color: #243957;
            font-size: 14px;
            line-height: 1.58;
            white-space: pre-wrap;
            overflow-wrap: anywhere;
        }

        .follow-up-quality-card-meta {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 0.5rem;
            margin-top: 0.62rem;
        }

        .follow-up-quality-card-meta div {
            min-width: 0;
            padding: 0.45rem 0.52rem;
            border: 1px solid rgba(215, 227, 245, 0.8);
            border-radius: 10px;
            background: rgba(252, 253, 255, 0.72);
        }

        .follow-up-quality-card-meta label,
        .follow-up-quality-card-meta strong {
            display: block;
            overflow-wrap: anywhere;
        }

        .follow-up-quality-card-meta label {
            color: #7a899f;
            font-size: 9px;
        }

        .follow-up-quality-card-meta strong {
            margin-top: 0.15rem;
            color: #304664;
            font-size: 11px;
        }

        .follow-up-quality-reason {
            margin-top: 0.58rem;
            color: #6c7b91;
            font-size: 11px;
            line-height: 1.48;
        }

        .follow-up-quality-reason b {
            color: #405675;
        }

        .follow-up-quality-card-footer {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 0.4rem;
            margin-top: 0.68rem;
            padding-top: 0.62rem;
            border-top: 1px dashed rgba(190, 208, 235, 0.76);
        }

        .follow-up-quality-card-footer .btn {
            min-height: 34px;
            padding: 0.4rem 0.64rem;
            font-size: 11px;
            white-space: nowrap;
        }

        .follow-up-quality-card-footer .danger {
            color: #b9362d;
            border-color: rgba(220, 76, 63, 0.38);
            background: rgba(220, 76, 63, 0.08);
        }

        .follow-up-quality-more {
            width: 100%;
            margin-top: 0.78rem;
        }

        @media (max-width: 1180px) {
            .follow-up-quality-hero,
            .follow-up-quality-workspace {
                grid-template-columns: 1fr;
            }

            .follow-up-quality-side {
                position: static;
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
        }

        @media (max-width: 760px) {
            .follow-up-quality-summary,
            .follow-up-quality-side,
            .follow-up-quality-controls,
            .follow-up-quality-card-meta {
                grid-template-columns: 1fr;
            }

            .follow-up-quality-cases-head,
            .follow-up-quality-card-head {
                display: grid;
                grid-template-columns: 1fr;
            }

            .follow-up-quality-category-tabs {
                justify-content: flex-start;
            }

            .follow-up-quality-days {
                text-align: left;
            }

            .follow-up-quality-card-footer {
                display: grid;
                grid-template-columns: 1fr;
            }
        }

        .delivery-dashboard-item {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            align-items: center;
            gap: 0.95rem;
            min-height: 96px;
            padding: 0.95rem 1rem;
            border: 1px solid rgba(214, 225, 242, 0.72);
            border-radius: 18px;
            background: rgba(255, 255, 255, 0.72);
        }

        .delivery-recent-main {
            display: grid;
            align-content: center;
            gap: 0.34rem;
            min-width: 0;
        }

        .delivery-recent-side {
            display: grid;
            align-content: center;
            justify-items: end;
            gap: 0.55rem;
            min-width: max-content;
        }

        .delivery-dashboard-item strong {
            display: block;
            font-size: 15px;
            line-height: 1.3;
        }

        .delivery-recent-subline span {
            color: var(--text-muted);
            font-size: 12px;
        }

        .delivery-dashboard-item b {
            font-size: 15px;
            color: var(--primary);
            white-space: nowrap;
            align-self: center;
        }

        .delivery-recent-meta {
            display: grid;
            gap: 0.22rem;
        }

        .delivery-recent-subline {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 0.42rem;
        }

        .delivery-recent-contact {
            font-size: 12px;
            color: #36527b;
            font-weight: 600;
            display: inline-flex;
            align-items: center;
            min-height: 24px;
            padding: 0 0.56rem;
            border-radius: 999px;
            background: rgba(238, 244, 255, 0.96);
            border: 1px solid rgba(182, 202, 240, 0.72);
        }

        .delivery-remark-state {
            display: inline-flex;
            align-items: center;
            min-height: 26px;
            padding: 0 0.62rem;
            border-radius: 999px;
            font-size: 12px;
            font-weight: 600;
            white-space: nowrap;
        }

        .delivery-remark-state.clickable {
            cursor: pointer;
            transition: transform 0.16s ease, box-shadow 0.16s ease, filter 0.16s ease;
        }

        .delivery-remark-state.clickable:hover {
            transform: translateY(-1px);
            filter: brightness(0.98);
            box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
        }

        .delivery-remark-state.has-remark {
            background: rgba(226, 244, 234, 0.94);
            color: #18794e;
            border: 1px solid rgba(116, 195, 144, 0.38);
        }

        .delivery-remark-state.no-remark {
            background: rgba(255, 244, 228, 0.94);
            color: #b45309;
            border: 1px solid rgba(245, 158, 11, 0.26);
        }

        .delivery-remark-preview {
            color: #475569;
            line-height: 1.55;
        }

        .sales-feedback-latest {
            font-size: 13px;
            line-height: 1.55;
            color: var(--text-main);
            margin-bottom: 0.18rem;
        }

        .sales-feedback-alert {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.9rem;
            margin-bottom: 0.86rem;
            padding: 0.82rem 0.96rem;
            border: 1px solid rgba(95, 132, 212, 0.32);
            border-radius: 18px;
            background: linear-gradient(160deg, rgba(236, 244, 255, 0.96), rgba(255, 255, 255, 0.82));
            box-shadow: 0 12px 28px rgba(47, 111, 255, 0.08);
        }

        .sales-feedback-alert strong {
            display: block;
            margin-bottom: 0.16rem;
            color: #1f48d2;
            font-size: 14px;
        }

        .sales-feedback-alert span {
            color: var(--text-muted);
            font-size: 12px;
        }

        .sales-feedback-alert > div:first-child {
            min-width: 0;
        }

        .wechat-add-confirm-card {
            margin: 0 0 1rem;
            padding: 1rem;
            border: 1px solid #b9d4ff;
            border-radius: 18px;
            background: linear-gradient(135deg, #f5f9ff, #ffffff);
            box-shadow: 0 12px 28px rgba(47, 108, 255, 0.08);
        }

        .wechat-add-confirm-head,
        .wechat-add-confirm-row,
        .wechat-add-confirm-actions {
            display: flex;
            align-items: center;
            gap: .75rem;
        }

        .wechat-add-confirm-head {
            justify-content: space-between;
            margin-bottom: .75rem;
        }

        .wechat-add-confirm-head strong {
            font-size: 1rem;
            color: var(--text-main);
        }

        .wechat-add-confirm-list {
            display: grid;
            gap: .65rem;
        }

        .wechat-add-confirm-row {
            justify-content: space-between;
            padding: .8rem .9rem;
            border: 1px solid #e2ebfa;
            border-radius: 14px;
            background: rgba(255,255,255,.92);
        }

        .wechat-add-confirm-main {
            min-width: 0;
            display: grid;
            gap: .2rem;
        }

        .wechat-add-confirm-main span {
            color: var(--text-muted);
            font-size: .82rem;
        }

        .wechat-add-confirm-status {
            color: #9a6700;
            font-weight: 700;
        }

        @media (max-width: 760px) {
            .wechat-add-confirm-row {
                align-items: stretch;
                flex-direction: column;
            }
            .wechat-add-confirm-actions .btn {
                flex: 1;
            }
        }

        .sales-feedback-alert-actions {
            display: inline-flex;
            align-items: center;
            justify-content: flex-end;
            flex-wrap: wrap;
            gap: 0.48rem;
            flex: 0 0 auto;
        }

        .sales-feedback-alert-actions .btn {
            min-height: 38px;
            white-space: nowrap;
        }

        .sales-feedback-summary {
            display: block;
            margin-bottom: 0.86rem;
        }

        .sales-monthly-performance {
            margin-bottom: 0.86rem;
            padding: 1rem;
            border: 1px solid rgba(191, 206, 233, 0.72);
            border-radius: 18px;
            background: rgba(255, 255, 255, 0.78);
            box-shadow: 0 10px 28px rgba(43, 75, 128, 0.06);
        }

        .sales-monthly-performance-head,
        .sales-monthly-target-row,
        .sales-monthly-rank-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.8rem;
        }

        .sales-monthly-performance-head h3 {
            margin: 0;
            font-size: 16px;
        }

        .sales-monthly-performance-head p,
        .sales-monthly-target-row span,
        .sales-monthly-rank-row span {
            margin: 0.18rem 0 0;
            color: var(--text-muted);
            font-size: 12px;
        }

        .sales-monthly-metrics {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 0.62rem;
            margin-top: 0.78rem;
        }

        .sales-monthly-metric {
            min-width: 0;
            padding: 0.68rem 0.74rem;
            border: 1px solid rgba(199, 213, 238, 0.7);
            border-radius: 12px;
            background: rgba(247, 250, 255, 0.88);
        }

        .sales-monthly-metric span {
            display: block;
            color: var(--text-muted);
            font-size: 12px;
        }

        .sales-monthly-metric strong {
            display: block;
            margin-top: 0.18rem;
            color: var(--text-main);
            font-size: 20px;
            line-height: 1.2;
            overflow-wrap: anywhere;
        }

        .sales-monthly-metric.primary strong,
        .sales-monthly-rank-row strong {
            color: var(--primary);
        }

        .sales-monthly-target {
            margin-top: 0.72rem;
            padding-top: 0.72rem;
            border-top: 1px solid rgba(199, 213, 238, 0.62);
        }

        .sales-monthly-target-edit {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 0.5rem;
        }

        .sales-monthly-target-edit .input {
            width: 180px;
            min-height: 38px;
        }

        .sales-monthly-progress {
            height: 8px;
            margin-top: 0.58rem;
            overflow: hidden;
            border-radius: 999px;
            background: #e8eef9;
        }

        .sales-monthly-progress > i {
            display: block;
            height: 100%;
            border-radius: inherit;
            background: linear-gradient(90deg, #2f6cff, #47b97e);
        }

        .sales-monthly-rank-row {
            margin-top: 0.62rem;
        }

        @media (max-width: 760px) {
            .sales-monthly-metrics {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .sales-monthly-target-row,
            .sales-monthly-rank-row {
                align-items: flex-start;
                flex-direction: column;
            }

            .sales-monthly-target-edit {
                width: 100%;
                justify-content: flex-start;
            }

            .sales-monthly-target-edit .input {
                flex: 1;
                width: auto;
            }
        }

        .sales-feedback-overview-shell,
        .sales-feedback-insight-panel {
            border: 1px solid rgba(191, 206, 233, 0.64);
            border-radius: 18px;
            background: rgba(255, 255, 255, 0.68);
            box-shadow: 0 10px 28px rgba(43, 75, 128, 0.06);
        }

        .sales-feedback-overview-shell {
            padding: 0.92rem;
        }

        .sales-feedback-summary-heading {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 1rem;
            margin-bottom: 0.72rem;
        }

        .sales-feedback-summary-heading strong {
            display: block;
            color: var(--text-main);
            font-size: 15px;
            line-height: 1.3;
        }

        .sales-feedback-summary-heading span {
            display: block;
            margin-top: 0.18rem;
            color: var(--text-muted);
            font-size: 11px;
            line-height: 1.45;
        }

        .sales-feedback-kpi-layout {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.72rem;
        }

        .sales-feedback-kpi-group {
            min-width: 0;
            padding: 0.72rem;
            border-radius: 14px;
            background: rgba(244, 248, 255, 0.72);
        }

        .sales-feedback-kpi-group-title {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.5rem;
            margin-bottom: 0.55rem;
            color: #304b73;
            font-size: 12px;
            font-weight: 750;
        }

        .sales-feedback-kpi-group-title small {
            color: var(--text-muted);
            font-size: 10px;
            font-weight: 500;
        }

        .sales-feedback-kpi-grid {
            display: grid;
            grid-template-columns: repeat(5, minmax(0, 1fr));
            gap: 0.5rem;
        }

        .sales-feedback-summary-card {
            min-width: 0;
            padding: 0.68rem 0.72rem;
            border: 1px solid rgba(191, 206, 233, 0.56);
            border-radius: 12px;
            background: rgba(255, 255, 255, 0.88);
            cursor: pointer;
            transition: border-color 0.16s ease, background 0.16s ease, transform 0.16s ease;
        }

        .sales-feedback-summary-card.tone-danger { border-top: 3px solid #ef6a6a; }
        .sales-feedback-summary-card.tone-warning { border-top: 3px solid #eead3f; }
        .sales-feedback-summary-card.tone-info { border-top: 3px solid #5b8def; }
        .sales-feedback-summary-card.tone-success { border-top: 3px solid #51bb8a; }
        .sales-feedback-summary-card.tone-neutral { border-top: 3px solid #a5b4ca; }

        .sales-feedback-summary-card:hover,
        .sales-feedback-summary-card:focus-visible {
            border-color: rgba(87, 125, 196, 0.36);
            background: rgba(244, 248, 255, 0.94);
            outline: none;
            transform: translateY(-1px);
        }

        .sales-feedback-summary-card.is-active {
            border-color: rgba(47, 108, 255, 0.52);
            background: rgba(232, 241, 255, 0.96);
            box-shadow: inset 0 0 0 1px rgba(47, 108, 255, 0.12);
        }

        .sales-feedback-summary-card.is-active span,
        .sales-feedback-summary-card.is-active strong {
            color: #1f48d2;
        }

        .sales-feedback-summary-card span {
            display: block;
            color: var(--text-muted);
            font-size: 11px;
            margin-bottom: 0.2rem;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .sales-feedback-summary-card strong {
            color: var(--text-main);
            font-size: 19px;
            line-height: 1.2;
            white-space: nowrap;
        }

        .sales-feedback-insights-grid {
            display: grid;
            grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.88fr);
            gap: 0.86rem;
        }

        .sales-feedback-insight-panel {
            min-width: 0;
            padding: 0.88rem;
        }

        .sales-feedback-summary-list {
            display: grid;
            gap: 0;
            max-height: 330px;
            overflow: auto;
            border: 1px solid rgba(207, 219, 239, 0.66);
            border-radius: 12px;
            background: rgba(249, 251, 255, 0.72);
        }

        .sales-feedback-summary-row {
            display: grid;
            grid-template-columns: minmax(84px, 1fr) repeat(8, minmax(50px, 0.62fr));
            gap: 0.4rem;
            align-items: center;
            min-height: 42px;
            padding: 0.5rem 0.62rem;
            border-bottom: 1px solid rgba(219, 228, 243, 0.72);
            background: rgba(255, 255, 255, 0.48);
            color: #36527b;
            font-size: 11px;
            border: 1px solid transparent;
            cursor: pointer;
            transition: border-color 0.16s ease, background 0.16s ease;
        }

        .sales-feedback-summary-row:last-child { border-bottom-color: transparent; }

        .sales-feedback-summary-row.is-header {
            position: sticky;
            top: 0;
            z-index: 1;
            min-height: 36px;
            color: #6a7c98;
            font-size: 10px;
            font-weight: 700;
            background: #eef4fd;
            cursor: default;
        }

        .sales-feedback-summary-row strong,
        .sales-feedback-summary-row span {
            min-width: 0;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .sales-feedback-summary-row:hover,
        .sales-feedback-summary-row:focus-visible {
            border-color: rgba(87, 125, 196, 0.34);
            background: rgba(235, 243, 255, 0.94);
            outline: none;
        }

        .sales-feedback-summary-row.is-header:hover {
            border-color: transparent;
            background: #eef4fd;
        }

        .sales-feedback-list-footer {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.62rem;
            padding: 0.8rem 0.9rem;
            color: var(--text-muted);
            font-size: 12px;
            border-top: 1px solid rgba(213, 224, 242, 0.58);
        }

        .sales-feedback-list-footer:empty {
            display: none;
        }

        .sales-feedback-filter-grid {
            grid-template-columns: minmax(180px, 1.2fr) repeat(5, minmax(132px, 0.76fr)) minmax(120px, 0.6fr);
        }

        .leads-table.sales-feedback-table {
            min-width: 0;
            width: 100%;
            table-layout: fixed;
        }

        .leads-table.sales-feedback-table th,
        .leads-table.sales-feedback-table td {
            overflow: hidden;
            padding: 0.64rem 0.52rem;
            vertical-align: middle;
            font-size: 12px;
            line-height: 1.42;
        }

        .sales-feedback-table .lead-cell-name,
        .sales-feedback-table .lead-cell-meta,
        .sales-feedback-table .sales-feedback-latest,
        .sales-feedback-table .sales-feedback-contact,
        .sales-feedback-table .sales-feedback-contact-value,
        .sales-feedback-table .sales-feedback-remark,
        .sales-feedback-table .sales-feedback-owner {
            min-width: 0;
            max-width: 100%;
            overflow: hidden;
        }

        .sales-feedback-table .lead-cell-name,
        .sales-feedback-table .lead-cell-meta,
        .sales-feedback-table .sales-feedback-owner,
        .sales-feedback-table .sales-feedback-latest-meta {
            display: block;
            white-space: normal;
            overflow-wrap: anywhere;
            word-break: break-word;
            text-overflow: ellipsis;
        }

        .sales-feedback-table .sales-feedback-contact-value {
            display: block;
            white-space: nowrap;
            overflow-wrap: anywhere;
            word-break: break-word;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .sales-feedback-contact {
            display: grid;
            gap: 0.34rem;
            line-height: 1.3;
            justify-items: center;
            text-align: center;
            width: 100%;
        }

        .sales-feedback-contact-line {
            display: grid;
            grid-template-columns: auto auto auto;
            align-items: center;
            justify-content: center;
            column-gap: 0.28rem;
            min-width: 0;
            max-width: 100%;
            padding: 0.16rem 0;
        }

        .sales-feedback-contact-label {
            color: var(--text-muted);
            font-size: 11px;
        }

        .sales-feedback-copy-actions {
            grid-column: auto;
            display: inline-flex;
            align-items: center;
            gap: 0.32rem;
            min-width: 0;
            margin-top: 0;
            white-space: nowrap;
        }

        .sales-feedback-action-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 26px;
            min-width: 46px;
            padding: 0 0.52rem;
            border-radius: 999px;
            border: 1px solid rgba(96, 144, 255, 0.34);
            background: rgba(239, 245, 255, 0.96);
            color: #2f6fff;
            font-size: 12px;
            font-weight: 700;
            line-height: 1;
            text-decoration: none;
            white-space: nowrap;
            cursor: pointer;
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
        }

        .sales-feedback-action-btn:hover,
        .sales-feedback-action-btn:focus-visible {
            border-color: rgba(47, 108, 255, 0.56);
            background: rgba(224, 236, 255, 0.98);
            outline: none;
        }

        .sales-feedback-action-btn.wide {
            min-width: 70px;
        }

        .sales-feedback-action-btn.primary {
            min-width: 72px;
            min-height: 30px;
            background: #2f6fff;
            border-color: #2f6fff;
            color: #fff;
            box-shadow: 0 8px 18px rgba(47, 108, 255, 0.18);
        }

        .sales-feedback-action-btn.primary:hover,
        .sales-feedback-action-btn.primary:focus-visible {
            background: #2459db;
            border-color: #2459db;
        }

        .sales-feedback-contact-value,
        .sales-feedback-owner {
            color: #253754;
        }

        .sales-feedback-remark-block {
            display: grid;
            gap: 0.28rem;
            width: 100%;
            min-width: 0;
            justify-items: center;
            text-align: center;
        }

        .sales-feedback-remark {
            color: var(--text-main);
            font-size: 12px;
            line-height: 1.5;
            text-align: center;
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
            max-width: 100%;
        }

        .sales-feedback-remark.secondary {
            color: var(--text-muted);
        }

        .sales-feedback-latest {
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
            line-height: 1.5;
        }

        .sales-feedback-table .col-center {
            white-space: nowrap;
        }

        .sales-feedback-context {
            display: grid;
            gap: 0.58rem;
            padding: 0.78rem 0.88rem;
            border: 1px solid rgba(179, 197, 228, 0.52);
            border-radius: 14px;
            background: rgba(245, 249, 255, 0.78);
        }

        .sales-feedback-context-item strong {
            display: block;
            margin-bottom: 0.24rem;
            color: #36527b;
            font-size: 12px;
        }

        .sales-feedback-context-item div {
            color: var(--text-main);
            font-size: 13px;
            line-height: 1.65;
            white-space: pre-wrap;
            overflow-wrap: anywhere;
            word-break: break-word;
        }

        .sales-feedback-source-link {
            display: inline-flex;
            max-width: 100%;
            color: var(--primary);
            font-weight: 800;
            overflow-wrap: anywhere;
            word-break: break-all;
        }

        button.sales-feedback-source-link {
            appearance: none;
            border: 0;
            padding: 0;
            background: transparent;
            font: inherit;
            cursor: pointer;
            text-align: left;
        }

        .sales-feedback-source-actions {
            display: inline-flex;
            align-items: center;
            flex-wrap: wrap;
            gap: 0.34rem;
            margin-top: 0.34rem;
        }

        .sales-feedback-table tr.sales-feedback-row-new td {
            background: rgba(232, 241, 255, 0.86);
        }

        .sales-feedback-table tr.sales-feedback-row-unfeedbacked td {
            box-shadow: inset 0 0 0 999px rgba(255, 250, 236, 0.36);
        }

        .sales-feedback-table tr.sales-feedback-row-today td {
            box-shadow: inset 0 0 0 999px rgba(220, 252, 231, 0.28);
        }

        .sales-feedback-table tr.sales-feedback-row-overdue td {
            box-shadow: inset 0 0 0 999px rgba(254, 226, 226, 0.38);
        }

        .sales-feedback-table tr.sales-feedback-row-new.sales-feedback-row-today td,
        .sales-feedback-table tr.sales-feedback-row-new.sales-feedback-row-overdue td {
            background: rgba(232, 241, 255, 0.9);
        }

        .sales-feedback-context-item.sales-feedback-context-prospect {
            border-color: rgba(75, 131, 245, 0.3);
            background: rgba(239, 246, 255, 0.9);
        }

        .sales-feedback-context-item.sales-feedback-context-prospect strong {
            color: #2458bd;
        }

        .sales-feedback-table tr.sales-feedback-row-prospect td {
            background: linear-gradient(180deg, rgba(244, 250, 255, 0.96), rgba(250, 253, 255, 0.92));
        }

        .sales-feedback-table tr.sales-feedback-row-prospect td:first-child {
            box-shadow: inset 4px 0 0 #4b83f5;
        }

        .sales-feedback-state-tags {
            display: inline-flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 0.24rem;
            margin-top: 0.32rem;
        }

        .sales-feedback-state-tag {
            display: inline-flex;
            align-items: center;
            min-height: 20px;
            padding: 0 0.44rem;
            border-radius: 999px;
            font-size: 11px;
            font-weight: 700;
        }

        .sales-feedback-state-tag.new {
            color: #1f48d2;
            background: rgba(219, 232, 255, 0.94);
            border: 1px solid rgba(94, 132, 214, 0.28);
        }

        .sales-feedback-state-tag.pending {
            color: #b45309;
            background: rgba(255, 246, 219, 0.94);
            border: 1px solid rgba(245, 158, 11, 0.24);
        }

        .sales-feedback-state-tag.today {
            color: #0f766e;
            background: rgba(219, 250, 244, 0.94);
            border: 1px solid rgba(20, 184, 166, 0.24);
        }

        .sales-feedback-state-tag.overdue {
            color: #b91c1c;
            background: rgba(254, 226, 226, 0.94);
            border: 1px solid rgba(239, 68, 68, 0.24);
        }

        .sales-feedback-state-tag.prospect {
            color: #2458bd;
            background: rgba(230, 240, 255, 0.96);
            border: 1px solid rgba(75, 131, 245, 0.3);
        }

        .sales-feedback-actions {
            display: grid;
            justify-items: center;
            gap: 0.24rem;
        }

        .sales-feedback-table .sales-feedback-copy-actions {
            display: inline-flex;
            flex-wrap: nowrap;
            justify-content: flex-end;
            gap: 0.28rem;
            margin-top: 0;
        }

        .sales-feedback-quick-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 0.45rem;
            margin: -0.2rem 0 0.82rem;
        }

        .sales-feedback-modal-contact {
            display: flex;
            flex-wrap: wrap;
            gap: 0.48rem;
            margin: -0.34rem 0 0.82rem;
        }

        .sales-feedback-modal-contact .btn {
            min-height: 36px;
            padding: 0.48rem 0.76rem;
            white-space: nowrap;
        }

        .sales-feedback-history {
            display: grid;
            gap: 0.66rem;
            max-height: 260px;
            overflow: auto;
            padding-right: 0.2rem;
        }

        #sales-feedback-modal-overlay {
            padding: 1rem;
        }

        .sales-feedback-modal {
            max-height: calc(100vh - 2rem);
            overflow: auto;
            display: flex;
            flex-direction: column;
        }

        .sales-feedback-modal .sales-feedback-history {
            max-height: 150px; } #lead-feedback-history-modal-overlay .sales-feedback-history, #customer-protection-history-modal-overlay .sales-feedback-history { max-height: none; overflow: visible; padding-bottom: 0.7rem;
        }

        .sales-feedback-modal-footer {
            position: sticky;
            bottom: -1.22rem;
            z-index: 2;
            display: flex;
            justify-content: flex-end;
            gap: 0.5rem;
            margin: 0 -1.22rem -1.22rem;
            padding: 0.82rem 1.22rem 1rem;
            border-top: 1px solid rgba(186, 202, 232, 0.52);
            background: rgba(250, 253, 255, 0.92);
            backdrop-filter: blur(8px);
            -webkit-backdrop-filter: blur(8px);
        }

        .sales-feedback-modal-footer.sales-feedback-modal-footer-stack {
            display: block;
        }

        .sales-feedback-modal-actions {
            display: flex;
            justify-content: flex-end;
            flex-wrap: wrap;
            gap: 0.5rem;
        }

        #sales-feedback-cross-city {
            z-index: 2100;
        }

        #sales-feedback-cross-city .modal {
            width: min(560px, calc(100vw - 24px));
            max-height: calc(100dvh - 24px);
            background: #fff;
        }

        #sales-feedback-cross-city .btn.outline {
            color: #263751;
            background: #fff;
            border: 1px solid #8093b3;
        }

        #sales-feedback-cross-city .btn {
            min-height: 42px;
            border-radius: 10px;
            font-size: 14px;
            font-weight: 600;
        }

        .sales-feedback-cross-city[hidden],
        #sales-feedback-cross-city-toggle[hidden],
        .sales-feedback-cross-city [hidden] {
            display: none !important;
        }

        #sales-feedback-modal-overlay .sales-feedback-modal-footer .btn {
            min-height: 42px;
            padding: 0.55rem 0.9rem;
            border-radius: 10px;
            font-size: 14px;
            font-weight: 600;
            white-space: nowrap;
            align-items: center;
            justify-content: center;
        }

        #sales-feedback-modal-overlay .sales-feedback-modal-footer .btn.outline:not(.danger) {
            color: #263751;
            background: #fff;
            border: 1px solid #8093b3;
            box-shadow: none;
        }

        #sales-feedback-modal-overlay .sales-feedback-modal-footer .btn.outline:not(.danger):hover {
            color: #1d3050;
            background: #f0f4fb;
            border-color: #56739e;
        }

        #sales-feedback-modal-overlay .sales-feedback-modal-footer .btn.outline.sales-feedback-cross-city-toggle {
            color: #2449aa;
            background: #edf3ff;
            border: 1px solid #4169df;
        }

        #sales-feedback-modal-overlay .sales-feedback-modal-footer .btn.outline.sales-feedback-cross-city-toggle:hover,
        #sales-feedback-modal-overlay .sales-feedback-modal-footer .btn.outline.sales-feedback-cross-city-toggle[aria-expanded="true"] {
            color: #163eab;
            background: #dfeaff;
            border-color: #244fc7;
        }

        #sales-feedback-modal-overlay .sales-feedback-modal-footer .btn:focus-visible {
            outline: 3px solid #8caeff;
            outline-offset: 2px;
        }

        .sales-feedback-cross-city-actions {
            flex-shrink: 0;
        }

        .sales-feedback-cross-city-body {
            min-height: 0;
            overflow-y: auto;
            padding: 0 0.15rem 0.8rem;
        }

        .sales-feedback-cross-city-body .input-group {
            margin-bottom: 0.7rem;
        }

        .sales-feedback-cross-city-copy,
        .sales-feedback-cross-city-preview {
            margin-bottom: 0.7rem;
            color: var(--text-muted);
            font-size: 13px;
            line-height: 1.65;
            overflow-wrap: anywhere;
        }

        .sales-feedback-cross-city-preview strong {
            color: var(--text-main);
        }

        .sales-feedback-cross-city-message {
            color: var(--danger);
            white-space: pre-line;
        }

        .sales-feedback-pool-confirm-copy {
            margin: 0.9rem 0 0.2rem;
            padding: 0.92rem 1rem;
            border: 1px solid rgba(212, 63, 63, 0.18);
            border-radius: 14px;
            background: linear-gradient(145deg, rgba(255, 247, 247, 0.98), rgba(255, 252, 249, 0.92));
            color: #6f3340;
            font-size: 13px;
            line-height: 1.65;
        }

        .sales-feedback-pool-confirm-copy strong {
            display: block;
            margin-bottom: 0.24rem;
            color: #b52e3e;
            font-size: 14px;
        }

        .lead-movement-title { margin: 12px 0 6px; font-size: 13px; font-weight: 600; color: #415b83; } .lead-movement-title:first-child { margin-top: 0; } .sales-feedback-history-item {
            padding: 0.78rem 0.88rem;
            border: 1px solid rgba(179, 197, 228, 0.5);
            border-radius: 14px;
            background: rgba(245, 249, 255, 0.72);
        }

        .sales-feedback-history-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.7rem;
            margin-bottom: 0.32rem;
            font-size: 13px;
        }

        .sales-feedback-history-head span,
        .sales-feedback-history-meta {
            color: var(--text-muted);
            font-size: 12px;
        }

        .sales-feedback-history-content {
            margin-top: 0.44rem;
            color: var(--text-main);
            font-size: 13px;
            line-height: 1.65;
            white-space: pre-wrap;
        }

        .sales-feedback-action-item {
            padding: 0.56rem 0.72rem;
        }

        .sales-feedback-action-item .sales-feedback-history-head {
            margin-bottom: 0.16rem;
        }

        .sales-feedback-action-item .sales-feedback-history-content {
            margin-top: 0.12rem;
            line-height: 1.45;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .sales-feedback-summary-row.school-conversion-row {
            grid-template-columns: minmax(180px, 1.5fr) repeat(4, minmax(58px, 0.45fr));
        }

        @media (max-width: 1450px) {
            .sales-feedback-insights-grid {
                grid-template-columns: 1fr;
            }
        }

        .public-lead-pool-summary {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 12px;
            margin-bottom: 18px;
        }

        .public-lead-pool-summary.is-admin {
            grid-template-columns: repeat(5, minmax(0, 1fr));
        }

        .public-lead-pool-view-switch {
            display: inline-flex;
            align-items: center;
            gap: 5px;
            margin: 0 0 14px;
            padding: 5px;
            border: 1px solid var(--border-soft);
            border-radius: 10px;
            background: rgba(239, 245, 255, 0.82);
        }

        .public-lead-pool-view-tab {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 7px;
            min-height: 38px;
            padding: 7px 15px;
            border: 0;
            border-radius: 8px;
            background: transparent;
            color: var(--text-muted);
            font-size: 13px;
            font-weight: 700;
            cursor: pointer;
        }

        .public-lead-pool-view-tab.is-active {
            background: #fff;
            color: var(--primary);
            box-shadow: 0 5px 14px rgba(47, 112, 255, 0.12);
        }

        .public-lead-pool-view-tab span {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 24px;
            min-height: 24px;
            padding: 0 7px;
            border-radius: 999px;
            background: rgba(47, 112, 255, 0.1);
            color: inherit;
            font-size: 12px;
        }

        .public-lead-pool-filters { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px 12px; margin: 0 0 14px; padding: 12px; border: 1px solid var(--border-soft); border-radius: 8px; background: rgba(255, 255, 255, 0.72); } .public-lead-pool-filters[hidden], .public-lead-pool-filters [hidden] { display: none; } .public-lead-pool-filter-manager { display: contents; } .public-lead-pool-filter { display: flex; flex: 0 1 148px; flex-direction: column; gap: 4px; min-width: 118px; margin: 0; color: var(--text-muted); font-size: 12px; font-weight: 700; } .public-lead-pool-filter.is-wide { flex-basis: 196px; } .public-lead-pool-filter select { min-width: 0; margin: 0; font-weight: 400; } .public-lead-pool-filters .btn { flex: 0 0 auto; margin: 0; } .public-lead-pool-empty-state .btn { margin-top: 14px; } @media (max-width: 560px) { .public-lead-pool-filters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding: 10px; } .public-lead-pool-filter { min-width: 0; } .public-lead-pool-filter select { min-height: 44px; font-size: 16px; } .public-lead-pool-filters .btn { grid-column: 1 / -1; min-height: 44px; } } .public-lead-pool-search {
            display: none;
            align-items: center;
            gap: 10px;
            margin: 0 0 14px;
            padding: 12px;
            border: 1px solid var(--border-soft);
            border-radius: 8px;
            background: rgba(255, 255, 255, 0.72);
        }

        .public-lead-pool-search .input {
            flex: 1 1 auto;
            min-width: 0;
            margin: 0;
        }

        .public-lead-pool-search .btn {
            flex: 0 0 auto;
            min-width: 82px;
            margin: 0;
        }

        /* The salesperson's search over their own pooled leads, on a phone: the field on a line of its own, 搜索 and 清空 under it. */
        @media (max-width: 560px) {
            #public-lead-pool-mine-search-wrap {
                flex-wrap: wrap;
                gap: 8px;
                padding: 10px;
            }

            #public-lead-pool-mine-search-wrap .input {
                flex-basis: 100%;
                min-height: 44px;
                font-size: 16px;
            }

            #public-lead-pool-mine-search-wrap .input::placeholder {
                font-size: 13px;
            }

            #public-lead-pool-mine-search-wrap .btn {
                flex: 1 1 0;
                min-height: 44px;
            }
        }

        /* On a card of the salesperson's own pooled lead the two sentences are read whole: they wrap instead of ending in "…". */
        .public-lead-pool-card .public-lead-pool-own-limit {
            align-items: start;
        }

        .public-lead-pool-card .public-lead-pool-own-limit strong {
            white-space: normal;
        }

        .public-lead-pool-card .public-lead-pool-own-note {
            margin-top: 0;
            font-size: 12px;
            text-align: left;
        }

        .public-lead-pool-stat {
            position: relative;
            min-width: 0;
            min-height: 92px;
            padding: 14px 16px 13px;
            overflow: hidden;
            border: 1px solid var(--border-soft);
            border-radius: 8px;
            background: rgba(255, 255, 255, 0.78);
        }

        .public-lead-pool-stat::before {
            content: '';
            position: absolute;
            top: 0;
            right: 0;
            left: 0;
            height: 3px;
            background: #a8c3ff;
        }

        .public-lead-pool-stat.is-success::before {
            background: #64c995;
        }

        .public-lead-pool-stat.is-warning::before {
            background: #f2b55d;
        }

        .public-lead-pool-stat.is-danger::before {
            background: #ec8585;
        }

        .public-lead-pool-stat span,
        .public-lead-pool-stat small {
            display: block;
            min-width: 0;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.4;
        }

        .public-lead-pool-stat strong {
            display: block;
            margin: 5px 0 3px;
            overflow: hidden;
            color: var(--text-main);
            font-size: 22px;
            line-height: 1.15;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .public-lead-pool-error {
            color: var(--danger) !important;
        }

        .public-lead-pool-list-shell {
            overflow: hidden;
            border: 1px solid var(--border-soft);
            border-radius: 8px;
            background: rgba(255, 255, 255, 0.64);
        }

        .public-lead-pool-list-shell.is-empty .table-wrapper,
        .public-lead-pool-list-shell.is-empty .mobile-record-list {
            display: none !important;
        }

        .public-lead-pool-empty-state {
            min-height: 150px;
            padding: 42px 24px;
            border: 0;
            background: transparent;
            text-align: center;
        }

        .public-lead-pool-empty-state strong,
        .public-lead-pool-empty-state span {
            display: block;
        }

        .public-lead-pool-empty-state strong {
            color: var(--text-main);
            font-size: 16px;
        }

        .public-lead-pool-empty-state span {
            margin-top: 6px;
            color: var(--text-muted);
            font-size: 13px;
        }

        .leads-table.public-lead-pool-table {
            width: 100%;
            min-width: 0;
            table-layout: fixed;
        }

        .public-lead-pool-table th,
        .public-lead-pool-table td {
            vertical-align: middle;
        }

        .public-lead-pool-table td {
            padding: 12px 11px;
            font-size: 12px;
            text-align: left;
        }

        .public-lead-pool-table th {
            padding: 11px;
            font-size: 12px;
            text-align: left;
        }

        .public-lead-pool-table .pool-cell-center {
            text-align: center;
        }

        .public-lead-pool-customer,
        .public-lead-pool-source,
        .public-lead-pool-flow,
        .public-lead-pool-feedback {
            display: grid;
            gap: 4px;
            min-width: 0;
        }

        .public-lead-pool-customer strong,
        .public-lead-pool-source strong,
        .public-lead-pool-flow strong {
            overflow: hidden;
            color: var(--text-main);
            font-size: 13px;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .public-lead-pool-customer span,
        .public-lead-pool-source span,
        .public-lead-pool-flow span,
        .public-lead-pool-feedback span,
        .public-lead-pool-feedback small {
            overflow: hidden;
            color: var(--text-muted);
            font-size: 11px;
            line-height: 1.45;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .public-lead-pool-feedback strong {
            display: -webkit-box;
            overflow: hidden;
            color: var(--text-main);
            font-size: 12px;
            font-weight: 600;
            line-height: 1.45;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
        }

        .public-lead-pool-history-btn {
            min-width: 84px !important;
            padding-inline: 12px;
        }

        .public-lead-pool-actions {
            display: flex;
            align-items: center;
            justify-content: center;
            flex-wrap: wrap;
            gap: 6px;
        }

        .public-lead-pool-actions .btn {
            margin: 0;
        }

        .public-lead-pool-own-note {
            margin-top: 6px;
            color: var(--text-muted);
            font-size: 11px;
            line-height: 1.4;
            overflow-wrap: anywhere;
            text-align: center;
        }

        .public-lead-pool-mobile-feedback {
            align-items: start;
        }

        .public-lead-pool-mobile-feedback strong,
        .public-lead-pool-mobile-feedback small {
            white-space: normal;
        }

        .public-lead-pool-mobile-feedback small {
            grid-column: 2 / -1;
            color: var(--text-muted);
            font-size: 11px;
        }

        .public-lead-pool-table .btn,
        .public-lead-pool-card .btn {
            min-width: 76px;
        }

        .public-lead-pool-state {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 70px;
            min-height: 30px;
            padding: 4px 10px;
            border: 1px solid var(--border-soft);
            border-radius: 999px;
            background: rgba(255, 255, 255, 0.78);
            color: var(--text-muted);
            font-size: 12px;
            font-weight: 600;
            white-space: nowrap;
        }

        .public-lead-pool-state.claimable {
            border-color: rgba(39, 174, 96, 0.32);
            background: rgba(39, 174, 96, 0.09);
            color: #218c50;
        }

        .public-lead-pool-state.cooling {
            border-color: rgba(47, 112, 255, 0.28);
            background: rgba(47, 112, 255, 0.08);
            color: var(--primary);
        }

        .public-lead-pool-state.expired,
        .public-lead-pool-state.needs_review {
            border-color: rgba(217, 119, 6, 0.32);
            background: rgba(245, 158, 11, 0.1);
            color: #a85f08;
        }

        .public-lead-pool-manager-review {
            margin-top: 0;
            overflow: hidden;
            border: 1px solid var(--border-soft);
            border-radius: 8px;
            background: rgba(255, 255, 255, 0.64);
        }

        .public-lead-pool-review-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
            padding: 16px 18px;
            border-bottom: 1px solid var(--border-soft);
        }

        .public-lead-pool-review-header h3 {
            margin: 0 0 4px;
            font-size: 17px;
        }

        .public-lead-pool-review-header p {
            margin: 0;
            color: var(--text-muted);
            font-size: 13px;
        }

        .public-lead-pool-review-tabs {
            display: inline-flex;
            align-items: center;
            gap: 4px;
            padding: 4px;
            border: 1px solid var(--border-soft);
            border-radius: 8px;
            background: rgba(239, 245, 255, 0.74);
        }

        .public-lead-pool-review-tab {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            min-height: 34px;
            padding: 6px 11px;
            border: 0;
            border-radius: 6px;
            background: transparent;
            color: var(--text-muted);
            font-size: 12px;
            font-weight: 600;
            cursor: pointer;
        }

        .public-lead-pool-review-tab.is-active {
            background: #fff;
            color: var(--primary);
            box-shadow: 0 4px 12px rgba(47, 112, 255, 0.1);
        }

        .public-lead-pool-review-tab span {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 22px;
            min-height: 22px;
            padding: 0 6px;
            border-radius: 999px;
            background: rgba(47, 112, 255, 0.1);
            color: inherit;
        }

        .public-lead-pool-review-list {
            display: block;
        }

        .public-lead-pool-review-item {
            display: grid;
            grid-template-columns: minmax(260px, 1.45fr) minmax(110px, 0.48fr) minmax(210px, 0.8fr) auto;
            gap: 20px;
            align-items: center;
            min-width: 0;
            padding: 13px 18px;
            border-bottom: 1px solid var(--border-soft);
            background: transparent;
        }

        .public-lead-pool-review-item:last-child {
            border-bottom: 0;
        }

        .public-lead-pool-review-item:hover {
            background: rgba(47, 112, 255, 0.035);
        }

        .public-lead-pool-review-item > div {
            min-width: 0;
        }

        .public-lead-pool-review-item .btn {
            justify-self: end;
            white-space: nowrap;
        }

        .public-lead-pool-review-actions {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 8px;
        }

        .public-lead-pool-review-disposition {
            display: grid;
            gap: 3px;
            min-width: 0;
        }

        .public-lead-pool-review-disposition strong {
            color: #a85f08;
            font-size: 13px;
        }

        .public-lead-pool-review-disposition.nudged strong {
            color: var(--primary);
        }

        .public-lead-pool-review-disposition span,
        .public-lead-pool-review-disposition em {
            overflow: hidden;
            color: var(--text-muted);
            font-size: 12px;
            font-style: normal;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .public-lead-pool-review-title {
            display: flex;
            align-items: center;
            gap: 8px;
            min-width: 0;
        }

        .public-lead-pool-review-title strong,
        .public-lead-pool-review-source,
        .public-lead-pool-review-meta strong {
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .public-lead-pool-review-source,
        .public-lead-pool-review-meta span,
        .public-lead-pool-review-meta em {
            display: block;
            color: var(--text-muted);
            font-size: 12px;
        }

        .public-lead-pool-review-source {
            margin-top: 5px;
        }

        .public-lead-pool-review-meta strong {
            display: block;
            margin-top: 3px;
            font-size: 14px;
        }

        .public-lead-pool-review-meta em {
            margin-top: 3px;
            color: #a85f08;
            font-style: normal;
        }

        .public-lead-pool-review-stage {
            display: inline-flex;
            align-items: center;
            flex: 0 0 auto;
            min-height: 24px;
            padding: 2px 8px;
            border: 1px solid rgba(245, 158, 11, 0.3);
            border-radius: 999px;
            background: rgba(245, 158, 11, 0.1);
            color: #a85f08;
            font-size: 12px;
            font-weight: 600;
            white-space: nowrap;
        }

        .public-lead-pool-review-stage.is-visited {
            border-color: rgba(47, 112, 255, 0.26);
            background: rgba(47, 112, 255, 0.08);
            color: var(--primary);
        }

        .public-lead-pool-review-action-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 10px;
        }

        .public-lead-pool-review-action-option {
            display: grid;
            gap: 5px;
            min-width: 0;
            min-height: 92px;
            padding: 12px;
            border: 1px solid var(--border-soft);
            border-radius: 8px;
            background: rgba(255, 255, 255, 0.68);
            color: var(--text-main);
            text-align: left;
            cursor: pointer;
        }

        .public-lead-pool-review-action-option strong {
            font-size: 14px;
        }

        .public-lead-pool-review-action-option span {
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.55;
        }

        .public-lead-pool-review-action-option.is-active {
            border-color: rgba(47, 112, 255, 0.62);
            background: rgba(232, 241, 255, 0.94);
            box-shadow: inset 0 0 0 1px rgba(47, 112, 255, 0.1);
        }

        .public-lead-pool-review-action-option.is-danger.is-active {
            border-color: rgba(220, 38, 38, 0.58);
            background: rgba(254, 226, 226, 0.86);
            box-shadow: inset 0 0 0 1px rgba(220, 38, 38, 0.08);
        }

        .sales-feedback-state-tag.review-returned {
            border-color: rgba(220, 38, 38, 0.28);
            background: rgba(254, 226, 226, 0.8);
            color: #b42318;
        }

        .sales-feedback-state-tag.review-nudged {
            border-color: rgba(47, 112, 255, 0.28);
            background: rgba(232, 241, 255, 0.9);
            color: #245dd8;
        }

        .sales-feedback-review-notice {
            display: grid;
            gap: 3px;
            margin-bottom: 8px;
            padding: 9px 10px;
            border: 1px solid rgba(220, 38, 38, 0.22);
            border-left: 3px solid #dc2626;
            border-radius: 6px;
            background: rgba(254, 242, 242, 0.88);
            text-align: left;
        }

        .sales-feedback-review-notice.nudged {
            border-color: rgba(47, 112, 255, 0.22);
            border-left-color: var(--primary);
            background: rgba(239, 246, 255, 0.9);
        }

        .sales-feedback-review-notice strong {
            color: #b42318;
            font-size: 12px;
        }

        .sales-feedback-review-notice.nudged strong {
            color: #245dd8;
        }

        .sales-feedback-review-notice span,
        .sales-feedback-review-notice em,
        .sales-feedback-context-review small {
            color: var(--text-muted);
            font-size: 11px;
            font-style: normal;
            line-height: 1.45;
        }

        .sales-feedback-context-review {
            border-left: 3px solid #dc2626;
            background: rgba(254, 242, 242, 0.88);
        }

        .sales-feedback-context-review.nudged {
            border-left-color: var(--primary);
            background: rgba(239, 246, 255, 0.9);
        }

        @media (max-width: 1180px) {
            .public-lead-pool-summary,
            .public-lead-pool-summary.is-admin {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }
        }

        @media (max-width: 900px) {
            .public-lead-pool-summary {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .public-lead-pool-summary.is-admin {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .public-lead-pool-review-item {
                grid-template-columns: minmax(0, 1fr) auto;
                gap: 10px 14px;
            }

            .public-lead-pool-review-main {
                grid-column: 1 / -1;
            }

            .public-lead-pool-review-item .btn {
                justify-self: stretch;
            }

            .public-lead-pool-review-actions {
                grid-column: 1 / -1;
                justify-content: stretch;
            }

            .public-lead-pool-review-actions .btn {
                flex: 1 1 0;
            }
        }

        @media (max-width: 560px) {
            .public-lead-pool-summary {
                grid-template-columns: 1fr 1fr;
                gap: 8px;
            }

            .public-lead-pool-stat {
                min-height: 84px;
                padding: 12px;
            }

            .public-lead-pool-stat strong {
                font-size: 18px;
            }

            .public-lead-pool-view-switch {
                display: grid;
                grid-template-columns: repeat(3, minmax(0, 1fr));
                width: 100%;
            }

            #public-lead-pool-view-switch {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .public-lead-pool-view-tab {
                min-width: 0;
                padding-inline: 8px;
            }

            .public-lead-pool-review-header {
                align-items: flex-start;
                flex-direction: column;
                padding: 14px;
            }

            .public-lead-pool-review-tabs {
                width: 100%;
            }

            .public-lead-pool-review-tab {
                flex: 1 1 0;
                min-width: 0;
            }

            .public-lead-pool-review-item {
                grid-template-columns: 1fr;
                padding: 13px 14px;
            }

            .public-lead-pool-review-action-grid {
                grid-template-columns: 1fr;
            }
        }

        .feedback-updates-panel {
            margin-bottom: 1rem;
        }

        .feedback-updates-filter-grid {
            grid-template-columns: 150px minmax(240px, 1fr) minmax(180px, 220px) minmax(160px, 200px) 140px;
        }

        .feedback-updates-summary {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.8rem;
            margin-bottom: 0.8rem;
            color: var(--text-muted);
            font-size: 13px;
        }

        .feedback-updates-list {
            display: grid;
            gap: 0.78rem;
        }

        .feedback-update-card {
            display: grid;
            grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.4fr) auto;
            gap: 1rem;
            align-items: center;
            padding: 0.92rem 1rem;
            border: 1px solid rgba(179, 197, 228, 0.72);
            border-radius: 14px;
            background: rgba(252, 254, 255, 0.92);
            box-shadow: 0 14px 32px rgba(28, 77, 139, 0.07);
        }

        .feedback-update-card.unread {
            border-color: rgba(47, 107, 255, 0.55);
            background: linear-gradient(90deg, rgba(235, 242, 255, 0.95), rgba(255, 255, 255, 0.95));
        }

        .feedback-update-title {
            display: flex;
            align-items: center;
            gap: 0.44rem;
            min-width: 0;
            font-weight: 800;
            color: var(--text-main);
        }

        .feedback-update-title strong,
        .feedback-update-meta,
        .feedback-update-content {
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .feedback-update-meta {
            margin-top: 0.28rem;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.55;
        }

        .feedback-update-content {
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            color: var(--text-main);
            line-height: 1.55;
            font-size: 13px;
        }

        .feedback-update-tags,
        .feedback-update-actions {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 0.36rem;
        }

        .feedback-update-tag,
        .lead-unread-feedback-badge {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 24px;
            padding: 0.14rem 0.48rem;
            border-radius: 999px;
            border: 1px solid rgba(47, 107, 255, 0.25);
            background: rgba(232, 240, 255, 0.86);
            color: var(--primary);
            font-size: 12px;
            font-weight: 800;
            white-space: nowrap;
        }

        .feedback-update-tag.muted {
            color: var(--text-muted);
            background: rgba(245, 248, 252, 0.9);
            border-color: rgba(184, 199, 224, 0.7);
        }

        .feedback-update-actions {
            justify-content: flex-end;
            min-width: 190px;
        }

        .feedback-update-actions .btn,
        .feedback-update-actions .text-action {
            min-height: 32px;
            white-space: nowrap;
        }

        .lead-unread-feedback-badge {
            margin-top: 0.28rem;
            background: rgba(255, 247, 225, 0.94);
            border-color: rgba(245, 158, 11, 0.34);
            color: #b45309;
            cursor: pointer;
            font-family: inherit;
        }

        .lead-unread-feedback-badge:hover {
            border-color: rgba(245, 158, 11, 0.62);
            background: rgba(255, 237, 213, 0.98);
        }

        .sales-feedback-mobile-card {
            display: grid;
            gap: 0.48rem;
        }

        .sales-feedback-mobile-card.sales-feedback-row-today {
            background: linear-gradient(180deg, rgba(240, 253, 250, 0.98), rgba(255, 255, 255, 0.96));
            border-color: rgba(20, 184, 166, 0.28);
        }

        .sales-feedback-mobile-card.sales-feedback-row-overdue {
            background: linear-gradient(180deg, rgba(255, 241, 242, 0.98), rgba(255, 255, 255, 0.96));
            border-color: rgba(239, 68, 68, 0.28);
        }

        .sales-feedback-mobile-card.sales-feedback-row-prospect {
            border-color: rgba(75, 131, 245, 0.34);
            background: linear-gradient(180deg, rgba(241, 247, 255, 0.98), rgba(255, 255, 255, 0.96));
        }

        .sales-feedback-mobile-title {
            min-width: 0;
            display: grid;
            gap: 0.18rem;
        }

        .sales-feedback-mobile-title strong,
        .sales-feedback-mobile-title span,
        .sales-feedback-mobile-line strong,
        .sales-feedback-mobile-footer span,
        .sales-feedback-mobile-latest {
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .sales-feedback-mobile-title span,
        .sales-feedback-mobile-line span,
        .sales-feedback-mobile-footer,
        .sales-feedback-mobile-latest {
            color: var(--text-muted);
            font-size: 12px;
        }

        .sales-feedback-mobile-line,
        .sales-feedback-mobile-footer {
            display: grid;
            grid-template-columns: 34px minmax(0, 1fr) auto;
            align-items: center;
            gap: 0.42rem;
        }

        .sales-feedback-mobile-footer {
            grid-template-columns: minmax(0, 1fr) auto;
        }

        .sales-feedback-mobile-actions {
            display: inline-flex;
            align-items: center;
            justify-content: flex-end;
            gap: 0.38rem;
            min-width: 0;
            white-space: nowrap;
        }

        .sales-feedback-mobile-remark {
            color: var(--text-main);
            font-size: 13px;
            line-height: 1.52;
            display: -webkit-box;
            overflow: hidden;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
        }

        .lead-quick-filters {
            display: flex;
            flex-wrap: wrap;
            gap: 0.72rem;
            margin-bottom: 0.92rem;
            padding: 0.88rem 0.92rem;
            border-radius: 20px;
            border: 1px solid rgba(191, 206, 233, 0.5);
            background: linear-gradient(160deg, rgba(255, 255, 255, 0.82), rgba(238, 245, 255, 0.72));
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.84);
        }

        .lead-quick-filters .btn {
            min-width: 120px;
            font-weight: 600;
        }

        .lead-quick-filters .btn.outline {
            border-color: rgba(170, 188, 223, 0.86);
            background: rgba(255, 255, 255, 0.92);
        }

        .lead-quick-filters .btn.active {
            color: #fff;
            border-color: rgba(52, 110, 255, 0.42);
            background: linear-gradient(160deg, #4a86ff 0%, #2f6fff 56%, #265de0 100%);
            box-shadow:
                0 14px 24px rgba(44, 101, 238, 0.24),
                inset 0 1px 0 rgba(255, 255, 255, 0.34);
        }

        .lead-quick-filters .btn.active:hover {
            background: linear-gradient(160deg, #3f7efc 0%, #2b68ef 56%, #1e53cd 100%);
        }

        .lead-origin-toolbar {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 1rem;
            margin-bottom: 0.9rem;
            padding: 0.78rem 0.9rem;
            border: 1px solid rgba(191, 206, 233, 0.58);
            border-radius: 18px;
            background: linear-gradient(150deg, rgba(255, 255, 255, 0.94), rgba(239, 246, 255, 0.8));
        }

        .lead-origin-tabs {
            display: inline-flex;
            align-items: center;
            gap: 0.42rem;
            padding: 0.28rem;
            border: 1px solid rgba(178, 196, 228, 0.72);
            border-radius: 14px;
            background: rgba(235, 242, 254, 0.78);
        }

        .lead-origin-tab {
            min-height: 36px;
            padding: 0.46rem 0.86rem;
            border: 0;
            border-radius: 11px;
            background: transparent;
            color: #52627e;
            font: inherit;
            font-size: 13px;
            font-weight: 650;
            cursor: pointer;
            white-space: nowrap;
        }

        .lead-origin-tab:hover {
            color: #245fd7;
            background: rgba(255, 255, 255, 0.74);
        }

        .lead-origin-tab.active {
            color: #fff;
            background: linear-gradient(150deg, #4a86ff, #2f6fff 58%, #2459d3);
            box-shadow: 0 8px 18px rgba(47, 105, 237, 0.22);
        }

        .lead-origin-note {
            margin: 0;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.55;
            text-align: right;
        }

        @media (max-width: 760px) {
            .lead-origin-toolbar {
                align-items: stretch;
                flex-direction: column;
                gap: 0.58rem;
            }

            .lead-origin-tabs {
                display: grid;
                grid-template-columns: repeat(3, minmax(0, 1fr));
                width: 100%;
            }

            .lead-origin-tab {
                min-width: 0;
                padding-inline: 0.42rem;
                white-space: normal;
            }

            .lead-origin-note {
                text-align: left;
            }
        }

        .delivery-form-hint {
            margin: -0.14rem 0 0.92rem;
            color: var(--text-muted);
            line-height: 1.65;
            font-size: 13px;
        }

        .metric-table-head {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 0.6rem;
            margin-bottom: 0.72rem;
        }

        .metric-table-head h3 {
            margin: 0;
            font-size: 17px;
        }

        .metric-table-note {
            font-size: 12px;
            color: var(--text-muted);
        }

        .metric-table-wrap {
            flex: 1;
            min-height: 0;
            overflow: auto;
        }

        .metric-table {
            width: 100%;
            table-layout: auto;
            min-width: 620px;
        }

        .metric-table th,
        .metric-table td {
            padding: 0.62rem 0.58rem;
            border-bottom: 1px solid rgba(214, 225, 242, 0.56);
            text-align: center;
            font-size: 13px;
            white-space: nowrap;
        }

        .metric-table th {
            font-size: 12px;
            color: var(--text-muted);
            position: sticky;
            top: 0;
            background: rgba(247, 250, 255, 0.96);
            z-index: 1;
        }

        .metric-table tr:last-child td {
            border-bottom: 0;
        }

        .metric-table tbody tr:hover td,
        .performance-records-table tbody tr:hover td {
            background: rgba(240, 246, 255, 0.66);
        }

        .metric-table td.emphasis {
            font-weight: 700;
            color: #0f172a;
        }

        .metric-table td.muted {
            color: var(--text-muted);
        }

        .metric-table tr.total-row td {
            background: rgba(227, 238, 255, 0.72);
            font-weight: 700;
            color: #0f172a;
        }

        .performance-records-panel {
            margin-bottom: 0.8rem;
        }

        .header-date-filters {
            display: inline-flex;
            align-items: center;
            gap: 0.45rem;
            flex-wrap: wrap;
        }

        .header-date-filters input {
            min-width: 132px;
        }

        .target-header-actions {
            width: auto;
            flex: 0 0 auto;
            justify-content: flex-end;
        }

        .target-header-tools {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 0.56rem;
            flex-wrap: nowrap;
            width: auto;
            max-width: 100%;
        }

        .target-header-month {
            display: inline-flex;
            align-items: center;
            gap: 0.38rem;
            flex-wrap: nowrap;
            padding: 0;
            border: 0;
            background: transparent;
        }

        .target-header-month .filter-input {
            width: 138px;
            min-width: 138px;
            height: 36px;
        }

        .target-header-month .btn {
            height: 36px;
            padding: 0.2rem 0.72rem;
            white-space: nowrap;
        }

        .target-header-buttons {
            display: inline-flex;
            align-items: center;
            gap: 0.56rem;
            flex-wrap: wrap;
            justify-content: flex-end;
        }

        #view-performance-targets .header {
            margin-bottom: 0.78rem;
            padding-bottom: 0.56rem;
        }

        #view-performance-targets .header h2 {
            font-size: 28px;
            line-height: 1.08;
            white-space: nowrap;
        }

        .lead-header-actions {
            display: inline-flex;
            align-items: center;
            gap: 0.56rem;
            flex-wrap: wrap;
            justify-content: flex-start;
        }

        .lead-header-actions .range-switch {
            margin-right: 0.24rem;
        }

        .lead-header-actions .btn {
            min-width: 108px;
            justify-content: center;
        }

        .lead-header-actions-buttons {
            display: inline-flex;
            align-items: center;
            gap: 0.56rem;
            flex-wrap: wrap;
        }

        .lead-date-toolbar {
            display: grid;
            gap: 0.56rem;
            margin-bottom: 0.92rem;
            padding: 0.92rem 0.96rem;
            border-radius: 20px;
            border: 1px solid rgba(211, 225, 246, 0.78);
            background: linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(245, 249, 255, 0.94));
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, 0.9),
                0 12px 28px rgba(22, 58, 120, 0.06);
        }

        .lead-date-toolbar-main {
            display: flex;
            flex-wrap: wrap;
            gap: 0.62rem;
            align-items: center;
        }

        .lead-date-toolbar-label {
            display: inline-flex;
            align-items: center;
            min-width: 88px;
            color: #526784;
            font-size: 12px;
            font-weight: 700;
            letter-spacing: 0.04em;
            white-space: nowrap;
        }

        .lead-command-panel {
            margin-bottom: 0.92rem;
            padding: 0.94rem;
            border-radius: 22px;
            border: 1px solid rgba(211, 225, 246, 0.78);
            background: linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(245, 249, 255, 0.96));
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, 0.9),
                0 12px 28px rgba(22, 58, 120, 0.06);
        }

        .lead-date-field {
            display: grid;
            grid-template-columns: auto minmax(132px, 1fr);
            align-items: center;
            gap: 0.48rem;
            min-height: 44px;
            padding: 0 0.74rem 0 0.8rem;
            border-radius: 16px;
            border: 1px solid rgba(184, 203, 236, 0.88);
            background: rgba(255, 255, 255, 0.96);
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, 0.88),
                0 10px 22px rgba(28, 78, 173, 0.05);
            cursor: pointer;
            transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
        }

        .lead-date-field:hover,
        .lead-date-field:focus-within {
            border-color: rgba(88, 137, 232, 0.92);
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, 0.94),
                0 12px 24px rgba(43, 94, 201, 0.1);
            transform: translateY(-1px);
        }

        .lead-date-field span {
            font-size: 12px;
            font-weight: 700;
            color: #59708f;
            white-space: nowrap;
        }

        .lead-date-field .filter-input {
            width: 100%;
            min-width: 0;
            height: 42px;
            padding: 0;
            border: 0;
            border-radius: 0;
            background: transparent;
            box-shadow: none;
            cursor: pointer;
        }

        .lead-date-field .filter-input:focus {
            box-shadow: none;
        }

        .lead-date-toolbar-main .btn {
            min-width: 104px;
            justify-content: center;
        }

        .lead-filter-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
            gap: 0.58rem;
            align-items: center;
            padding: 0.82rem 0.88rem;
            border-radius: 20px;
            border: 1px solid rgba(191, 206, 233, 0.5);
            background: linear-gradient(160deg, rgba(255, 255, 255, 0.86), rgba(238, 245, 255, 0.76));
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.84);
        }

        .lead-filter-grid .filter-input,
        .lead-filter-grid .btn {
            height: 40px;
        }

        #filter-source-account {
            grid-column: span 2;
        }

        /* 跟进状态: its two longest options (跟进中（未填阶段）…) need a double cell on wide screens, like 来源账号. */
        @media (min-width: 901px) {
            #filter-follow-stage {
                grid-column: span 2;
            }
        }

        .lead-filter-grid .btn.outline {
            border-color: rgba(170, 188, 223, 0.86);
            background: rgba(255, 255, 255, 0.92);
        }

        .lead-filter-grid .btn.outline:hover {
            background: rgba(255, 255, 255, 0.96);
        }

        .lead-query-summary {
            display: none;
            flex-wrap: wrap;
            gap: 0.34rem 0.74rem;
            align-items: center;
            margin: -0.28rem 0 0.82rem;
            padding: 0 0.16rem;
            color: #60708a;
            font-size: 12px;
            line-height: 1.55;
        }

        .lead-query-summary strong {
            color: #224cba;
        }

        .target-page-shell {
            display: grid;
            gap: 0.78rem;
        }

        .target-hero-card {
            padding: 0.78rem 0.9rem;
        }

        .target-hero-head {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 0.8rem;
        }

        .target-hero-head h3 {
            margin: 0;
            font-size: 20px;
        }

        .target-hero-head p {
            margin: 0.18rem 0 0;
            color: var(--text-muted);
            font-size: 12px;
            max-width: 720px;
        }

        .target-overview-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 0.64rem;
            margin-top: 0.62rem;
        }

        .target-overview-card {
            padding: 0.72rem 0.82rem;
            border-radius: 16px;
            background: rgba(255, 255, 255, 0.66);
            border: 1px solid rgba(184, 202, 232, 0.72);
        }

        .target-overview-card label {
            display: block;
            font-size: 12px;
            color: var(--text-muted);
            margin-bottom: 0.28rem;
        }

        .target-overview-card strong {
            display: block;
            font-size: 24px;
            color: #0f172a;
            line-height: 1.05;
        }

        .target-overview-card span {
            display: block;
            margin-top: 0.3rem;
            font-size: 12px;
            color: #5b6781;
        }

        .target-meta-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.78rem;
            margin-top: 0.88rem;
        }

        .target-meta-grid .input-group {
            margin-bottom: 0;
        }

        .target-filter-grid {
            display: grid;
            grid-template-columns: repeat(5, minmax(0, 1fr));
            gap: 0.58rem;
            align-items: center;
            padding: 0.72rem 0.78rem;
            border-radius: 18px;
            border: 1px solid rgba(191, 206, 233, 0.5);
            background: linear-gradient(160deg, rgba(255, 255, 255, 0.86), rgba(238, 245, 255, 0.76));
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.84);
        }

        .target-filter-grid .filter-input,
        .target-filter-grid .btn {
            height: 40px;
        }

        .target-list {
            display: grid;
            gap: 0.7rem;
            margin-top: 0.74rem;
        }

        .city-target-summary {
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }

        .city-target-list {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.78rem;
        }

        .city-target-card {
            padding: 1rem;
        }

        .city-target-input-group {
            margin: 0 0 0.78rem;
        }

        .target-row-card {
            padding: 0.78rem 0.82rem;
            border-radius: 16px;
            border: 1px solid rgba(186, 203, 233, 0.7);
            background: rgba(255, 255, 255, 0.72);
        }

        .target-row-head {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 0.7rem;
            margin-bottom: 0.68rem;
        }

        .target-row-head strong {
            display: block;
            font-size: 16px;
            color: #0f172a;
        }

        .target-row-head span {
            display: block;
            margin-top: 0.16rem;
            font-size: 12px;
            color: var(--text-muted);
        }

        .target-row-head b {
            font-size: 18px;
            color: #2d5bff;
            white-space: nowrap;
        }

        .target-row-side {
            display: grid;
            justify-items: end;
            gap: 0.42rem;
        }

        .target-status-badge {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 68px;
            padding: 0.22rem 0.58rem;
            border-radius: 999px;
            font-size: 11px;
            font-weight: 700;
            border: 1px solid transparent;
        }

        .target-status-badge.no_target {
            color: #64748b;
            background: rgba(241, 245, 249, 0.94);
            border-color: rgba(203, 213, 225, 0.78);
        }

        .target-status-badge.running {
            color: #b45309;
            background: rgba(255, 247, 237, 0.96);
            border-color: rgba(251, 191, 36, 0.5);
        }

        .target-status-badge.reached {
            color: #166534;
            background: rgba(236, 253, 245, 0.96);
            border-color: rgba(110, 231, 183, 0.56);
        }

        .target-row-inputs {
            display: grid;
            grid-template-columns: 1fr;
            gap: 0.55rem;
            margin-bottom: 0.72rem;
        }

        .target-row-progress {
            display: grid;
            gap: 0.46rem;
        }

        .target-progress-line {
            display: flex;
            justify-content: space-between;
            gap: 0.6rem;
            font-size: 12px;
            color: #475569;
        }

        .target-progress-track {
            width: 100%;
            height: 8px;
            border-radius: 999px;
            background: rgba(202, 214, 235, 0.62);
            overflow: hidden;
        }

        .target-progress-track i {
            display: block;
            height: 100%;
            border-radius: inherit;
            background: linear-gradient(90deg, #2d5bff, #5a89ff);
        }

        .target-progress-track.warm i {
            background: linear-gradient(90deg, #ff9f43, #ff7f50);
        }

        .target-row-meta {
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem 0.9rem;
            margin-top: 0.78rem;
            padding-top: 0.72rem;
            border-top: 1px solid rgba(214, 225, 242, 0.62);
            font-size: 12px;
            color: #5b6781;
        }

        .table-toolbar {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.7rem;
            padding: 0.84rem 0.92rem 0;
        }

        .table-toolbar p {
            color: var(--text-muted);
            font-size: 13px;
        }

        .performance-batch-bar {
            margin: 0 0.92rem 0.84rem;
            border-color: rgba(191, 206, 233, 0.56);
            background: linear-gradient(160deg, rgba(255, 255, 255, 0.88), rgba(240, 246, 255, 0.84));
        }

        .performance-batch-bar .filter-input {
            min-width: 188px;
            max-width: 240px;
        }

        .performance-batch-bar .btn {
            white-space: nowrap;
        }

        .performance-records-table th,
        .performance-records-table td {
            padding: 0.66rem 0.54rem;
            border-bottom: 1px solid rgba(214, 225, 242, 0.56);
            font-size: 13px;
            text-align: center;
            white-space: nowrap;
        }

        .performance-records-table {
            width: 100%;
            table-layout: fixed;
            min-width: 972px;
        }

        #adq-reservations-table {
            min-width: 0;
            table-layout: auto;
        }

        #adq-reservations-table th,
        #adq-reservations-table td {
            white-space: normal;
            overflow-wrap: anywhere;
            vertical-align: middle;
        }

        .adq-reservations-summary {
            display: flex;
            margin: 0.7rem 0.16rem 0;
        }

        .performance-records-table th {
            font-size: 12px;
            color: var(--text-muted);
            background: rgba(247, 250, 255, 0.96);
        }

        .performance-records-table tr:last-child td {
            border-bottom: 0;
        }

        .text-actions {
            display: inline-flex;
            justify-content: center;
            gap: 0.46rem;
            flex-wrap: wrap;
        }

        .performance-empty {
            padding: 1rem 0.9rem 1.1rem;
            text-align: center;
            color: var(--text-muted);
            font-size: 13px;
        }

        .performance-form-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.7rem;
            width: 100%;
            max-width: 100%;
            min-width: 0;
        }

        .performance-paste-box {
            margin-bottom: 0.9rem;
            padding: 0.82rem 0.88rem;
            border-radius: 16px;
            border: 1px solid rgba(179, 197, 228, 0.46);
            background: linear-gradient(160deg, rgba(248, 251, 255, 0.96), rgba(240, 246, 255, 0.8));
        }

        .upload-dropzone {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 0.56rem;
            min-height: 154px;
            margin-top: 0.88rem;
            padding: 1rem 1.05rem;
            border-radius: 18px;
            border: 1.5px dashed rgba(82, 127, 225, 0.34);
            background: linear-gradient(180deg, rgba(249, 252, 255, 0.92), rgba(241, 247, 255, 0.84));
            text-align: center;
            cursor: pointer;
            transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
        }

        .upload-dropzone:hover {
            border-color: rgba(82, 127, 225, 0.54);
            background: linear-gradient(180deg, rgba(250, 252, 255, 0.98), rgba(236, 244, 255, 0.92));
            transform: translateY(-1px);
            box-shadow: 0 14px 28px rgba(90, 119, 183, 0.08);
        }

        .upload-dropzone.active {
            border-color: rgba(55, 104, 255, 0.78);
            background: linear-gradient(180deg, rgba(238, 246, 255, 0.98), rgba(228, 239, 255, 0.94));
            box-shadow: 0 16px 32px rgba(64, 108, 216, 0.12);
        }

        .source-media-box {
            min-height: 42px;
            border: 1.5px dashed rgba(82, 127, 225, 0.34);
            border-radius: 12px;
            padding: 0.55rem 0.62rem;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.55rem;
            background: rgba(255, 255, 255, 0.72);
            color: var(--text-muted);
            cursor: pointer;
            transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
        }

        .source-media-box strong {
            display: block;
            color: var(--text-main);
            font-size: 0.82rem;
            margin-bottom: 0.1rem;
        }

        .source-media-box span {
            display: block;
            font-size: 0.72rem;
            line-height: 1.32;
        }

        .source-media-actions {
            display: flex;
            gap: 0.4rem;
            flex-wrap: wrap;
            justify-content: flex-end;
        }

        .source-media-box.is-dragover {
            border-color: rgba(55, 104, 255, 0.78);
            background: rgba(47, 108, 255, 0.08);
            box-shadow: 0 12px 24px rgba(64, 108, 216, 0.1);
        }

        .source-media-status {
            min-height: 1.15rem;
            margin-top: 0.42rem;
            font-size: 0.78rem;
            color: var(--text-muted);
            word-break: break-all;
        }

        .source-media-status.success {
            color: #17693a;
        }

        .source-media-status.error {
            color: #b42318;
        }

        .source-post-library-open {
            display: block;
            margin: 0.1rem 0 0 auto;
            padding: 0.3rem 0.1rem;
            border: 0;
            background: none;
            color: var(--primary-hover);
            font: inherit;
            font-size: 0.78rem;
            font-weight: 600;
            cursor: pointer;
        }

        .source-post-library-open:hover {
            text-decoration: underline;
        }

        /* In the edit dialog the upload box follows directly: the link keeps clear of it. */
        .source-post-library-open + .source-media-box {
            margin-top: 0.4rem;
        }

        .source-post-library-list {
            display: flex;
            flex-direction: column;
            gap: 0.5rem;
            max-height: 58vh;
            overflow: auto;
            margin-top: 0.6rem;
            padding: 0.2rem;
        }

        .source-post-library-hint {
            color: var(--text-muted);
            font-size: 0.8rem;
            line-height: 1.5;
        }

        .source-post-library-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.75rem;
            padding: 0.6rem 0.7rem;
            border: 1px solid var(--border);
            border-radius: 8px;
            background: rgba(255, 255, 255, 0.78);
        }

        .source-post-library-main {
            min-width: 0;
            flex: 1;
        }

        .source-post-library-title {
            color: var(--text-main);
            font-weight: 700;
            font-size: 0.92rem;
            line-height: 1.4;
            overflow-wrap: anywhere;
        }

        .source-post-library-title.is-untitled {
            color: var(--text-muted);
            font-weight: 500;
        }

        .source-post-library-meta {
            margin-top: 0.15rem;
            color: var(--text-muted);
            font-size: 0.76rem;
            overflow-wrap: anywhere;
        }

        /* The link line (always the second one) stays on one line on a phone instead of leaving a lone "…". */
        .source-post-library-meta + .source-post-library-meta {
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .source-post-library-actions {
            display: flex;
            gap: 0.4rem;
            flex-shrink: 0;
        }

        .source-post-library-actions a.btn {
            text-decoration: none;
            line-height: normal;
        }

        @media (max-width: 640px) {
            .source-post-library-row {
                flex-direction: column;
                align-items: stretch;
            }
        }

        .source-media-library-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
            gap: 0.75rem;
            max-height: 62vh;
            overflow: auto;
            padding: 0.2rem;
        }

        .source-media-library-card {
            display: flex;
            flex-direction: column;
            gap: 0.45rem;
            padding: 0.65rem;
            border: 1px solid var(--border);
            border-radius: 8px;
            background: rgba(255, 255, 255, 0.78);
        }

        .source-media-library-actions {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 8px;
            margin-top: auto;
        }

        .source-media-library-actions .btn {
            width: 100%;
            min-width: 0;
            padding-inline: 8px;
        }

        .source-media-library-delete {
            color: #c73b47 !important;
            border-color: #efb8be !important;
            background: #fff7f8 !important;
        }

        .source-media-library-delete:hover {
            color: #a91f2d !important;
            border-color: #e9909a !important;
            background: #ffecef !important;
        }

        .source-media-library-preview {
            display: grid;
            place-items: center;
            height: 104px;
            border-radius: 8px;
            overflow: hidden;
            background: #edf4ff;
            color: var(--primary);
            font-weight: 800;
        }

        .source-media-library-preview img,
        .source-media-library-preview video {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .source-media-library-name {
            min-height: 2.5em;
            color: var(--text-main);
            font-size: 0.84rem;
            line-height: 1.25;
            word-break: break-all;
        }

        .source-media-library-meta {
            color: var(--text-muted);
            font-size: 0.76rem;
        }

        .lead-appeal-card {
            margin-bottom: 1rem;
        }

        .lead-appeals-panel {
            margin-bottom: 0.9rem;
            padding: 0.88rem 1rem;
        }

        .lead-appeal-card .card-head {
            align-items: flex-start;
            display: flex;
            gap: 1rem;
            justify-content: space-between;
            margin-bottom: 0.85rem;
        }

        .lead-appeal-card .card-head h3 {
            margin: 0 0 0.25rem;
        }

        .lead-appeal-card .card-head p {
            color: var(--text-muted);
            font-size: 0.86rem;
            line-height: 1.55;
            margin: 0;
        }

        .lead-appeal-list {
            display: grid;
            gap: 0.78rem;
        }

        .lead-appeal-item {
            display: grid;
            grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.45fr) auto;
            gap: 1rem;
            align-items: center;
            padding: 0.92rem 1rem;
            border: 1px solid rgba(179, 197, 228, 0.72);
            border-radius: 14px;
            background: rgba(252, 254, 255, 0.92);
            box-shadow: 0 14px 32px rgba(28, 77, 139, 0.07);
        }

        .lead-appeal-item-actions {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem;
            justify-content: flex-end;
            min-width: 230px;
        }

        .lead-appeal-item strong {
            color: var(--text-main);
        }

        .lead-appeal-meta,
        .lead-appeal-note {
            color: var(--text-muted);
            font-size: 0.84rem;
            line-height: 1.55;
            margin-top: 0.4rem;
        }

        .lead-appeal-note {
            color: var(--text-main);
        }

        .lead-appeal-note {
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }

        .lead-appeal-item .feedback-update-title {
            margin-bottom: 0.28rem;
        }

        .lead-appeal-submit-modal {
            max-height: min(86vh, 680px);
        }

        .lead-appeal-resolve-modal {
            max-height: min(88vh, 740px);
        }

        .lead-appeal-resolve-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.72rem;
        }

        .lead-appeal-resolve-grid .input-group.full {
            grid-column: 1 / -1;
        }

        .lead-appeal-resolve-note {
            margin: 0.86rem 0;
            padding: 0.74rem 0.84rem;
            border: 1px solid rgba(45, 91, 255, 0.18);
            border-radius: 8px;
            background: rgba(244, 248, 255, 0.74);
            color: var(--text-muted);
            font-size: 13px;
            line-height: 1.6;
        }

        .appeal-flow-box {
            display: grid;
            gap: 0.35rem;
            margin: 0.9rem 0 1rem;
            padding: 0.82rem 0.9rem;
            border: 1px solid rgba(45, 91, 255, 0.18);
            border-radius: 8px;
            background: linear-gradient(135deg, rgba(45, 91, 255, 0.08), rgba(49, 193, 163, 0.07));
            color: var(--text-main);
        }

        .appeal-flow-box strong {
            font-size: 14px;
        }

        .appeal-flow-box span {
            color: var(--text-muted);
            font-size: 13px;
            line-height: 1.6;
        }

        .appeal-reason-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.68rem;
        }

        .appeal-reason-option {
            display: grid;
            gap: 0.22rem;
            min-height: 82px;
            padding: 0.78rem 0.86rem;
            border: 1.5px solid rgba(151, 175, 214, 0.52);
            border-radius: 8px;
            background: rgba(255, 255, 255, 0.72);
            color: var(--text-main);
            text-align: left;
            cursor: pointer;
        }

        .appeal-reason-option strong {
            font-size: 14px;
        }

        .appeal-reason-option span {
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.45;
        }

        .appeal-reason-option.is-active {
            border-color: rgba(45, 91, 255, 0.86);
            background: rgba(45, 91, 255, 0.08);
            box-shadow: 0 10px 26px rgba(45, 91, 255, 0.12);
        }

        .upload-dropzone-title {
            font-size: 15px;
            font-weight: 700;
            color: var(--text-main);
        }

        .upload-dropzone-desc {
            max-width: 460px;
            font-size: 12px;
            line-height: 1.75;
            color: var(--text-muted);
        }

        .upload-dropzone-actions {
            display: flex;
            gap: 0.62rem;
            width: 100%;
            justify-content: center;
            flex-wrap: wrap;
            margin-top: 0.18rem;
        }

        .upload-stack {
            display: grid;
            gap: 0.78rem;
        }

        .upload-status-line {
            min-height: 22px;
            font-size: 13px;
            line-height: 1.65;
            color: var(--text-muted);
        }

        .upload-result-card {
            display: grid;
            gap: 0.72rem;
            border-radius: 14px;
            border: 1px solid rgba(181, 198, 227, 0.58);
            background: rgba(255, 255, 255, 0.62);
            padding: 0.82rem 0.88rem;
        }

        .upload-result-head {
            display: flex;
            align-items: baseline;
            justify-content: space-between;
            gap: 0.6rem;
            flex-wrap: wrap;
        }

        .upload-result-head strong {
            font-size: 14px;
        }

        .upload-result-head span {
            font-size: 12px;
            color: var(--text-muted);
        }

        .upload-summary-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 0.56rem;
        }

        .upload-summary-item {
            border-radius: 12px;
            padding: 0.68rem 0.72rem;
            background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(237, 245, 255, 0.85));
            border: 1px solid rgba(170, 191, 225, 0.56);
        }

        .upload-summary-item label {
            display: block;
            font-size: 12px;
            color: var(--text-muted);
            margin-bottom: 0.28rem;
        }

        .upload-summary-item b {
            font-size: 24px;
            line-height: 1;
        }

        .upload-error-panel {
            display: grid;
            gap: 0.56rem;
            border-radius: 12px;
            border: 1px solid rgba(239, 68, 68, 0.24);
            background: linear-gradient(180deg, rgba(255, 248, 248, 0.96), rgba(255, 239, 239, 0.78));
            padding: 0.78rem 0.82rem;
        }

        .upload-error-panel.is-empty {
            border-color: rgba(170, 191, 225, 0.42);
            background: rgba(255, 255, 255, 0.42);
        }

        .upload-error-head {
            display: flex;
            align-items: baseline;
            justify-content: space-between;
            gap: 0.6rem;
            flex-wrap: wrap;
        }

        .upload-error-head strong {
            font-size: 14px;
        }

        .upload-error-head span {
            font-size: 12px;
            color: var(--text-muted);
        }

        .upload-error-list {
            margin: 0;
            padding-left: 1.05rem;
            display: grid;
            gap: 0.38rem;
            font-size: 13px;
            line-height: 1.55;
            color: #8f1d1d;
        }

        .upload-error-panel.is-empty .upload-error-list {
            color: var(--text-muted);
        }

        .performance-paste-box label {
            display: block;
            margin-bottom: 0.42rem;
            font-weight: 600;
        }

        .performance-paste-box textarea {
            min-height: 148px;
        }

        .performance-paste-actions {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.7rem;
            margin-top: 0.66rem;
        }

        .performance-paste-hint {
            font-size: 12px;
            line-height: 1.7;
            color: var(--text-muted);
        }

        .performance-manage-grid {
            display: grid;
            grid-template-columns: minmax(560px, 1.08fr) minmax(390px, 0.92fr);
            gap: 0.8rem;
            margin-bottom: 0.8rem;
            align-items: stretch;
            width: 100%;
            max-width: 100%;
            min-width: 0;
        }

        .performance-manage-side {
            display: flex;
            flex-direction: column;
            gap: 0.8rem;
            align-content: start;
            align-self: stretch;
            height: 100%;
            min-height: 0;
        }

        .performance-manage-side > .card {
            width: 100%;
        }

        .performance-manage-side > .card:last-child {
            min-height: 0;
            display: flex;
            flex-direction: column;
            flex: 1;
        }

        .performance-manage-grid.read-only {
            grid-template-columns: 1fr;
        }

        .performance-manage-grid.read-only .performance-manage-side {
            display: grid;
            grid-template-columns: minmax(340px, 0.78fr) minmax(460px, 1.22fr);
            align-items: stretch;
            height: auto;
        }

        .performance-manage-grid.read-only #performance-summary-card,
        .performance-manage-grid.read-only #performance-focus-card {
            grid-column: 1;
        }

        .performance-manage-grid.read-only #performance-recent-card {
            grid-column: 2;
            grid-row: 1 / span 2;
        }

        .performance-form-head p {
            margin: 0.18rem 0 0;
            font-size: 13px;
            color: var(--text-muted);
            line-height: 1.65;
        }

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

        .performance-manage-list {
            display: grid;
            grid-template-rows: repeat(9, minmax(66px, 1fr));
            gap: 0.62rem;
            flex: 1;
            min-height: 0;
        }

        .channel-spend-recent-list {
            grid-template-rows: repeat(6, minmax(66px, 1fr));
        }

        .juguang-sync-health-card {
            display: none;
            margin-bottom: 1rem;
        }

        .spend-sync-overview {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 1rem;
            margin-bottom: 1rem;
            padding: 1rem 1.2rem;
            border: 1px solid #c8d8ef;
            border-left: 4px solid var(--success);
            border-radius: 12px;
            background: #fff;
        }

        .spend-sync-overview.has-error {
            border-left-color: var(--danger);
            background: #fff8f8;
        }

        .spend-sync-overview.is-inactive { border-left-color: #8290a6; }

        .spend-sync-overview-copy strong { font-size: 15px; color: var(--text-main); }
        .spend-sync-overview.has-error .spend-sync-overview-copy strong { color: var(--danger); }
        .spend-sync-overview-copy p { margin-top: 0.35rem; color: var(--text-muted); font-size: 12px; line-height: 1.7; overflow-wrap: anywhere; }
        .spend-sync-overview > .btn { flex: 0 0 auto; }
        .juguang-accounts-card { margin-bottom: 1rem; }
        .juguang-accounts-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1.2rem; }
        .juguang-account-row { display: flex; align-items: center; justify-content: space-between; gap: 0.8rem; padding: 0.85rem 0; border-top: 1px solid #dbe4f0; }
        .juguang-account-copy strong { display: block; font-size: 14px; overflow-wrap: anywhere; }
        .juguang-account-copy > span { display: block; margin-top: 0.25rem; font-size: 12px; line-height: 1.6; color: var(--text-muted); }
        .juguang-account-feedback { margin-top: 0.3rem; color: var(--success); font-size: 12px; line-height: 1.6; }
        .juguang-account-feedback.is-error { color: var(--danger); }
        .juguang-account-switch { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 0.4rem; padding: 0.45rem; min-height: 44px; color: var(--text-main); font-size: 12px; border: 0; border-radius: 6px; background: transparent; cursor: pointer; }
        .juguang-account-switch:disabled { opacity: 0.55; cursor: wait; }
        .juguang-account-switch:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
        .juguang-account-switch-track { display: inline-block; width: 34px; height: 20px; padding: 3px; border-radius: 12px; background: #8290a6; }
        .juguang-account-switch-track::after { content: ''; display: block; width: 14px; height: 14px; border-radius: 50%; background: #fff; }
        .juguang-account-switch[aria-checked="true"] .juguang-account-switch-track { background: var(--success); }
        .juguang-account-switch[aria-checked="true"] .juguang-account-switch-track::after { transform: translateX(14px); }
        .juguang-sync-health-pending { margin: 0.45rem 0; color: #91630a; font-size: 12px; line-height: 1.6; overflow-wrap: anywhere; }
        .juguang-sync-health-message + .juguang-sync-health-meta { margin-top: 0.55rem; }
        body[data-role="boss"] #channel-spend-entry-card { display: none; }

        @media (max-width: 720px) {
            .spend-sync-overview { flex-direction: column; align-items: flex-start; gap: 0.65rem; padding: 0.85rem; }
            .juguang-accounts-list { grid-template-columns: minmax(0, 1fr); }
        }

        .juguang-sync-health-card.has-error {
            border-color: rgba(220, 38, 38, 0.28);
            background: linear-gradient(180deg, rgba(255, 250, 250, 0.96), rgba(255, 243, 243, 0.84));
        }

        .juguang-sync-health-card.has-error .juguang-sync-health-count {
            color: var(--danger);
            background: rgba(220, 38, 38, 0.1);
        }

        .juguang-sync-health-list {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.62rem;
        }

        .juguang-sync-health-item {
            min-width: 0;
            padding: 0.78rem 0.84rem;
            border-radius: 14px;
            border: 1px solid rgba(201, 216, 242, 0.68);
            background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(243, 248, 255, 0.82));
        }

        .juguang-sync-health-item.is-unhealthy {
            border-color: rgba(220, 38, 38, 0.3);
            box-shadow: inset 3px 0 0 rgba(220, 38, 38, 0.72);
        }

        .juguang-sync-health-item-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.65rem;
            margin-bottom: 0.48rem;
        }

        .juguang-sync-health-item-head strong {
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .juguang-sync-health-meta {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.3rem 0.72rem;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.5;
        }

        .juguang-sync-health-meta b {
            color: var(--text-main);
            font-weight: 600;
        }

        .juguang-sync-health-message {
            margin-top: 0.46rem;
            padding-top: 0.42rem;
            border-top: 1px dashed rgba(201, 216, 242, 0.72);
            color: var(--danger);
            font-size: 12px;
            line-height: 1.55;
            overflow-wrap: anywhere;
        }

        .performance-manage-item {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            gap: 0.72rem;
            align-items: center;
            padding: 0.74rem 0.82rem;
            border-radius: 14px;
            border: 1px solid rgba(201, 216, 242, 0.68);
            background: linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(243, 248, 255, 0.78));
            min-height: 66px;
        }

        .performance-manage-item.placeholder {
            border-style: dashed;
            background: rgba(255, 255, 255, 0.32);
            color: transparent;
        }

        .performance-manage-item strong {
            display: block;
            margin-bottom: 0.12rem;
            font-size: 14px;
        }

        .performance-manage-item span {
            display: block;
            font-size: 12px;
            color: var(--text-muted);
            line-height: 1.5;
        }

        .performance-manage-item em {
            font-style: normal;
            font-size: 13px;
            font-weight: 700;
            color: var(--text-main);
            white-space: nowrap;
            font-variant-numeric: tabular-nums;
        }

        .performance-focus-list {
            display: grid;
            gap: 0.58rem;
        }

        .performance-focus-item {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            gap: 0.72rem;
            align-items: center;
            padding: 0.72rem 0.82rem;
            border-radius: 14px;
            border: 1px solid rgba(201, 216, 242, 0.68);
            background: rgba(248, 251, 255, 0.8);
        }

        .performance-focus-item strong,
        .performance-focus-item span {
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .performance-focus-item strong {
            display: block;
            margin-bottom: 0.14rem;
            font-size: 14px;
        }

        .performance-focus-item span {
            display: block;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.45;
            white-space: nowrap;
        }

        .performance-focus-item b {
            color: #1f48d2;
            font-size: 15px;
            font-variant-numeric: tabular-nums;
            white-space: nowrap;
        }

        .performance-manage-empty {
            padding: 1rem 0.2rem;
            text-align: center;
            color: var(--text-muted);
            font-size: 13px;
        }

        .performance-entry-guide {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.8rem;
            margin-bottom: 0.8rem;
            padding: 0.94rem 1rem;
            border-radius: 18px;
            border: 1px solid rgba(59, 130, 246, 0.18);
            background: linear-gradient(135deg, rgba(37, 99, 235, 0.14), rgba(255, 255, 255, 0.82));
            min-height: 112px;
        }

        .performance-entry-guide h3 {
            margin: 0 0 0.18rem;
            font-size: 18px;
        }

        .performance-entry-guide p {
            margin: 0;
            font-size: 13px;
            color: var(--text-muted);
            line-height: 1.7;
        }

        .performance-empty .btn {
            margin-top: 0.7rem;
        }

        .table-shell,
        .table-wrapper {
            border-radius: 18px;
            width: 100%;
            max-width: 100%;
            min-width: 0;
            border: 1px solid rgba(255, 255, 255, 0.8);
            background: linear-gradient(165deg, rgba(255, 255, 255, 0.76), rgba(239, 247, 255, 0.52));
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, 0.84),
                0 16px 34px rgba(18, 53, 116, 0.09);
        }

        .table-shell {
            overflow: hidden;
        }

        .table-wrapper {
            overflow-x: auto;
            overflow-y: visible;
            -webkit-overflow-scrolling: touch;
        }

        .table-shell > .table-wrapper {
            border: 0;
            border-radius: 0;
            background: transparent;
            box-shadow: none;
        }

        .table-shell > .table-wrapper:last-child {
            border-radius: 0 0 18px 18px;
        }

        .users-mobile-list {
            display: none;
            gap: 0.72rem;
            padding: 0.86rem;
        }

        .mobile-record-list {
            display: none;
            gap: 0.72rem;
            padding: 0.82rem;
        }

        .mobile-record-date-group {
            font-size: 12px;
            color: var(--text-muted);
            font-weight: 600;
            padding: 0 0.1rem;
        }

        .mobile-record-card {
            border: 1px solid rgba(214, 225, 242, 0.72);
            border-radius: 18px;
            background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(245, 249, 255, 0.82));
            padding: 0.84rem 0.88rem;
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, 0.92),
                0 10px 22px rgba(26, 60, 124, 0.06);
            display: grid;
            gap: 0.72rem;
        }

        .mobile-record-head {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            gap: 0.82rem;
        }

        .mobile-record-head strong {
            display: block;
            font-size: 17px;
            line-height: 1.25;
            letter-spacing: 0.01em;
        }

        .mobile-record-head span {
            display: block;
            margin-top: 0.22rem;
            font-size: 12px;
            color: var(--text-muted);
            line-height: 1.45;
        }

        .mobile-record-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.52rem;
        }

        .mobile-record-row {
            display: grid;
            grid-template-columns: 1fr;
            gap: 0.16rem;
            align-items: start;
            font-size: 13px;
            line-height: 1.45;
            padding: 0.46rem 0.54rem;
            border-radius: 12px;
            background: rgba(248, 251, 255, 0.9);
            border: 1px solid rgba(223, 232, 246, 0.9);
        }

        .mobile-record-row label {
            color: var(--text-muted);
            font-size: 11px;
            font-weight: 600;
            letter-spacing: 0.02em;
        }

        .mobile-record-row strong,
        .mobile-record-row .mobile-record-value {
            color: var(--text-main);
            font-size: 13px;
            font-weight: 500;
            word-break: break-word;
        }

        .mobile-record-row.full {
            grid-column: 1 / -1;
        }

        .mobile-record-row .status-select {
            width: 100%;
            max-width: 100%;
            min-width: 0;
            height: 38px;
        }

        .mobile-record-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 0.56rem;
            align-items: center;
            justify-content: space-between;
            padding-top: 0.72rem;
            border-top: 1px solid rgba(214, 225, 242, 0.62);
        }

        .mobile-record-actions-main {
            display: flex;
            flex-wrap: wrap;
            gap: 0.58rem;
            align-items: center;
        }

        .mobile-record-tag {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 28px;
            padding: 0.18rem 0.66rem;
            border-radius: 999px;
            border: 1px solid rgba(147, 215, 173, 0.74);
            background: rgba(237, 252, 243, 0.9);
            color: var(--success);
            font-size: 12px;
            font-weight: 700;
            white-space: nowrap;
        }

        .mobile-record-tag.danger {
            border-color: rgba(242, 176, 176, 0.78);
            background: rgba(254, 239, 239, 0.92);
            color: var(--danger);
        }

        .mobile-record-amount {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 36px;
            padding: 0.24rem 0.78rem;
            border-radius: 12px;
            background: rgba(244, 248, 255, 0.96);
            border: 1px solid rgba(214, 225, 242, 0.88);
            color: #0f172a;
            font-size: 18px;
            font-weight: 700;
            font-variant-numeric: tabular-nums;
            white-space: nowrap;
        }

        .mobile-record-inline-note {
            display: inline-flex;
            align-items: center;
            gap: 0.34rem;
            min-height: 28px;
            padding: 0.16rem 0.56rem;
            border-radius: 999px;
            background: rgba(243, 248, 255, 0.92);
            border: 1px solid rgba(223, 232, 246, 0.92);
            color: var(--text-muted);
            font-size: 12px;
        }

        .mobile-record-empty {
            border: 1px dashed rgba(179, 197, 228, 0.7);
            border-radius: 16px;
            background: rgba(255, 255, 255, 0.7);
            padding: 1rem 0.9rem;
            text-align: center;
            font-size: 13px;
            color: var(--text-muted);
        }

        .metric-mobile-list {
            display: none;
            gap: 0.7rem;
            margin-top: 0.68rem;
        }

        .metric-mobile-card {
            display: grid;
            gap: 0.62rem;
            padding: 0.78rem 0.82rem;
            border-radius: 16px;
            border: 1px solid rgba(214, 225, 242, 0.74);
            background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(245, 249, 255, 0.84));
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, 0.92),
                0 8px 20px rgba(26, 60, 124, 0.05);
        }

        .metric-mobile-head {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            gap: 0.7rem;
        }

        .metric-mobile-head strong {
            display: block;
            font-size: 15px;
            line-height: 1.3;
        }

        .metric-mobile-head span {
            display: block;
            margin-top: 0.18rem;
            font-size: 12px;
            line-height: 1.45;
            color: var(--text-muted);
        }

        .metric-mobile-accent {
            color: var(--primary);
            font-size: 18px;
            font-weight: 700;
            white-space: nowrap;
            font-variant-numeric: tabular-nums;
        }

        .metric-mobile-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.5rem;
        }

        .metric-mobile-field {
            display: grid;
            gap: 0.14rem;
            padding: 0.46rem 0.54rem;
            border-radius: 12px;
            background: rgba(248, 251, 255, 0.92);
            border: 1px solid rgba(223, 232, 246, 0.92);
        }

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

        .metric-mobile-field label {
            color: var(--text-muted);
            font-size: 11px;
            font-weight: 600;
        }

        .metric-mobile-field b {
            color: var(--text-main);
            font-size: 13px;
            font-weight: 600;
            word-break: break-word;
        }

        .users-mobile-card {
            border: 1px solid rgba(214, 225, 242, 0.72);
            border-radius: 16px;
            background: rgba(255, 255, 255, 0.78);
            padding: 0.82rem 0.86rem;
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.88);
        }

        .users-mobile-head {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            gap: 0.8rem;
            margin-bottom: 0.62rem;
        }

        .users-mobile-name {
            font-size: 17px;
            font-weight: 700;
            line-height: 1.35;
        }

        .users-mobile-role {
            margin-top: 0.16rem;
            color: var(--text-muted);
            font-size: 12px;
        }

        .users-mobile-id {
            font-size: 12px;
            color: var(--text-muted);
            white-space: nowrap;
        }

        .users-mobile-body {
            display: grid;
            gap: 0.56rem;
        }

        .users-mobile-row {
            display: grid;
            grid-template-columns: 72px minmax(0, 1fr);
            gap: 0.58rem;
            align-items: start;
            font-size: 13px;
        }

        .users-mobile-row label {
            color: var(--text-muted);
        }

        .users-mobile-actions {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.72rem;
            margin-top: 0.8rem;
            padding-top: 0.72rem;
            border-top: 1px solid rgba(214, 225, 242, 0.62);
        }

        .leads-controls {
            padding: 0.78rem 0.68rem;
            background: rgba(246, 250, 255, 0.66);
            border-bottom: 1px solid rgba(255, 255, 255, 0.78);
            display: grid;
            gap: 0.66rem;
        }

        .airdrop-finance-panel { margin: 0.9rem 0; }
        .airdrop-finance-head-actions { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:0.5rem; }
        .airdrop-finance-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0.75rem; margin-top:0.85rem; }
        .airdrop-finance-subcard { display:grid; gap:0.6rem; padding:0.88rem; border:1px solid rgba(191,206,233,.72); border-radius:16px; background:rgba(248,251,255,.92); }
        .airdrop-finance-subcard h4,.airdrop-finance-results h4 { margin:0; color:var(--text-main); }
        .airdrop-finance-subcard label { display:grid; gap:0.28rem; color:#435675; font-size:12px; font-weight:700; }
        .airdrop-finance-subcard small { color:var(--text-muted); line-height:1.5; }
        .airdrop-finance-subcard .btn { justify-self:end; }
        .airdrop-finance-inline { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0.55rem; }
        .airdrop-finance-results { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0.75rem; margin-top:0.9rem; }
        .airdrop-finance-results>div { min-width:0; padding:0.82rem; border:1px solid rgba(191,206,233,.65); border-radius:16px; }
        .airdrop-finance-list { display:grid; gap:0.5rem; margin-top:0.55rem; }
        .airdrop-finance-row { display:flex; align-items:center; justify-content:space-between; gap:0.65rem; padding:0.64rem 0.7rem; border-radius:12px; background:#f7faff; }
        .airdrop-finance-row>span { min-width:0; display:grid; gap:0.15rem; color:#435675; font-size:12px; }
        .airdrop-finance-row strong { color:var(--text-main); font-size:13px; overflow-wrap:anywhere; }
        .airdrop-finance-actions { display:flex; flex-wrap:wrap; gap:0.35rem; flex:0 0 auto; }
        @media (max-width:900px) { .airdrop-finance-grid,.airdrop-finance-results { grid-template-columns:1fr; } }
        @media (max-width:560px) { .airdrop-finance-inline { grid-template-columns:1fr; } .airdrop-finance-head-actions { justify-content:flex-start; } .airdrop-finance-row { align-items:flex-start; flex-direction:column; } }

        .post-analysis-filter-card {
            padding: 0.9rem 1rem;
        }

        #view-post-analysis.active {
            display: grid;
            gap: 14px;
        }

        #view-post-analysis > .header {
            margin-bottom: 0;
        }

        .post-analysis-controls {
            padding: 0;
            border-bottom: 0;
            background: transparent;
            grid-template-columns: repeat(6, minmax(0, 1fr));
            align-items: center;
        }

        .post-analysis-controls .filter-input,
        .post-analysis-controls .btn {
            width: 100%;
            min-width: 0;
            height: 42px;
        }

        .post-analysis-controls #post-analysis-filter-keyword {
            grid-column: span 2;
        }

        #post-analysis-summary-grid {
            grid-template-columns: repeat(6, minmax(0, 1fr));
        }

        .post-analysis-summary-card {
            min-width: 0;
            padding: 0.78rem 0.82rem;
            border-radius: 14px;
            border: 1px solid rgba(179, 197, 228, 0.46);
            background: linear-gradient(160deg, rgba(255, 255, 255, 0.86), rgba(240, 246, 255, 0.68));
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
        }

        .post-analysis-summary-card label,
        .post-analysis-asset-sub,
        .post-analysis-duplicate-note {
            display: block;
            font-size: 12px;
            color: var(--text-muted);
            line-height: 1.35;
        }

        .post-analysis-summary-card strong {
            display: block;
            margin-top: 0.26rem;
            font-size: 24px;
            line-height: 1.15;
            font-variant-numeric: tabular-nums;
            overflow-wrap: anywhere;
        }

        .post-analysis-summary-card span {
            display: block;
            margin-top: 0.28rem;
            font-size: 12px;
            color: #60718e;
            line-height: 1.35;
        }

        .post-analysis-command-grid {
            grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr);
            align-items: stretch;
        }

        .post-analysis-channel-grid,
        .dashboard-analysis-grid {
            display: grid;
            grid-template-columns: minmax(0, 1.45fr) minmax(360px, 0.8fr);
            gap: 0.9rem;
            align-items: stretch;
        }

        .post-analysis-channel-grid > .card,
        .dashboard-analysis-grid > .card {
            min-width: 0;
            margin: 0;
        }

        .channel-analysis-head {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 0.8rem;
            margin-bottom: 0.8rem;
        }

        .channel-analysis-head h3 {
            margin: 0;
        }

        .channel-analysis-head p {
            margin: 0.28rem 0 0;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.45;
        }

        .channel-analysis-scope {
            flex: 0 0 auto;
            max-width: 48%;
            padding: 0.32rem 0.58rem;
            border-radius: 999px;
            background: rgba(229, 238, 255, 0.86);
            color: #315da9;
            font-size: 11px;
            font-weight: 700;
            line-height: 1.35;
            text-align: right;
        }

        .city-analysis-tools {
            display: flex;
            flex: 0 0 auto;
            align-items: center;
            justify-content: flex-end;
            gap: 0.5rem;
            flex-wrap: wrap;
            max-width: 68%;
        }

        .city-source-switch {
            display: inline-flex;
            align-items: center;
            gap: 0.2rem;
            padding: 0.2rem;
            border: 1px solid rgba(190, 207, 234, 0.78);
            border-radius: 999px;
            background: rgba(255, 255, 255, 0.82);
        }

        .city-source-tab {
            min-height: 28px;
            padding: 0 0.62rem;
            border: 0;
            border-radius: 999px;
            background: transparent;
            color: #52647f;
            font-size: 11px;
            font-weight: 750;
            cursor: pointer;
            white-space: nowrap;
        }

        .city-source-tab:hover {
            color: var(--primary);
            background: rgba(229, 238, 255, 0.8);
        }

        .city-source-tab.active {
            color: #fff;
            background: var(--primary);
            box-shadow: 0 5px 12px rgba(47, 108, 255, 0.22);
        }

        .city-funnel-delta {
            margin: 0;
            padding: 0.55rem 0.76rem;
            border-top: 1px solid rgba(214, 225, 242, 0.7);
        }

        .channel-funnel-list {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.72rem;
        }

        .channel-funnel-source {
            min-width: 0;
            border: 1px solid rgba(190, 207, 234, 0.72);
            border-radius: 12px;
            background: rgba(249, 252, 255, 0.78);
            overflow: hidden;
        }

        .channel-funnel-source-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.55rem;
            padding: 0.7rem 0.78rem;
            border-bottom: 1px solid rgba(214, 225, 242, 0.72);
        }

        .channel-funnel-source-head strong {
            font-size: 16px;
        }

        .channel-bottleneck-badge {
            display: inline-flex;
            align-items: center;
            min-height: 24px;
            padding: 0 0.55rem;
            border-radius: 999px;
            background: rgba(255, 239, 214, 0.9);
            color: #9b5b0b;
            font-size: 11px;
            font-weight: 800;
            white-space: nowrap;
        }

        .channel-funnel-periods {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .channel-funnel-period {
            min-width: 0;
            padding: 0.72rem 0.76rem 0.78rem;
        }

        .channel-funnel-period + .channel-funnel-period {
            border-left: 1px solid rgba(214, 225, 242, 0.7);
            background: rgba(235, 243, 255, 0.46);
        }

        .channel-funnel-period-title {
            display: flex;
            align-items: baseline;
            justify-content: space-between;
            gap: 0.5rem;
            margin-bottom: 0.56rem;
        }

        .channel-funnel-period-title strong {
            font-size: 13px;
        }

        .channel-funnel-period-title span {
            color: var(--text-muted);
            font-size: 11px;
        }

        .channel-funnel-stages {
            display: grid;
            gap: 0.34rem;
        }

        .channel-funnel-stage {
            display: grid;
            grid-template-columns: minmax(46px, 1fr) auto auto;
            align-items: center;
            gap: 0.36rem;
            min-width: 0;
            font-size: 11px;
        }

        .channel-funnel-stage span {
            color: #62738d;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .channel-funnel-stage b,
        .channel-funnel-stage em {
            font-variant-numeric: tabular-nums;
            font-style: normal;
            white-space: nowrap;
        }

        .channel-funnel-stage b {
            color: #16243c;
            font-size: 12px;
        }

        .channel-funnel-stage em {
            width: 44px;
            color: var(--primary);
            text-align: right;
        }

        .channel-quality-line {
            margin-top: 0.58rem;
            padding-top: 0.5rem;
            border-top: 1px dashed rgba(179, 197, 228, 0.65);
            color: #60718e;
            font-size: 11px;
            line-height: 1.5;
        }

        .channel-funnel-warning-list {
            display: grid;
            gap: 0.26rem;
            margin-top: 0.72rem;
            color: #687a96;
            font-size: 11px;
            line-height: 1.4;
        }

        .channel-funnel-warning-list span::before {
            content: '•';
            margin-right: 0.38rem;
            color: #7d96bf;
        }

        .channel-ai-card {
            display: flex;
            flex-direction: column;
        }

        .channel-ai-card .channel-analysis-head .btn {
            min-width: 94px;
            height: 36px;
            flex: 0 0 auto;
        }

        .channel-ai-content {
            display: grid;
            gap: 0.7rem;
            flex: 1;
            align-content: start;
        }

        .channel-ai-empty {
            display: grid;
            place-items: center;
            min-height: 190px;
            padding: 1rem;
            border: 1px dashed rgba(154, 180, 222, 0.64);
            border-radius: 12px;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.55;
            text-align: center;
        }

        .channel-ai-progress,
        .channel-ai-error {
            align-content: center;
            gap: 0.45rem;
        }

        .channel-ai-progress strong,
        .channel-ai-error strong {
            color: #213a62;
            font-size: 14px;
        }

        .channel-ai-progress span,
        .channel-ai-error span,
        .channel-ai-error small {
            display: block;
        }

        .channel-ai-error {
            border-color: rgba(235, 104, 104, 0.48);
            background: rgba(255, 245, 245, 0.76);
        }

        .channel-ai-error strong {
            color: #b33a3a;
        }

        .channel-ai-error small {
            color: #7a6a6a;
            font-size: 11px;
        }

        .channel-ai-summary {
            padding: 0.76rem 0.82rem;
            border-left: 3px solid var(--primary);
            background: rgba(239, 246, 255, 0.75);
            color: #263a59;
            font-size: 13px;
            line-height: 1.55;
        }

        .channel-ai-source {
            padding-top: 0.65rem;
            border-top: 1px solid rgba(214, 225, 242, 0.78);
        }

        .channel-ai-source-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.6rem;
            margin-bottom: 0.38rem;
        }

        .channel-ai-source-head strong {
            font-size: 14px;
        }

        .channel-ai-source-head span {
            color: var(--primary);
            font-size: 11px;
            font-weight: 800;
        }

        .channel-ai-source p,
        .channel-ai-source li,
        .channel-ai-meta {
            color: #5c6f8d;
            font-size: 12px;
            line-height: 1.5;
        }

        .channel-ai-source p {
            margin: 0;
        }

        .channel-ai-source ul {
            margin: 0.42rem 0 0;
            padding-left: 1.05rem;
        }

        .channel-ai-meta {
            margin-top: auto;
            padding-top: 0.55rem;
            border-top: 1px dashed rgba(179, 197, 228, 0.65);
        }

        .post-analysis-command-grid .boss-command-card {
            min-height: 0;
            display: flex;
            flex-direction: column;
        }

        .post-analysis-command-grid .boss-alert-list,
        .post-analysis-command-grid .boss-sales-list {
            flex: 1;
            max-height: 300px;
            overflow: auto;
            padding-right: 0.15rem;
            align-content: start;
        }

        #post-analysis-account-list {
            gap: 0.62rem;
        }

        .post-analysis-account-row {
            display: grid;
            grid-template-columns: 34px minmax(132px, 0.82fr) minmax(228px, 1.18fr);
            gap: 0.62rem;
            align-items: center;
            padding: 0.7rem 0.78rem;
            min-height: 112px;
            border: 1px solid rgba(214, 225, 242, 0.72);
            border-radius: 12px;
            background: rgba(255, 255, 255, 0.78);
        }

        .post-analysis-account-rank {
            width: 30px;
            height: 30px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border-radius: 999px;
            background: rgba(47, 111, 255, 0.12);
            color: var(--primary);
            font-size: 13px;
            font-weight: 800;
        }

        .post-analysis-account-main {
            min-width: 0;
        }

        .post-analysis-account-main strong {
            display: block;
            max-width: 100%;
            color: var(--text-main);
            font-size: 14px;
            line-height: 1.3;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .post-analysis-account-tags,
        .post-analysis-asset-tags {
            display: flex;
            flex-wrap: wrap;
            gap: 0.28rem;
            min-width: 0;
        }

        .post-analysis-account-tags {
            margin-top: 0.36rem;
        }

        .post-analysis-account-tags span,
        .post-analysis-asset-tag {
            display: inline-flex;
            align-items: center;
            max-width: 100%;
            min-height: 22px;
            padding: 0 0.48rem;
            border-radius: 999px;
            border: 1px solid rgba(170, 193, 232, 0.54);
            background: rgba(241, 247, 255, 0.84);
            color: #526986;
            font-size: 12px;
            font-weight: 700;
            line-height: 1.2;
            white-space: nowrap;
        }

        .post-analysis-account-metrics {
            display: grid;
            grid-template-columns: repeat(3, minmax(62px, 1fr));
            gap: 0.42rem;
            min-width: 0;
        }

        .post-analysis-account-metric {
            display: grid;
            align-content: center;
            gap: 0.12rem;
            min-width: 0;
            min-height: 44px;
            padding: 0.34rem 0.42rem;
            border-radius: 10px;
            background: rgba(246, 250, 255, 0.72);
            text-align: center;
        }

        .post-analysis-account-metric b {
            color: var(--primary);
            font-size: 14px;
            font-variant-numeric: tabular-nums;
            line-height: 1.15;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .post-analysis-account-metric span {
            color: var(--text-muted);
            font-size: 11px;
            line-height: 1.2;
            white-space: nowrap;
        }

        .post-analysis-table {
            table-layout: fixed;
            width: 100%;
            min-width: 1200px !important;
        }

        .post-analysis-table th:first-child,
        .post-analysis-table td:first-child {
            width: 360px;
            text-align: left !important;
        }

        .post-analysis-table th:nth-child(2),
        .post-analysis-table td:nth-child(2),
        .post-analysis-table th:nth-child(3),
        .post-analysis-table td:nth-child(3),
        .post-analysis-table th:nth-child(4),
        .post-analysis-table td:nth-child(4),
        .post-analysis-table th:nth-child(5),
        .post-analysis-table td:nth-child(5),
        .post-analysis-table th:nth-child(6),
        .post-analysis-table td:nth-child(6) {
            width: 92px;
        }

        .post-analysis-table th:nth-child(7),
        .post-analysis-table td:nth-child(7),
        .post-analysis-table th:nth-child(8),
        .post-analysis-table td:nth-child(8),
        .post-analysis-table th:nth-child(9),
        .post-analysis-table td:nth-child(9) {
            width: 118px;
        }

        .post-analysis-asset-main {
            display: grid;
            grid-template-columns: minmax(0, 1fr) max-content;
            align-items: center;
            gap: 0.55rem;
            min-width: 0;
            min-height: 48px;
        }

        .post-analysis-asset-copy {
            min-width: 0;
        }

        .post-analysis-asset-name {
            display: block;
            max-width: none;
            color: #10213d;
            font-weight: 800;
            line-height: 1.32;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .post-analysis-asset-tags {
            margin-top: 0.34rem;
            min-width: 0;
        }

        .post-analysis-asset-tag.account {
            max-width: 180px;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .post-analysis-asset-tag.merge {
            color: #1f48d2;
            border-color: rgba(47, 111, 255, 0.26);
            background: rgba(225, 236, 255, 0.92);
        }

        .post-analysis-asset-actions {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 0.34rem;
            margin-top: 0;
            flex-wrap: nowrap;
            min-width: max-content;
            align-self: center;
        }

        .post-analysis-action-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 42px;
            height: 26px;
            padding: 0 0.58rem;
            border-radius: 999px;
            border: 1px solid rgba(47, 111, 255, 0.28);
            background: rgba(235, 242, 255, 0.94);
            color: var(--primary);
            font-size: 11px;
            font-weight: 800;
            text-decoration: none;
            cursor: pointer;
        }

        .post-analysis-action-btn:hover {
            background: rgba(218, 231, 255, 0.98);
            text-decoration: none;
        }

        .post-analysis-duplicate-note {
            margin-top: 0.3rem;
            color: #2f6cff;
            font-weight: 700;
        }

        @media (max-width: 1400px) {
            .prospect-admin-batch-summary { grid-template-columns:minmax(0,1fr) auto; }
            .prospect-claim-setting { min-width:104px; }
            .prospect-claim-setting > span { display:none; }
            .prospect-admin-batch-glance { grid-column:1 / -1; grid-row:2; justify-content:flex-start; flex-wrap:wrap; }
        }

        @media (max-width: 1100px) {
            .post-analysis-channel-grid,
            .dashboard-analysis-grid,
            .channel-funnel-list {
                grid-template-columns: 1fr;
            }

            .post-analysis-command-grid {
                grid-template-columns: 1fr;
            }

            .post-analysis-account-row {
                grid-template-columns: 34px minmax(0, 1fr);
                min-height: 160px;
            }

            .post-analysis-account-metrics {
                grid-column: 2;
                grid-template-columns: repeat(3, minmax(62px, 1fr));
                width: 100%;
            }

            .post-analysis-controls {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }

            #post-analysis-summary-grid {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }
        }

        @media (max-width: 720px) {
            .channel-analysis-head {
                align-items: stretch;
                flex-direction: column;
            }

            .channel-analysis-scope {
                max-width: none;
                text-align: left;
            }

            .city-analysis-tools {
                align-items: flex-start;
                justify-content: flex-start;
                max-width: none;
            }

            .city-source-switch {
                max-width: 100%;
                overflow-x: auto;
            }

            .channel-funnel-periods {
                grid-template-columns: 1fr;
            }

            .channel-funnel-period + .channel-funnel-period {
                border-top: 1px solid rgba(214, 225, 242, 0.7);
                border-left: 0;
            }

            .post-analysis-controls,
            #post-analysis-summary-grid {
                grid-template-columns: 1fr;
            }

            .post-analysis-controls #post-analysis-filter-keyword {
                grid-column: auto;
            }

            .post-analysis-account-row {
                grid-template-columns: 30px minmax(0, 1fr);
                padding: 0.66rem;
            }

            .post-analysis-account-metrics {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }

            .post-analysis-account-metric {
                min-height: 42px;
            }

            .post-analysis-command-grid .boss-alert-item {
                grid-template-columns: minmax(0, 1fr);
                gap: 0.28rem;
                align-items: start;
            }

            .post-analysis-command-grid .boss-alert-item strong,
            .post-analysis-command-grid .boss-alert-item span {
                width: 100%;
            }
        }

        .filters-grid {
            display: grid;
            grid-template-columns: repeat(8, minmax(0, 1fr));
            gap: 0.58rem;
            align-items: center;
            padding: 0.82rem 0.88rem;
            border-radius: 20px;
            border: 1px solid rgba(191, 206, 233, 0.5);
            background: linear-gradient(160deg, rgba(255, 255, 255, 0.82), rgba(238, 245, 255, 0.72));
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.84);
        }

        .adq-reservations-filters {
            grid-template-columns: minmax(120px, 1fr) minmax(120px, 1fr) minmax(220px, 2fr) auto auto;
        }

        .performance-records-controls {
            border-bottom: 1px solid rgba(255, 255, 255, 0.78);
        }

        .table-shell .table-toolbar {
            padding-top: 0.78rem;
        }

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

        .filters-grid .filter-input,
        .filters-grid .btn {
            height: 40px;
        }

        .filters-grid .btn.outline {
            border-color: rgba(170, 188, 223, 0.86);
            background: rgba(255, 255, 255, 0.92);
        }

        .filters-grid .btn.outline:hover {
            background: rgba(255, 255, 255, 0.96);
        }

        .lead-command-panel .lead-quick-filters {
            margin-bottom: 0;
        }

        .batch-bar {
            display: flex;
            flex-wrap: wrap;
            gap: 0.56rem;
            align-items: center;
            padding: 0.78rem 0.92rem;
            border-radius: 18px;
            border: 1px solid rgba(224, 190, 190, 0.42);
            background: linear-gradient(160deg, rgba(255, 255, 255, 0.84), rgba(255, 246, 246, 0.78));
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.84);
        }

        .batch-check {
            display: inline-flex;
            align-items: center;
            gap: 0.36rem;
            font-size: 13px;
            color: var(--text-main);
            font-weight: 600;
        }

        .batch-info {
            font-size: 13px;
            color: var(--text-main);
            border: 1px solid rgba(226, 195, 195, 0.66);
            border-radius: 999px;
            background: rgba(255, 255, 255, 0.92);
            padding: 0.34rem 0.62rem;
            font-weight: 600;
        }

        .btn.outline.danger {
            color: var(--danger);
            border-color: rgba(212, 63, 63, 0.24);
            background: rgba(255, 241, 241, 0.96);
        }

        .btn.outline.danger:hover {
            background: rgba(255, 236, 236, 0.98);
        }

        .btn.danger {
            color: #fff;
            border-color: rgba(255, 255, 255, 0.36);
            background: linear-gradient(160deg, #ee6670 0%, #db4453 58%, #bd3041 100%);
            box-shadow: 0 10px 24px rgba(205, 55, 70, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.4);
        }

        .btn.danger:hover {
            background: linear-gradient(160deg, #e45a66 0%, #cf3949 58%, #ad2637 100%);
            box-shadow: 0 14px 28px rgba(205, 55, 70, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.46);
        }

        .table-check {
            width: 44px;
            text-align: center;
            vertical-align: middle;
        }

        .table-check input[type='checkbox'],
        .batch-check input[type='checkbox'] {
            width: 14px;
            height: 14px;
            accent-color: var(--primary);
            cursor: pointer;
        }

        .cell-ellipsis {
            display: block;
            width: 100%;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        table {
            width: 100%;
            border-collapse: collapse;
            table-layout: fixed;
        }

        .leads-table {
            min-width: 1360px;
        }

        .leads-table th,
        .leads-table td {
            padding: 0.56rem 0.4rem;
            font-size: 12px;
            text-align: center;
            border-right: 1px solid rgba(214, 225, 242, 0.48);
        }

        .leads-table th {
            font-size: 11px;
            text-align: center;
        }

        .leads-table th:last-child,
        .leads-table td:last-child {
            border-right: 0;
        }

        .leads-table .col-left {
            text-align: center;
        }

        .leads-table .col-center {
            text-align: center;
        }

        .leads-table td.col-center {
            vertical-align: middle;
        }

        @media (min-width: 769px) {
            .lead-pool-record-table th:last-child,
            .lead-pool-record-table tbody tr:not(.date-group-row) td:last-child {
                position: sticky;
                right: 0;
                z-index: 4;
                background: #f7faff;
                box-shadow: -8px 0 12px -12px rgba(35, 72, 128, 0.45);
            }

            .lead-pool-record-table th:last-child {
                z-index: 6;
                background: #f1f6fd;
            }

            .lead-pool-record-table tbody tr:nth-child(even):not(.date-group-row) td:last-child {
                background: #f3f7fd;
            }
        }

        .leads-table td.col-center .cell-ellipsis,
        .leads-table td.col-center .lead-pool-cell,
        .leads-table td.col-center .lead-city-cell,
        .leads-table td.col-center .lead-source-cell {
            text-align: center;
        }

        .leads-table td.col-center .badge,
        .leads-table td.col-center .text-action,
        .leads-table td.col-center .status-select {
            margin-left: auto;
            margin-right: auto;
        }

        .leads-table td.col-center .status-select {
            display: block;
        }

        th,
        td {
            border-bottom: 1px solid rgba(255, 255, 255, 0.62);
            padding: 0.7rem 0.68rem;
            vertical-align: middle;
            word-break: normal;
            overflow-wrap: normal;
            text-align: left;
        }

        .lead-cell-name {
            font-weight: 400;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            text-align: center;
        }

        .leads-table .lead-cell-name {
            font-size: 12px;
        }

        .lead-cell-meta {
            margin-top: 2px;
            font-size: 12px;
            color: var(--text-muted);
            white-space: nowrap;
            text-align: center;
        }

        .leads-table .lead-cell-meta {
            font-size: 11px;
        }

        .lead-cell-contact {
            white-space: nowrap;
            line-height: 1.45;
            text-align: center;
        }

        .leads-table .lead-xhs-cell { display: flex; flex-wrap: wrap; justify-content: center; align-items: baseline; column-gap: 4px; } .leads-table .lead-xhs-text { display: -webkit-box; min-width: 0; max-width: 100%; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; } .leads-table .lead-xhs-copy { margin-left: 0 !important; padding: 0 2px !important; } .lead-pool-record-table .col-action .text-action { font-size: 12px; padding: 0; white-space: nowrap; } .lead-pool-record-table .col-action > div { gap: 4px 6px !important; } .lead-cell-contact.mixed {
            white-space: normal;
        }

        .remark-cell {
            white-space: nowrap;
        }

        .lead-pool-cell,
        .lead-city-cell,
        .lead-source-cell {
            font-size: 12px;
            white-space: nowrap;
            text-align: center;
        }

        .lead-pool-cell {
            font-weight: 600;
            letter-spacing: 0.02em;
        }

        .lead-source-cell.is-prospect {
            display:inline-flex;
            align-items:center;
            min-height:24px;
            padding:0 8px;
            border:1px solid rgba(75,131,245,.28);
            border-radius:999px;
            background:#edf4ff;
            color:#285fca;
            font-weight:700;
        }

        .leads-table tr.lead-row-prospect td:first-child {
            box-shadow:inset 3px 0 0 #4b83f5;
        }

        .mobile-record-card.lead-row-prospect {
            border-color:rgba(75,131,245,.3);
            background:linear-gradient(180deg,rgba(244,249,255,.98),rgba(255,255,255,.96));
        }

        .leads-table .status-select {
            padding: 0.36rem 0.44rem;
            font-size: 12px;
            width: 88px;
        }

        th {
            background: rgba(245, 250, 255, 0.78);
            border-bottom: 1px solid rgba(255, 255, 255, 0.82);
            font-weight: 600;
            white-space: nowrap;
        }

        tr:hover {
            background: rgba(255, 255, 255, 0.58);
        }

        .date-group-row td {
            background: rgba(228, 236, 250, 0.62);
            color: #32425d;
            font-weight: 600;
            font-size: 12px;
            border-top: 1px solid rgba(255, 255, 255, 0.76);
        }

        .badge {
            border-radius: 999px;
            padding: 0.16rem 0.46rem;
            font-size: 11px;
            border: 1px solid transparent;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            white-space: nowrap;
            min-width: 64px;
        }

        .badge.success {
            color: var(--success);
            background: rgba(232, 247, 239, 0.84);
            border-color: rgba(147, 215, 173, 0.72);
        }

        .badge.danger {
            color: var(--danger);
            background: rgba(253, 234, 234, 0.88);
            border-color: rgba(242, 176, 176, 0.74);
        }

        .lead-quality-badge {
            border-radius: 999px;
            padding: 0.16rem 0.48rem;
            font-size: 11px;
            font-weight: 600;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            white-space: nowrap;
            min-width: 64px;
            border: 1px solid transparent;
        }

        .lead-quality-badge.level-a {
            color: #c62828;
            background: rgba(255, 235, 238, 0.92);
            border-color: rgba(229, 115, 115, 0.62);
        }

        .lead-quality-badge.level-b {
            color: #c77800;
            background: rgba(255, 243, 224, 0.94);
            border-color: rgba(255, 183, 77, 0.65);
        }

        .lead-quality-badge.level-c {
            color: #2563eb;
            background: rgba(232, 240, 255, 0.92);
            border-color: rgba(96, 165, 250, 0.62);
        }

        .lead-quality-badge.level-empty {
            color: #6b7280;
            background: rgba(241, 245, 249, 0.94);
            border-color: rgba(203, 213, 225, 0.78);
        }

        .lead-follow-stage-badge {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 64px;
            padding: 0.18rem 0.5rem;
            border: 1px solid rgba(148, 163, 184, 0.45);
            border-radius: 999px;
            background: rgba(241, 245, 249, 0.92);
            color: #5d6b82;
            font-size: 11px;
            font-weight: 700;
            line-height: 1.2;
            white-space: nowrap;
        }

        .lead-follow-stage-badge.is-active {
            border-color: rgba(79, 139, 247, 0.42);
            background: rgba(232, 241, 255, 0.94);
            color: #2465d7;
        }

        .lead-follow-stage-badge.is-hot {
            border-color: rgba(239, 172, 60, 0.48);
            background: rgba(255, 247, 225, 0.96);
            color: #a86708;
        }

        .lead-follow-stage-badge.is-won {
            border-color: rgba(66, 179, 121, 0.46);
            background: rgba(232, 249, 240, 0.96);
            color: #168354;
        }

        .lead-follow-stage-badge.is-waiting {
            border-color: rgba(155, 126, 216, 0.42);
            background: rgba(245, 239, 255, 0.96);
            color: #7652b6;
        }

        .lead-follow-stage-badge.is-closed {
            border-color: rgba(230, 128, 128, 0.44);
            background: rgba(255, 238, 238, 0.96);
            color: #bb4646;
        }

        .lead-follow-stage-system {
            display: block;
            margin-top: 4px;
            color: var(--text-muted);
            font-size: 10px;
            font-style: normal;
            line-height: 1.25;
            white-space: nowrap;
        }

        .remark-preview {
            overflow: hidden;
            display: block;
            font-size: 12px;
            color: #4a5b7b;
            line-height: 1.45;
            white-space: nowrap;
            text-overflow: ellipsis;
            text-align: center;
        }

        .remark-action-btn {
            width: auto;
            max-width: 100%;
            border: 1px solid transparent;
            background: rgba(241, 245, 249, 0.94);
            padding: 0.24rem 0.56rem;
            margin: 0;
            text-align: center;
            color: #64748b;
            cursor: pointer;
            font-size: 11px;
            font-weight: 600;
            line-height: 1.45;
            overflow: hidden;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            white-space: nowrap;
            text-overflow: ellipsis;
            margin-left: auto;
            margin-right: auto;
            border-radius: 999px;
            min-width: 68px;
            transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease, background 0.16s ease;
        }

        .remark-action-btn:hover {
            transform: translateY(-1px);
            box-shadow: 0 4px 12px rgba(79, 125, 240, 0.12);
        }

        .remark-action-btn.has-remark {
            color: #1b8d52;
            background: rgba(232, 247, 239, 0.92);
            border-color: rgba(147, 215, 173, 0.8);
        }

        .remark-action-btn.empty-remark {
            color: #7c8ba1;
            background: rgba(241, 245, 249, 0.96);
            border-color: rgba(203, 213, 225, 0.9);
        }

        .leads-table .col-assigned,
        .leads-table .col-wechat,
        .leads-table .col-remark,
        .leads-table .col-stage,
        .leads-table .col-action {
            overflow: hidden;
        }

        .leads-table .col-action .text-action {
            display: inline-block;
            min-width: 46px;
            white-space: nowrap;
        }

        .remark-empty {
            color: #9cabca;
            font-size: 12px;
        }

        .form-grid {
            display: grid;
            grid-template-columns: 2fr 1fr;
            gap: 0.82rem;
            width: 100%;
            max-width: 100%;
            min-width: 0;
        }

        .mini-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 0.68rem;
            width: 100%;
            max-width: 100%;
            min-width: 0;
        }

        .modal-overlay {
            position: fixed;
            inset: 0;
            z-index: 2000;
            display: none;
            align-items: center;
            justify-content: center;
            background: rgba(35, 48, 84, 0.18);
            backdrop-filter: blur(5px);
            -webkit-backdrop-filter: blur(5px);
        }

        .modal-overlay.active {
            display: flex;
        }

        #site-dialog-overlay {
            z-index: 3200;
        }

        .modal {
            width: 100%;
            max-width: 560px;
            border-radius: 18px;
            padding: 1.22rem;
            background: rgba(255, 255, 255, 0.75);
        }

        .user-modal {
            max-width: 860px;
            max-height: min(86vh, 780px);
            overflow-y: auto;
        }

        .modal h3 {
            margin-bottom: 0.84rem;
            font-size: 18px;
        }

        .modal-subtext {
            margin-top: -0.24rem;
            margin-bottom: 0.8rem;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.6;
        }

        .site-dialog-modal {
            width: min(480px, calc(100vw - 32px));
            max-width: 480px;
            padding: 1.25rem;
            border: 1px solid rgba(139, 166, 215, 0.28);
            border-radius: 12px;
            background: rgba(250, 252, 255, 0.96);
            box-shadow: 0 24px 64px rgba(31, 55, 105, 0.2);
            display: flex;
            flex-direction: column;
            max-height: calc(100vh - 32px);
            max-height: calc(100dvh - 32px);
        }

        .site-dialog-modal h3 {
            margin: 0;
            color: var(--text-main);
            font-size: 19px;
            line-height: 1.4;
        }

        .site-dialog-message {
            margin: 0.8rem 0 1rem;
            color: var(--text-main);
            font-size: 14px;
            line-height: 1.75;
            white-space: pre-line;
            overflow-wrap: anywhere;
            min-height: 0;
            overflow-y: auto;
        }

        .site-dialog-modal .input-group {
            margin-bottom: 1rem;
        }

        .site-dialog-modal textarea {
            min-height: 96px;
            resize: vertical;
        }

        .site-dialog-actions {
            display: flex;
            justify-content: flex-end;
            gap: 0.6rem;
        }

        .site-dialog-actions .btn {
            min-width: 88px;
        }

        .switch {
            position: relative;
            display: inline-block;
            width: 36px;
            height: 20px;
        }

        .switch input {
            opacity: 0;
            width: 0;
            height: 0;
        }

        .slider {
            position: absolute;
            inset: 0;
            border-radius: 20px;
            cursor: pointer;
            background: #cdd6e8;
            transition: 0.2s;
        }

        .slider::before {
            content: "";
            position: absolute;
            width: 16px;
            height: 16px;
            border-radius: 50%;
            background: #fff;
            left: 2px;
            bottom: 2px;
            transition: 0.2s;
        }

        input:checked + .slider {
            background: var(--primary);
        }

        input:checked + .slider::before {
            transform: translateX(16px);
        }

        .delivery-scope-panel {
            margin: 0.8rem 0 1rem;
            padding: 0.9rem;
            border: 1px solid rgba(140, 164, 204, 0.32);
            border-radius: 12px;
            background: rgba(244, 248, 255, 0.72);
        }

        .delivery-scope-head {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 0.75rem;
            margin-bottom: 0.78rem;
        }

        .delivery-scope-head strong {
            font-size: 14px;
            color: var(--text-main);
            white-space: nowrap;
        }

        .delivery-scope-head span {
            flex: 1;
            min-width: 0;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.55;
            text-align: right;
        }

        .delivery-scope-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 0.62rem;
            align-items: end;
        }

        .delivery-scope-grid .input-group {
            min-width: 0;
            margin-bottom: 0;
        }

        .delivery-scope-grid select,
        .delivery-scope-grid input {
            width: 100%;
            min-width: 0;
        }

        .delivery-scope-actions {
            display: flex;
            justify-content: flex-end;
            margin-top: 0.68rem;
        }

        .delivery-scope-list {
            display: grid;
            gap: 0.5rem;
            margin-top: 0.72rem;
        }

        .delivery-scope-empty {
            padding: 0.68rem 0.75rem;
            border: 1px dashed rgba(125, 149, 190, 0.38);
            border-radius: 10px;
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.5;
            background: rgba(255, 255, 255, 0.58);
        }

        .delivery-scope-item {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            align-items: center;
            gap: 0.7rem;
            padding: 0.62rem 0.68rem;
            border: 1px solid rgba(147, 171, 210, 0.28);
            border-radius: 10px;
            background: rgba(255, 255, 255, 0.76);
        }

        .delivery-scope-main {
            min-width: 0;
            font-size: 13px;
            font-weight: 650;
            color: #1f2a44;
            overflow-wrap: anywhere;
            line-height: 1.45;
        }

        .delivery-scope-sub {
            margin-top: 0.12rem;
            font-size: 12px;
            color: var(--text-muted);
            overflow-wrap: anywhere;
            line-height: 1.45;
        }

        .delivery-scope-summary {
            display: block;
            margin-top: 0.25rem;
            color: #3b5f9d;
            font-size: 12px;
            line-height: 1.45;
            overflow-wrap: anywhere;
        }

        .source-config-card {
            margin-bottom: 1rem;
        }

        .source-config-grid {
            display: grid;
            grid-template-columns: minmax(0, 1fr);
            gap: 0.8rem;
            align-items: start;
        }

        .source-config-panel {
            padding: 0.85rem;
            border: 1px solid rgba(140, 164, 204, 0.28);
            border-radius: 12px;
            background: rgba(244, 248, 255, 0.62);
            min-width: 0;
        }

        .source-config-panel h3 {
            margin: 0 0 0.55rem;
            font-size: 15px;
        }

        .source-config-form {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
            gap: 0.55rem;
            align-items: end;
        }

        .source-config-form.channel-form {
            grid-template-columns: minmax(0, 1fr) auto;
        }

        .source-config-form .input-group {
            min-width: 0;
            margin-bottom: 0;
        }

        .source-config-form input,
        .source-config-form select {
            width: 100%;
            min-width: 0;
        }

        .source-config-list {
            display: flex;
            flex-wrap: wrap;
            gap: 0.42rem;
            margin-top: 0.7rem;
        }

        .source-config-chip {
            max-width: 100%;
            padding: 0.34rem 0.55rem;
            border: 1px solid rgba(110, 145, 205, 0.32);
            border-radius: 999px;
            background: rgba(255, 255, 255, 0.72);
            color: #253756;
            font-size: 12px;
            line-height: 1.4;
            overflow-wrap: anywhere;
            display: inline-flex;
            align-items: center;
            gap: 0.4rem;
        }

        .source-config-chip.inactive,
        .source-config-account.inactive {
            opacity: 0.62;
            background: rgba(239, 242, 247, 0.82);
        }

        .source-config-mini-btn {
            border: 0;
            border-radius: 999px;
            padding: 0.18rem 0.42rem;
            background: rgba(67, 111, 255, 0.12);
            color: #2451d6;
            font-size: 11px;
            cursor: pointer;
            white-space: nowrap;
        }

        .source-config-account-list {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
            gap: 0.45rem;
            margin-top: 0.7rem;
            max-height: 360px;
            overflow-y: auto;
            padding-right: 0.15rem;
        }

        .source-config-account {
            min-width: 0;
            padding: 0.55rem 0.62rem;
            border: 1px solid rgba(140, 164, 204, 0.24);
            border-radius: 10px;
            background: rgba(255, 255, 255, 0.7);
            font-size: 12px;
            line-height: 1.5;
            overflow-wrap: anywhere;
        }

        .source-config-account strong {
            display: block;
            color: #1f2a44;
            font-size: 13px;
            margin-bottom: 0.12rem;
        }

        .source-config-account-actions,
        .source-config-log-list {
            display: flex;
            flex-wrap: wrap;
            gap: 0.35rem;
            margin-top: 0.42rem;
        }

        .source-config-log-list {
            display: block;
        }

        .source-config-log-list details {
            width: 100%;
        }

        .source-config-log-list summary {
            cursor: pointer;
            color: var(--text-muted);
            font-size: 12px;
            padding: 0.25rem 0.1rem;
        }

        .source-config-log-body {
            max-height: 120px;
            overflow-y: auto;
            display: flex;
            flex-wrap: wrap;
            gap: 0.35rem;
        }

        .source-config-log {
            width: 100%;
            padding: 0.42rem 0.5rem;
            border-radius: 8px;
            background: rgba(255, 255, 255, 0.58);
            color: var(--text-muted);
            font-size: 12px;
            line-height: 1.45;
            overflow-wrap: anywhere;
        }

        .delivery-scope-bulk {
            margin-top: 0.72rem;
            padding-top: 0.72rem;
            border-top: 1px solid rgba(140, 164, 204, 0.24);
        }

        .delivery-scope-bulk select {
            width: 100%;
            min-height: 96px;
        }

        #toast-container {
            position: fixed;
            top: 1rem;
            right: 1rem;
            z-index: 9999;
            display: flex;
            flex-direction: column;
            gap: 0.6rem;
        }

        .toast {
            min-width: 260px;
            border-left: 4px solid var(--primary);
            border-radius: 10px;
            padding: 0.78rem 0.92rem;
            background: rgba(255, 255, 255, 0.86);
        }

        .toast.error {
            border-left-color: var(--danger);
        }

        .beijing-assignment-popup {
            position: fixed;
            bottom: 1rem;
            right: 1rem;
            z-index: 9998;
            width: min(380px, calc(100vw - 2rem));
            padding: 0.92rem;
            border: 1px solid rgba(87, 129, 255, 0.24);
            border-left: 4px solid var(--primary);
            border-radius: 10px;
            background: rgba(255, 255, 255, 0.94);
            box-shadow: 0 18px 42px rgba(56, 94, 150, 0.18);
            backdrop-filter: blur(10px);
        }

        .beijing-assignment-popup-main {
            display: grid;
            gap: 0.22rem;
            min-width: 0;
        }

        .beijing-assignment-popup-main strong {
            font-size: 15px;
            line-height: 1.35;
            color: var(--text-main);
        }

        .beijing-assignment-popup-main span {
            font-size: 12px;
            line-height: 1.45;
            color: var(--text-muted);
            overflow-wrap: anywhere;
        }

        .beijing-assignment-popup-actions {
            display: flex;
            gap: 0.5rem;
            justify-content: flex-end;
            flex-wrap: wrap;
            margin-top: 0.75rem;
        }

        @media (prefers-reduced-motion: reduce) {
            * {
                animation: none !important;
                transition: none !important;
            }
        }

        @media (max-width: 1220px) {
            .filters-grid {
                grid-template-columns: repeat(4, minmax(0, 1fr));
            }

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

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

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

            .stat-structure-split {
                grid-template-columns: 1fr;
            }

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

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

            .sales-management-summary-grid {
                grid-template-columns: repeat(4, minmax(0, 1fr));
            }

            .chart-grid,
            .performance-table-grid,
            .delivery-dashboard-grid,
            .beijing-assignment-dashboard,
            .boss-command-grid,
            .sales-management-layout,
            .sales-management-wide-grid,
            .dashboard-dual-grid {
                grid-template-columns: 1fr;
            }

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

            .beijing-assignment-kpis,
            .beijing-workload-grid {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }

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

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

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

            .city-target-list {
                grid-template-columns: 1fr;
            }

            .lead-date-toolbar-main {
                align-items: flex-start;
            }

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

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

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

        @media (max-width: 1080px) {
            .performance-manage-grid {
                grid-template-columns: 1fr;
            }

            .performance-manage-grid.read-only .performance-manage-side {
                grid-template-columns: 1fr;
            }

            .performance-manage-grid.read-only #performance-summary-card,
            .performance-manage-grid.read-only #performance-focus-card,
            .performance-manage-grid.read-only #performance-recent-card {
                grid-column: auto;
                grid-row: auto;
            }

            #app-layout {
                flex-direction: column;
            }

            .sidebar {
                width: 100%;
                flex: none;
                border-right: 0;
                border-bottom: 1px solid rgba(255, 255, 255, 0.68);
                padding: 1rem 1rem 0.92rem;
            }

            .logo {
                margin-bottom: 1rem;
            }

            .logo-main {
                font-size: 22px;
            }

            .sidebar nav {
                display: grid;
                grid-template-columns: repeat(6, minmax(0, 1fr));
                gap: 0.56rem;
            }

            .sidebar.grouped-nav nav {
                display: grid;
                grid-template-columns: repeat(6, minmax(0, 1fr));
                gap: 0.56rem;
                overflow: visible;
                padding: 0;
            }

            .sidebar.grouped-nav .nav-group,
            .sidebar.grouped-nav .nav-group-items {
                display: contents !important;
            }

            .sidebar.grouped-nav .nav-group-toggle {
                display: none;
            }

            .sidebar.grouped-nav .nav-primary::before,
            .sidebar.grouped-nav .nav-group-toggle::before,
            .sidebar.grouped-nav .nav-group-items .nav-item::before {
                display: none;
            }

            .sidebar.grouped-nav .nav-primary,
            .sidebar.grouped-nav .nav-group-items .nav-item {
                justify-content: center;
                min-height: 42px;
                margin-bottom: 0;
                padding: 0.7rem 0.92rem;
                border-radius: 12px;
                font-size: inherit;
                text-align: center;
            }

            .nav-item {
                margin-bottom: 0;
                min-height: 42px;
            }

            .user-profile {
                margin-top: 0.9rem;
                padding-top: 0.9rem;
            }

            .main-content {
                height: auto;
                overflow: visible;
                padding: 1rem 1rem 1.2rem;
            }

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

            .header h2 {
                font-size: 28px;
            }

            .header-actions {
                width: 100%;
                justify-content: flex-start;
            }

            .range-switch {
                max-width: 100%;
                overflow-x: auto;
                scrollbar-width: none;
            }

            .range-switch::-webkit-scrollbar {
                display: none;
            }

            .a-class-layout,
            .chart-grid,
            .dashboard-dual-grid,
            .delivery-dashboard-grid,
            .beijing-assignment-dashboard,
            .boss-command-grid,
            .sales-management-layout,
            .sales-management-wide-grid,
            .performance-table-grid,
            .performance-manage-grid {
                grid-template-columns: 1fr;
            }

            .beijing-assignment-kpis,
            .beijing-workload-grid {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }

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

            .target-row-inputs,
            .staff-progress-meta-grid,
            .target-overview-grid,
            .target-meta-grid {
                grid-template-columns: 1fr;
            }

            .target-header-tools {
                justify-content: flex-start;
            }

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

            .lead-header-actions,
            .lead-header-actions-buttons,
            .lead-date-toolbar-main {
                width: 100%;
            }

            .lead-date-field {
                grid-template-columns: auto minmax(0, 1fr);
                flex: 1 1 calc(50% - 0.62rem);
            }

            .lead-date-toolbar-main .btn {
                width: 100%;
                max-width: 160px;
            }

            .a-class-owner-add,
            .a-class-progress-grid,
            .admin-week-grid,
            .performance-form-grid,
            .performance-manage-summary,
            .sales-management-summary-grid,
            .sales-management-profile-grid,
            .sales-management-lower-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

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

            .performance-manage-side {
                height: auto;
            }

            .performance-manage-side > .card:last-child {
                flex: none;
            }
        }

        @media (max-width: 900px) {
            #login-screen {
                padding: 1rem;
                align-items: stretch;
            }

            .login-shell {
                width: min(500px, 100%);
                gap: 0.82rem;
                margin: auto;
            }

            .sidebar {
                position: relative;
                padding-top: 0.9rem;
                width: 100%;
                max-width: 100%;
                overflow-x: hidden;
            }

            .logo {
                margin-bottom: 0.92rem;
                padding: 0 3.2rem;
            }

            .sidebar nav {
                display: flex !important;
                gap: 0.44rem;
                overflow-x: auto;
                overflow-y: hidden;
                padding: 0 0 0.12rem;
                width: 100%;
                max-width: 100%;
                scrollbar-width: none;
            }

            .sidebar nav::-webkit-scrollbar {
                display: none;
            }

            .nav-item {
                flex: 0 0 104px;
                min-width: 0;
                max-width: 100%;
                margin-bottom: 0;
                white-space: nowrap;
                line-height: 1.3;
                padding: 0.56rem 0.26rem;
                min-height: 46px;
                font-size: 12px;
            }

            .sidebar.grouped-nav .nav-primary,
            .sidebar.grouped-nav .nav-group-items .nav-item {
                flex: 0 0 104px;
                padding: 0.56rem 0.26rem;
                font-size: 12px;
            }

            .user-profile {
                position: absolute;
                top: 0.78rem;
                right: 0.82rem;
                margin-top: 0;
                padding: 0;
                border: 0;
                background: transparent;
                box-shadow: none;
                width: auto;
                gap: 0;
            }

            .user-profile .avatar,
            .user-profile > div {
                display: none;
            }

            .user-profile .text-action {
                width: auto;
                margin-left: 0;
                text-align: right;
                font-size: 12px;
            }

            .form-grid,
            .mini-grid,
            .stats-grid {
                grid-template-columns: 1fr;
            }

            .lead-entry-primary-grid,
            .lead-entry-contact-grid,
            .lead-entry-secondary-grid,
            .lead-entry-notes-grid {
                grid-template-columns: 1fr;
            }

            .lead-entry-source-field {
                grid-column: auto;
            }

            .lead-entry-source-actions label {
                display: none;
            }

            .target-filter-grid,
            .lead-filter-grid,
            .filters-grid,
            .performance-form-grid,
            .performance-summary-grid,
            .boss-summary-grid,
            .boss-city-grid,
            .boss-conversion-grid,
            .sales-management-summary-grid,
            .sales-management-profile-grid,
            .sales-management-lower-grid,
            .sales-management-filters,
            .performance-manage-summary,
            .performance-filters-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                width: 100%;
                max-width: 100%;
            }

            .boss-sales-row {
                grid-template-columns: 32px minmax(0, 1fr);
            }

            .boss-sales-row.is-allocation-plan {
                grid-template-columns: minmax(0, 1fr);
            }

            .boss-sales-metrics {
                grid-column: 1 / -1;
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }

            .sales-management-panel {
                padding: 0.86rem;
            }

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

            .delivery-quality-name {
                grid-column: 1 / -1;
            }

            #filter-source-account {
                grid-column: 1 / -1;
            }

            .target-header-actions,
            .target-header-tools,
            .target-header-buttons {
                width: 100%;
                justify-content: flex-start;
            }

            .target-header-month {
                width: 100%;
            }

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

            .target-filter-grid,
            .lead-filter-grid,
            .filters-grid {
                padding: 0.74rem 0.78rem;
            }

            .feedback-update-card {
                grid-template-columns: 1fr;
                align-items: stretch;
                gap: 0.62rem;
            }

            .feedback-update-actions {
                justify-content: flex-start;
                min-width: 0;
            }

            .leads-controls,
            .performance-records-controls,
            .table-shell .table-toolbar {
                width: 100%;
                max-width: 100%;
            }

            .a-class-layout,
            .a-class-progress-grid,
            .admin-week-grid {
                grid-template-columns: 1fr;
            }

            .a-class-owner-add {
                grid-template-columns: 1fr;
            }

            .a-class-kpi-value {
                grid-template-columns: 1fr;
                align-items: stretch;
            }

            .a-class-next-owner {
                justify-content: center;
            }

            .a-class-quick-btn {
                width: 100%;
                justify-content: center;
            }

            .performance-entry-guide {
                flex-direction: column;
                align-items: stretch;
            }

            .header-actions {
                display: flex;
                flex-wrap: wrap;
                align-items: center;
                justify-content: flex-start;
            }

            .header-actions .range-switch,
            .header-actions .month-picker {
                width: auto;
                max-width: 100%;
            }

            .header-actions .btn {
                width: auto;
                min-width: 118px;
                justify-content: center;
            }

            .performance-paste-actions {
                flex-direction: column;
                align-items: stretch;
            }

            .upload-dropzone {
                min-height: 138px;
                padding: 0.9rem 0.82rem;
            }

            .upload-dropzone-actions {
                flex-direction: column;
            }

            .upload-dropzone-actions .btn {
                width: 100%;
                justify-content: center;
            }

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

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

            .table-wrapper.users-table-wrapper table {
                display: none;
            }

            .users-mobile-list {
                display: grid;
            }

            .logo-main {
                font-size: 20px;
            }

            .logo-sub {
                font-size: 16px;
            }
        }

        @media (max-width: 560px) {
            .delivery-quality-row {
                grid-template-columns: 1fr;
            }

            .main-content {
                width: 100vw;
                max-width: 100vw;
                overflow-x: hidden;
            }

            .sales-management-table-wrap {
                max-width: 100%;
                overflow-x: auto;
            }

            .sales-management-table {
                min-width: 720px;
            }

            .main-content {
                padding: 0.82rem 0.82rem 1rem;
            }

            .card,
            .table-shell,
            .table-wrapper,
            .modal {
                border-radius: 14px;
            }

            .card {
                padding: 0.88rem;
            }

            .login-box {
                padding: 1.25rem 1rem;
            }

            .login-box h2 {
                font-size: 24px;
            }

            .user-modal {
                max-width: calc(100vw - 1.2rem);
                max-height: calc(100vh - 1.2rem);
                padding: 1rem;
            }

            .delivery-scope-head {
                display: block;
            }

            .delivery-scope-head span {
                display: block;
                margin-top: 0.22rem;
                text-align: left;
            }

            .delivery-scope-grid {
                grid-template-columns: 1fr;
            }

            .beijing-assignment-kpis,
            .beijing-workload-grid {
                grid-template-columns: 1fr;
            }

            .beijing-assignment-actions .btn {
                width: auto;
            }

            .delivery-scope-actions {
                justify-content: stretch;
            }

            .delivery-scope-actions .btn {
                width: 100%;
            }

            .delivery-scope-item {
                grid-template-columns: 1fr;
            }

            .source-config-grid,
            .source-config-form,
            .source-config-form.channel-form,
            .source-config-account-list {
                grid-template-columns: 1fr;
            }

            .login-record {
                font-size: 11px;
                bottom: 14px;
            }

            .header h2 {
                font-size: 24px;
            }

            .sidebar {
                padding: 0.82rem 0.82rem 0.86rem;
            }

            .logo {
                padding: 0 2.6rem;
                margin-bottom: 0.84rem;
            }

            .nav-item {
                min-width: 0;
                padding: 0.52rem 0.18rem;
                font-size: 11.5px;
                min-height: 44px;
            }

            .user-profile {
                top: 0.72rem;
                right: 0.72rem;
            }

            .user-profile {
                gap: 0.56rem;
            }

            .avatar {
                width: 32px;
                height: 32px;
                border-radius: 10px;
            }

            .header {
                gap: 0.64rem;
                margin-bottom: 1rem;
                padding-bottom: 0.72rem;
            }

            .header-actions {
                display: grid;
                grid-template-columns: 1fr;
                gap: 0.5rem;
            }

            .range-switch {
                padding: 0.22rem;
            }

            .range-prefix {
                padding-left: 0.32rem;
                font-size: 11px;
            }

            .range-tab {
                padding: 0.4rem 0.62rem;
                font-size: 12px;
            }

            .month-picker {
                min-width: 0;
                border-radius: 14px;
            }

            .a-class-head,
            .admin-overview-head,
            .metric-table-head {
                flex-direction: column;
                align-items: flex-start;
            }

            .stats-grid > .card {
                min-height: 122px;
            }

            .admin-week-panel {
                min-height: auto;
            }

            .chart-grid > .card {
                min-height: 320px;
            }

            .metric-table-card {
                min-height: auto;
                max-height: none;
            }

            .metric-table-card .metric-mobile-list {
                display: grid;
            }

            .metric-table-card .metric-table-wrap {
                display: none;
            }

            .metric-table {
                min-width: 560px;
            }

            .metric-table-wrap {
                max-height: none;
            }

            .target-filter-grid,
            .lead-filter-grid,
            .filters-grid,
            .performance-form-grid,
            .performance-summary-grid,
            .boss-summary-grid,
            .boss-city-grid,
            .boss-conversion-grid,
            .sales-management-summary-grid,
            .sales-management-filters,
            .sales-management-profile-grid,
            .sales-management-lower-grid,
            .performance-manage-summary,
            .performance-filters-grid {
                grid-template-columns: 1fr;
            }

            .sales-management-summary-grid,
            .sales-management-profile-grid,
            .sales-management-profile-funnel {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .sales-management-funnel-enhanced .metric-table-head {
                display: grid;
            }

            .sales-management-funnel-summary {
                justify-content: flex-start;
            }

            .sales-management-profile-head {
                display: grid;
            }

            .sales-management-profile-rate {
                text-align: left;
            }

            .boss-sales-row {
                grid-template-columns: 30px minmax(0, 1fr);
            }

            .boss-sales-row.is-allocation-plan {
                grid-template-columns: minmax(0, 1fr);
            }

            .boss-sales-metrics {
                grid-column: 1 / -1;
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .dashboard-spend-head,
            .target-hero-head {
                flex-direction: column;
                align-items: flex-start;
            }

            .dashboard-spend-grid {
                grid-template-columns: 1fr;
            }

            .dashboard-spend-actions,
            .target-header-buttons {
                width: 100%;
            }

            .dashboard-spend-actions .btn,
            .target-header-buttons .btn,
            .target-header-month .btn {
                width: 100%;
                justify-content: center;
            }

            .metric-mobile-grid {
                grid-template-columns: 1fr;
            }

            .lead-filter-grid,
            .filters-grid {
                padding: 0.68rem 0.7rem;
            }

            .sales-feedback-alert {
                flex-direction: column;
                align-items: stretch;
            }

            .sales-feedback-alert-actions {
                justify-content: flex-start;
            }

            .sales-feedback-alert-actions .btn {
                flex: 1 1 0;
                justify-content: center;
                min-width: 0;
            }

            .sales-feedback-summary {
                margin-bottom: 0.7rem;
            }

            .sales-feedback-overview-shell {
                padding: 0.7rem;
            }

            .sales-feedback-kpi-layout {
                grid-template-columns: 1fr;
            }

            .sales-feedback-kpi-grid {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }

            .sales-feedback-insights-grid {
                display: none;
            }

            .sales-feedback-summary-card {
                padding: 0.62rem 0.58rem;
                border-radius: 14px;
            }

            .sales-feedback-summary-card span {
                font-size: 11px;
            }

            .sales-feedback-summary-card strong {
                font-size: 18px;
            }

            .sales-feedback-summary-list {
                display: none;
            }

            #sales-feedback-modal-overlay {
                padding: 0.72rem;
            }

            .sales-feedback-modal {
                max-height: calc(100vh - 1.44rem);
            }

            .sales-feedback-modal-footer {
                flex-wrap: wrap;
            }

            .sales-feedback-modal-footer .btn {
                flex: 1 1 132px;
                min-width: 0;
                justify-content: center;
            }

            .metric-table th,
            .metric-table td,
            .leads-table th,
            .leads-table td,
            .performance-records-table th,
            .performance-records-table td {
                font-size: 12px;
                padding: 0.56rem 0.46rem;
            }

            .a-class-owner-item {
                grid-template-columns: 28px minmax(0, 1fr);
                align-items: start;
            }

            .a-class-owner-actions {
                grid-column: 1 / -1;
                justify-content: flex-start;
                padding-left: 28px;
                flex-wrap: wrap;
            }

            .a-class-owner-button-group {
                flex-wrap: wrap;
            }

            .a-class-owner-stat {
                grid-template-columns: 1fr;
                gap: 0.48rem;
            }

            .a-class-owner-stat-name {
                text-align: center;
            }

            .a-class-owner-meta,
            .a-class-order-summary-grid {
                grid-template-columns: 1fr;
            }

            .performance-manage-item {
                grid-template-columns: 1fr;
            }

            .performance-manage-item em {
                white-space: normal;
            }

            .performance-manage-side > .card,
            .performance-manage-side > .card:last-child {
                flex: none;
                min-height: 0;
                height: auto;
            }

            .performance-manage-list,
            .channel-spend-recent-list {
                grid-template-rows: none;
                gap: 0.5rem;
            }

            .juguang-sync-health-list,
            .juguang-sync-health-meta {
                grid-template-columns: 1fr;
            }

            .lead-command-panel {
                padding: 0.86rem;
                border-radius: 18px;
            }

            .lead-date-field {
                padding: 0 0.68rem 0 0.74rem;
                width: 100%;
            }

            .target-row-head {
                align-items: flex-start;
            }

            .target-row-side {
                justify-items: start;
            }

            .performance-manage-item {
                min-height: auto;
                padding: 0.66rem 0.72rem;
            }

            .performance-manage-empty {
                padding: 0.5rem 0.1rem;
            }

            .performance-paste-box {
                padding: 0.72rem;
            }

            .performance-paste-box textarea {
                min-height: 120px;
            }

            .upload-summary-grid {
                grid-template-columns: 1fr;
            }

            .leads-controls {
                padding: 0.7rem 0.62rem;
            }

            .table-shell.mobile-stack > .mobile-record-list {
                display: grid;
            }

            .table-shell.mobile-stack > .table-wrapper {
                display: none;
            }

            .mobile-record-list {
                padding: 0.72rem;
            }

            .mobile-record-card {
                padding: 0.72rem 0.74rem;
                border-radius: 16px;
            }

            .mobile-record-head {
                flex-direction: column;
                align-items: flex-start;
                gap: 0.46rem;
            }

            .mobile-record-head strong {
                font-size: 15px;
            }

            .mobile-record-head span,
            .mobile-record-row,
            .mobile-record-row label,
            .mobile-record-row .mobile-record-value {
                font-size: 12px;
            }

            .mobile-record-grid {
                grid-template-columns: 1fr;
                gap: 0.4rem;
            }

            .mobile-record-actions {
                flex-direction: column;
                align-items: stretch;
                gap: 0.42rem;
                padding-top: 0.58rem;
            }

            .mobile-record-actions-main {
                width: 100%;
                justify-content: space-between;
            }

            .mobile-record-actions .text-action,
            .mobile-record-actions .batch-check {
                font-size: 12px;
            }

            .batch-bar {
                gap: 0.48rem;
            }

            .batch-bar .filter-input,
            .batch-bar .btn,
            .batch-info {
                width: 100%;
            }

            .table-toolbar {
                padding: 0.8rem 0.72rem;
            }

            .users-mobile-list {
                padding: 0.72rem;
            }

            .users-mobile-card {
                padding: 0.76rem 0.78rem;
                border-radius: 14px;
            }

            .users-mobile-head,
            .users-mobile-actions {
                flex-direction: column;
                align-items: flex-start;
            }

            .users-mobile-row {
                grid-template-columns: 1fr;
                gap: 0.18rem;
            }

            #toast-container {
                left: 0.82rem;
                right: 0.82rem;
                top: 0.82rem;
            }

            .toast {
                min-width: 0;
                width: 100%;
            }
        }
        .customer-protection-summary {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 0.85rem;
            margin-bottom: 1rem;
        }

        .customer-protection-stat {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 1rem 1.1rem;
            border: 1px solid rgba(99, 102, 241, 0.18);
            border-radius: 16px;
            background: linear-gradient(135deg, rgba(255,255,255,0.96), rgba(238,242,255,0.9));
        }

        .customer-protection-stat strong { font-size: 1.75rem; color: #4338ca; }
        .customer-protection-stat span { color: var(--text-muted); font-size: 0.86rem; }

        .customer-protection-layout {
            display: grid;
            grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
            gap: 1rem;
            align-items: start;
        }

        .customer-protection-list,
        .customer-collision-list { display: grid; gap: 0.78rem; margin-top: 0.9rem; }

        .customer-protection-card,
        .customer-collision-card {
            padding: 0.95rem 1rem;
            border: 1px solid var(--border-soft);
            border-radius: 14px;
            background: rgba(255,255,255,0.94);
        }

        .customer-protection-card.is-active {
            border-color: rgba(34, 197, 94, 0.36);
            box-shadow: 0 10px 24px rgba(34, 197, 94, 0.08);
        }

        .customer-protection-card-head,
        .customer-collision-card > div {
            display: flex;
            justify-content: space-between;
            gap: 0.8rem;
            align-items: flex-start;
        }

        .customer-protection-card-head > div,
        .customer-collision-card > div { display: grid; gap: 0.2rem; }
        .customer-protection-card-head strong,
        .customer-collision-card strong { font-size: 0.98rem; }
        .customer-protection-card-head span,
        .customer-collision-card span,
        .customer-collision-card small { color: var(--text-muted); font-size: 0.8rem; }

        .customer-protection-details {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.42rem 0.8rem;
            margin-top: 0.78rem;
            font-size: 0.82rem;
            color: var(--text-secondary);
        }

        .customer-protection-actions { display: flex; align-items: center; gap: 0.55rem; margin-top: 0.8rem; }
        .customer-protection-history-stats {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 0.65rem;
            margin: 0.85rem 0;
        }
        .customer-protection-history-stat {
            padding: 0.72rem;
            border: 1px solid var(--border-soft);
            border-radius: 12px;
            background: rgba(246, 249, 255, 0.9);
            text-align: center;
        }
        .customer-protection-history-stat strong,
        .customer-protection-history-stat span { display: block; }
        .customer-protection-history-stat strong { color: #4338ca; font-size: 1.25rem; }
        .customer-protection-history-stat span { margin-top: 0.18rem; color: var(--text-muted); font-size: 12px; }
        .customer-protection-history-kind {
            display: inline-flex;
            margin-right: 0.45rem;
            padding: 2px 8px;
            border-radius: 999px;
            background: rgba(79, 70, 229, 0.1);
            color: #4338ca;
            font-size: 11px;
            font-weight: 700;
        }
        .customer-collision-card p { margin: 0.65rem 0 0.35rem; font-size: 0.86rem; }

        .prospect-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
        .prospect-metric { position:relative; overflow:hidden; border:1px solid #d8e4fb; border-radius:18px; background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(244,248,255,.92)); padding:17px 19px; box-shadow:0 10px 25px rgba(47,99,190,.07); }
        .prospect-metric::before { content:""; position:absolute; inset:0 auto 0 0; width:4px; border-radius:4px; background:#5f8df7; }
        .prospect-metric:nth-child(2)::before { background:#36b37e; }
        .prospect-metric:nth-child(3)::before { background:#f5a524; }
        .prospect-metric:nth-child(4)::before { background:#7c5ce5; }
        .prospect-metric span { display:block; color:#60718f; font-size:13px; margin-bottom:7px; }
        .prospect-metric strong { color:#102044; font-size:27px; line-height:1; }
        .prospect-manager-create { overflow:hidden; margin-bottom:18px; border-color:#d4e2ff; background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(240,246,255,.9)); }
        #prospect-pool-summary-host:empty { display:none; }
        .prospect-manager-summary { margin:0 0 18px; }
        .prospect-manager-summary .prospect-metric { min-height:88px; padding:15px 18px; }
        .prospect-manager-create .metric-table-head { margin-bottom:14px; padding-bottom:13px; border-bottom:1px solid #e1e9f8; }
        .prospect-manager-create .metric-table-head h3::before { content:"1"; display:inline-grid; place-items:center; width:26px; height:26px; margin-right:9px; border-radius:9px; background:#2f6df6; color:#fff; font-size:13px; }
        .prospect-upload-grid { display:grid; grid-template-columns:1.25fr .7fr .7fr .7fr 1.1fr; gap:12px; align-items:end; }
        .prospect-upload-grid label { display:grid; gap:7px; color:#536582; font-size:13px; font-weight:650; }
        .prospect-upload-grid input,.prospect-upload-grid select,.prospect-upload-grid textarea { width:100%; min-height:44px; background:rgba(255,255,255,.96); }
        .prospect-paste-field { grid-column:1 / -1; padding:14px; border:1px dashed #a9c3fa; border-radius:15px; background:rgba(239,245,255,.68); }
        .prospect-paste-field textarea { min-height:126px; resize:vertical; line-height:1.65; font-family:inherit; background:#fff; }
        .prospect-paste-actions { grid-column:1 / -1; display:flex; align-items:center; justify-content:space-between; gap:12px; padding-top:2px; }
        .prospect-paste-count { display:inline-flex; align-items:center; min-height:32px; padding:0 11px; border-radius:999px; background:#edf4ff; color:#3768c8; font-size:13px; font-weight:650; }
        .prospect-create-button { min-width:142px; min-height:44px; box-shadow:0 8px 18px rgba(47,109,246,.22); }
        .prospect-batch-list { display:grid; gap:10px; }
        .prospect-batch-row { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:13px 15px; border:1px solid #dbe5f7; border-radius:14px; background:#fff; }
        .prospect-batch-row strong,.prospect-batch-row span { display:block; }
        .prospect-batch-row span { margin-top:4px; color:var(--text-muted); font-size:12px; }
        .prospect-batch-actions { display:flex; align-items:center; gap:12px; }
        #view-dashboard > .header { border-bottom:0; }
        #view-prospect-pool > .header { border-bottom:0; padding-bottom:0; }
        .prospect-batch-remaining { min-width:94px; padding:7px 11px; border:1px solid #cfe0ff; border-radius:11px; background:#edf4ff; text-align:center; }
        .prospect-batch-remaining small,.prospect-batch-remaining strong { display:block; margin:0; }
        .prospect-batch-remaining small { color:#6b7b95; font-size:11px; }
        .prospect-batch-remaining strong { margin-top:2px; color:#245fd4; font-size:18px; line-height:1.15; }
        .prospect-batch-remaining.is-zero { border-color:#e0e6ef; background:#f5f7fa; }
        .prospect-batch-remaining.is-zero strong { color:#7c8799; }
        .prospect-batch-row.is-complete { background:#f8fafc; opacity:.88; }
        .prospect-complete-badge { display:inline-flex !important; align-items:center; min-height:34px; margin:0 !important; padding:0 12px; border-radius:999px; background:#edf0f5; color:#67758b !important; font-weight:700; }
        .prospect-batch-empty { display:grid; place-items:center; min-height:104px; padding:18px; border:1px dashed #cfdcf1; border-radius:14px; background:#f8fbff; text-align:center; }
        .prospect-batch-empty strong { color:#223654; font-size:15px; }
        .prospect-batch-empty span { margin-top:5px; color:#73819a; font-size:12px; }
        .prospect-completed-batches { margin-top:12px; }
        .prospect-completed-batches summary { display:flex; align-items:center; gap:8px; width:max-content; color:#687893; font-size:13px; font-weight:700; cursor:pointer; list-style:none; }
        .prospect-completed-batches summary::-webkit-details-marker { display:none; }
        .prospect-completed-batches summary::before { content:"›"; color:#4d78d0; font-size:18px; transform:rotate(0); transition:transform .16s ease; }
        .prospect-completed-batches[open] summary::before { transform:rotate(90deg); }
        .prospect-completed-batches summary span { display:inline-grid; place-items:center; min-width:24px; height:22px; border-radius:999px; background:#edf2fa; color:#49678f; font-size:11px; }
        .prospect-completed-batches > .prospect-batch-list { margin-top:10px; }
        .prospect-contact-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:1fr; align-items:stretch; gap:12px; }
        .prospect-contact-grid.compact { grid-template-columns:repeat(3,minmax(0,1fr)); }
        .prospect-contact-card { position:relative; display:flex; flex-direction:column; height:100%; padding:16px; border:1px solid #dbe5f7; border-left:4px solid #6f97f7; border-radius:15px; background:linear-gradient(145deg,#fff,#fbfdff); min-width:0; box-shadow:0 8px 18px rgba(52,82,135,.05); transition:transform .16s ease,box-shadow .16s ease; }
        .prospect-contact-card:hover { transform:translateY(-1px); box-shadow:0 11px 24px rgba(52,82,135,.09); }
        .prospect-contact-card.status-nurturing { border-left-color:#22a06b; }
        .prospect-contact-card.status-closed { border-left-color:#9aa8bc; }
        .prospect-contact-card.status-converted { border-left-color:#7c5ce5; }
        #view-cross-city-records { color:#243650; }
        #cross-city-record-filters select { width:auto; min-width:140px; flex:0 1 150px; }
        #cc-record-results th { color:#40516d; background:#f2f6fc; }
        #cc-record-results small { color:#526681; }
        #cc-record-results button:focus-visible { outline:2px solid #245fcf; outline-offset:3px; }
        .prospect-cross-city-entry { margin-top:10px; padding-top:10px; border-top:1px solid #edf1f7; }
        .prospect-cross-city-entry .btn { width:100%; min-height:34px; font-size:12px; }
        .prospect-cross-city-board { margin-bottom:14px; padding:18px; min-width:0; }
        .prospect-cross-city-board[hidden], #prospect-cross-city-modal-overlay [hidden] { display:none !important; }
        .prospect-cross-city-heading { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; }
        .prospect-cross-city-heading h3 { font-size:17px; }
        .prospect-cross-city-note { margin:9px 0; color:var(--text-muted); font-size:13px; line-height:1.6; overflow-wrap:anywhere; }
        .prospect-cross-city-progress { display:flex; flex-wrap:wrap; gap:8px 22px; margin:12px 0; color:#40516d; font-size:13px; }
        .prospect-cross-city-progress strong { color:#245fcf; font-size:18px; margin-right:4px; }
        .prospect-cross-city-request { padding:12px 0; border-top:1px solid #e1e9f5; min-width:0; overflow-wrap:anywhere; }
        .prospect-cross-city-request-head { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px; font-size:13px; }
        .prospect-cross-city-request-head em { color:var(--text-muted); font-style:normal; }
        .prospect-cross-city-details { display:grid; grid-template-columns:78px minmax(0,1fr); gap:6px 10px; margin:10px 0; font-size:13px; line-height:1.6; }
        .prospect-cross-city-details dt { color:var(--text-muted); }
        .prospect-cross-city-details dd { margin:0; white-space:pre-wrap; overflow-wrap:anywhere; }
        .prospect-cross-city-request details summary { margin-top:8px; cursor:pointer; color:#3267ca; font-size:13px; }
        .prospect-cross-city-review-actions { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:8px; }
        .prospect-cross-city-review-actions .btn { min-height:34px; font-size:12px; }
        #prospect-cross-city-message { color:var(--danger); }
        #prospect-cross-city-review-preview { padding:10px 12px; background:#f2f6fc; border-radius:10px; }
        #prospect-cross-city-modal-overlay .sales-feedback-modal-footer { flex-wrap:wrap; }
        .prospect-contact-head { display:flex; justify-content:space-between; gap:12px; }
        .prospect-contact-head strong,.prospect-contact-head span { display:block; }
        .prospect-contact-head strong { color:#15243e; font-size:15px; }
        .prospect-contact-identity { min-width:0; }
        .prospect-phone-row { display:flex; align-items:center; gap:9px; margin-top:4px; }
        .prospect-contact-identity > strong + .prospect-phone-row { margin-top:7px; }
        .prospect-phone-link { color:#172b52; font-size:22px; font-weight:850; letter-spacing:.7px; line-height:1.2; text-decoration:none; }
        .prospect-phone-link:hover { color:#2468e8; text-decoration:underline; text-underline-offset:3px; }
        .prospect-copy-phone { min-height:27px; padding:0 9px; border:1px solid #c9daf8; border-radius:8px; background:#f3f7ff; color:#3267ca; font-size:11px; font-weight:700; cursor:pointer; }
        .prospect-copy-phone:hover { background:#e9f1ff; }
        .prospect-contact-head em { align-self:flex-start; padding:4px 9px; border-radius:999px; background:#edf4ff; color:#2765db; font-style:normal; font-size:12px; white-space:nowrap; }
        .prospect-contact-meta { display:flex; flex-wrap:wrap; gap:6px; margin-top:11px; color:#687993; font-size:12px; }
        .prospect-contact-meta span { display:inline-flex; align-items:center; min-height:24px; padding:0 8px; border-radius:7px; background:#f2f6fc; }
        .prospect-contact-result { margin-top:11px; padding:10px 11px; border-radius:10px; background:#f6f8fc; }
        .prospect-contact-result p { display:-webkit-box; overflow:hidden; margin:5px 0 0; color:#40516d; line-height:1.55; white-space:pre-wrap; word-break:break-word; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
        .prospect-next-follow { margin-top:9px; color:#9a5a09; font-size:13px; font-weight:650; }
        .prospect-retry-note { display:flex; align-items:center; gap:10px; margin-top:11px; padding:8px 10px; border-radius:10px; background:#fff8e9; color:#9a5a09; font-size:12px; }
        .prospect-retry-note strong { color:#b56208; }
        .prospect-contact-actions { display:flex; justify-content:flex-end; gap:9px; margin-top:auto; padding-top:15px; }
        .prospect-contact-actions .prospect-action { display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:0 16px; border-radius:11px; border:1px solid transparent; font-weight:700; line-height:1; cursor:pointer; transition:transform .16s ease,box-shadow .16s ease,background .16s ease; }
        .prospect-contact-actions .prospect-action:hover { transform:translateY(-1px); }
        .prospect-action-feedback { border-color:#a9c4fb !important; background:#edf4ff !important; color:#245fcf !important; }
        .prospect-action-feedback:hover { background:#e1ecff !important; box-shadow:0 6px 14px rgba(47,109,246,.15); }
        .prospect-action-convert { background:linear-gradient(135deg,#3a7bff,#245de5) !important; color:#fff !important; box-shadow:0 7px 16px rgba(47,109,246,.24); }
        .prospect-action-abandon { margin-right:auto; border-color:#f0c1c1 !important; background:#fff7f7 !important; color:#b44343 !important; }
        .prospect-action-abandon:hover { background:#fff0f0 !important; box-shadow:0 6px 14px rgba(186,67,67,.12); }
        .prospect-contact-card.status-nurturing { background:linear-gradient(145deg,#fff,#f4fff9); }
        .prospect-contact-card.status-nurturing .prospect-action-convert::before { content:"\2192"; margin-right:6px; }
        .prospect-rule-tip { margin:0 0 14px; padding:11px 14px; border:1px solid #d8e4fb; border-radius:13px; background:#f6f9ff; color:#51627e; font-size:13px; line-height:1.55; }
        .prospect-rule-tip strong { color:#234f9e; }
        .prospect-unified-grid .prospect-contact-card { height:auto; min-height:158px; }
        .prospect-unified-grid .prospect-contact-actions { border-top:1px solid #edf1f7; }
        .prospect-admin-batch-list { display:grid; gap:12px; }
        .prospect-admin-batch { overflow:hidden; border:1px solid #d7e3f8; border-radius:14px; background:linear-gradient(145deg,#fff,#f7faff); box-shadow:0 6px 16px rgba(52,82,135,.045); }
        .prospect-admin-batch.is-finished { background:#f8fafc; box-shadow:none; }
        .prospect-admin-batch > summary { list-style:none; }
        .prospect-admin-batch > summary::-webkit-details-marker { display:none; }
        .prospect-admin-batch-summary { position:relative; display:grid; grid-template-columns:minmax(240px,1.3fr) minmax(430px,1.7fr) auto; align-items:center; gap:18px; min-height:82px; padding:13px 44px 13px 17px; cursor:pointer; }
        .prospect-admin-batch-summary::after { content:"›"; position:absolute; right:17px; top:50%; color:#5f78a4; font-size:24px; transform:translateY(-50%); transition:transform .16s ease; }
        .prospect-admin-batch[open] .prospect-admin-batch-summary::after { transform:translateY(-50%) rotate(90deg); }
        .prospect-admin-batch-detail { padding:14px 17px 15px; border-top:1px solid #e3eaf6; background:rgba(247,250,255,.68); }
        .prospect-admin-batch-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:14px; }
        .prospect-admin-batch-title strong { display:block; color:#172641; font-size:16px; }
        .prospect-admin-batch-title small { display:block; overflow:hidden; margin-top:4px; color:#6c7c98; text-overflow:ellipsis; white-space:nowrap; }
        .prospect-batch-tags { display:flex; flex-wrap:wrap; gap:5px; margin-top:6px; }
        .prospect-batch-tag { display:inline-flex; align-items:center; min-height:22px; padding:0 8px; border-radius:999px; background:#edf4ff; color:#3165ca; font-size:11px; font-weight:650; }
        .prospect-admin-batch-glance { display:flex; align-items:center; justify-content:flex-end; gap:7px; min-width:0; }
        .prospect-admin-batch-glance > span { display:inline-flex; align-items:center; justify-content:center; gap:4px; min-height:30px; padding:0 9px; border-radius:9px; background:#f2f6fc; color:#73819a; font-size:11px; line-height:1; white-space:nowrap; }
        .prospect-admin-batch-glance > span strong { color:#203555; font-size:15px; line-height:1; }
        .prospect-admin-batch-glance .prospect-admin-batch-state { background:#eaf9f1; color:#168052; font-weight:750; }
        .prospect-admin-batch-glance .prospect-admin-batch-state.done { background:#edf0f5; color:#6d7889; }
        .prospect-claim-setting { display:flex; align-items:center; justify-content:flex-end; gap:9px; min-width:172px; flex-shrink:0; }
        .prospect-claim-setting span { color:#66758f; font-size:12px; line-height:1; white-space:nowrap; }
        .prospect-claim-setting .btn { min-height:36px; border-radius:10px; white-space:nowrap; }
        .prospect-claim-size-btn { border:1px solid #b9cffb !important; background:#edf4ff !important; color:#245fcf !important; box-shadow:0 4px 12px rgba(47,109,246,.10); }
        .prospect-claim-size-btn:hover { border-color:#8fb2fa !important; background:#e1ecff !important; box-shadow:0 7px 16px rgba(47,109,246,.16); }
        .prospect-claim-size-modal { max-width:480px; border:1px solid rgba(196,211,239,.9); background:rgba(255,255,255,.94); box-shadow:0 24px 70px rgba(32,56,101,.22); }
        .prospect-claim-size-modal .input-group { margin-top:15px; }
        .prospect-claim-size-modal input { min-height:48px; font-size:18px; font-weight:750; }
        .prospect-admin-batch-metrics { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:8px; }
        .prospect-admin-batch-metric { padding:10px 9px; border:1px solid #e1e8f5; border-radius:12px; background:rgba(255,255,255,.9); text-align:center; }
        .prospect-admin-batch-metric span,.prospect-admin-batch-metric strong { display:block; }
        .prospect-admin-batch-metric span { color:#78869d; font-size:11px; }
        .prospect-admin-batch-metric strong { margin-top:5px; color:#182945; font-size:18px; }
        .prospect-admin-batch-metric.is-positive strong { color:#198754; }
        .prospect-admin-batch-metric.is-warning strong { color:#c46a0a; }
        .prospect-admin-batch-progress { display:flex; align-items:center; gap:10px; margin-top:13px; color:#65748d; font-size:12px; }
        .prospect-admin-batch-progress-bar { flex:1; height:7px; overflow:hidden; border-radius:999px; background:#e7edf8; }
        .prospect-admin-batch-progress-bar i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#4f83f7,#42c08b); }
        .prospect-section-count { display:inline-grid; place-items:center; min-width:24px; height:22px; margin-left:5px; border-radius:999px; background:#edf4ff; color:#3569cf; font-size:12px; vertical-align:middle; }
        .prospect-admin-history { margin-top:14px; padding-top:13px; border-top:1px solid #e2e9f4; }
        .prospect-admin-history > summary { display:flex; align-items:center; gap:8px; width:max-content; color:#5f708b; font-size:13px; font-weight:750; cursor:pointer; list-style:none; }
        .prospect-admin-history > summary::-webkit-details-marker { display:none; }
        .prospect-admin-history > summary::before { content:"›"; font-size:18px; transition:transform .16s ease; }
        .prospect-admin-history[open] > summary::before { transform:rotate(90deg); }
        .prospect-admin-history > summary span { display:inline-grid; place-items:center; min-width:23px; height:21px; border-radius:999px; background:#edf0f5; color:#68758a; font-size:11px; }
        .prospect-admin-history > .prospect-admin-batch-list { margin-top:11px; }
        .prospect-admin-contact-filters { display:grid; grid-template-columns:1fr .85fr 1.35fr auto auto; gap:9px; align-items:center; margin-bottom:10px; padding:12px; border:1px solid #dbe5f6; border-radius:14px; background:#f7faff; }
        #prospect-admin-contact-section { scroll-margin-top:18px; }
        .prospect-admin-contact-filters select,.prospect-admin-contact-filters input { width:100%; min-height:40px; }
        .prospect-admin-contact-summary { margin:8px 2px 10px; color:#697992; font-size:12px; }
        .prospect-admin-contact-summary strong { color:#2f6df6; }
        .prospect-admin-contact-table { min-width:940px; }
        .prospect-admin-contact-table th { background:#f4f7fc; color:#52627c; }
        .prospect-admin-contact-table td { vertical-align:top; line-height:1.45; }
        .prospect-admin-contact-table td small { max-width:280px; }
        .prospect-admin-contact-remark { display:-webkit-box !important; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; white-space:normal; }
        .prospect-admin-status { display:inline-flex; align-items:center; min-height:27px; padding:0 9px; border-radius:999px; background:#edf4ff; color:#2e65cc; font-size:12px; font-weight:700; white-space:nowrap; }
        .prospect-admin-status.status-nurturing { background:#eaf9f1; color:#168052; }
        .prospect-admin-status.status-converted { background:#f0ecff; color:#6744c5; }
        .prospect-admin-status.status-closed { background:#f0f2f5; color:#677386; }
        .prospect-admin-status.status-duplicate_blocked,.prospect-admin-status.status-invalid { background:#fff0f0; color:#b34444; }
        .prospect-admin-contact-pagination { display:flex; align-items:center; justify-content:flex-end; gap:12px; margin-top:12px; color:#697992; font-size:13px; }
        .prospect-admin-contact-pagination .btn { min-height:35px; padding:0 14px; }
        .prospect-modal-hint { margin-top:10px; padding:9px 11px; border-radius:10px; background:#f4f7fc; color:#64748b; font-size:12px; line-height:1.5; }
        .prospect-modal-hint.is-positive { background:#edfbf4; color:#16744d; }
        .prospect-modal-hint.is-closing { background:#fff6ec; color:#9a570d; }
        #prospect-pool-content > .card { margin-bottom:14px; }
        #prospect-pool-content table td small { display:block; margin-top:4px; color:var(--text-muted); }

        @media (max-width: 1100px) {
            .prospect-upload-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
            .prospect-contact-grid.compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
            .prospect-admin-batch-metrics { grid-template-columns:repeat(4,minmax(0,1fr)); }
            .prospect-admin-contact-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
            .prospect-admin-contact-filters input { grid-column:1 / -1; }
        }

        @media (max-width: 900px) {
            .customer-protection-summary,
            .customer-protection-layout { grid-template-columns: 1fr; }
            .customer-protection-details { grid-template-columns: 1fr; }
            .prospect-summary-grid,.prospect-contact-grid,.prospect-contact-grid.compact { grid-template-columns:1fr; }
            .prospect-batch-row { align-items:flex-start; flex-direction:column; }
            .prospect-admin-batch-head { flex-direction:column; }
            .prospect-admin-batch-summary { grid-template-columns:1fr; padding-right:40px; }
            .prospect-admin-batch-glance { grid-column:auto; grid-row:auto; }
            .prospect-claim-setting { justify-content:space-between; }
            .prospect-admin-batch-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
            .prospect-contact-actions { flex-direction:column; }
            .prospect-contact-actions .prospect-action { width:100%; }
            .prospect-admin-contact-filters { grid-template-columns:1fr; }
            .prospect-admin-contact-filters input { grid-column:auto; }
        }

        .role-workbench-intro {
            display: none;
            align-items: center;
            justify-content: space-between;
            gap: 24px;
            padding: 18px 20px;
            margin-bottom: 16px;
            border: 1px solid var(--border);
            border-radius: 8px;
            background: rgba(255, 255, 255, 0.72);
        }
        .role-workbench-intro-copy { min-width: 0; }
        .role-workbench-intro-copy strong {
            display: block;
            margin-bottom: 5px;
            color: var(--text-main);
            font-size: 18px;
        }
        .role-workbench-intro-copy span {
            color: var(--text-muted);
            font-size: 13px;
            line-height: 1.65;
        }
        .role-workbench-actions {
            display: flex;
            flex: 0 0 auto;
            align-items: center;
            gap: 8px;
        }
        .role-kpi-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 12px;
        }
        .role-kpi-item {
            min-width: 0;
            padding: 15px 16px;
            border: 1px solid var(--border);
            border-radius: 8px;
            background: rgba(255, 255, 255, 0.66);
        }
        .role-kpi-item label,
        .role-kpi-item span {
            display: block;
            color: var(--text-muted);
            font-size: 12px;
        }
        .role-kpi-item strong {
            display: block;
            margin: 5px 0 3px;
            color: var(--text-main);
            font-size: 25px;
            line-height: 1.15;
        }
        .role-kpi-item.is-alert strong { color: var(--danger); }
        .role-kpi-item.is-success strong { color: var(--success); }
        .city-manager-workbench,
        .delivery-workbench {
            display: none;
            gap: 14px;
            margin-bottom: 16px;
        }
        .city-manager-main-grid {
            display: grid;
            grid-template-columns: minmax(0, 1.55fr) minmax(320px, 0.85fr);
            gap: 14px;
        }
        .role-panel {
            min-width: 0;
            padding: 18px;
            border: 1px solid var(--border);
            border-radius: 8px;
            background: rgba(255, 255, 255, 0.72);
        }
        .role-panel-head {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 16px;
            margin-bottom: 13px;
        }
        .role-panel-head h3 { margin: 0 0 4px; font-size: 17px; }
        .role-panel-head p { margin: 0; color: var(--text-muted); font-size: 12px; line-height: 1.55; }
        .role-team-list,
        .role-todo-list { display: grid; gap: 8px; }
        .role-team-row {
            display: grid;
            grid-template-columns: minmax(120px, 1.15fr) repeat(5, minmax(58px, 0.62fr));
            align-items: center;
            gap: 8px;
            min-height: 58px;
            padding: 9px 11px;
            border: 1px solid var(--border);
            border-radius: 8px;
            background: rgba(249, 251, 255, 0.78);
        }
        .role-team-row > div { min-width: 0; text-align: center; }
        .role-team-row > div:first-child { text-align: left; }
        .role-team-row strong,
        .role-team-row b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
        .role-team-row span { color: var(--text-muted); font-size: 11px; }
        .role-todo-item {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            align-items: center;
            gap: 12px;
            min-height: 58px;
            padding: 10px 12px;
            border: 1px solid var(--border);
            border-radius: 8px;
            background: rgba(249, 251, 255, 0.78);
        }
        .role-todo-item strong { display: block; margin-bottom: 3px; }
        .role-todo-item span { color: var(--text-muted); font-size: 11px; }
        .role-todo-item b { color: var(--primary); font-size: 20px; }
        .delivery-workbench .role-workbench-intro { display: flex; margin: 0; }
        .delivery-workbench .role-kpi-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }

        body[data-role="boss"] #admin-week-panel,
        body[data-role="boss"] #dashboard-stats-grid,
        body[data-role="boss"] #performance-entry-guide,
        body[data-role="boss"] #admin-performance-progress-card { display: none !important; }
        body[data-role="boss"] #boss-command-center { display: grid; }
        body[data-role="boss"] #boss-command-center .boss-summary-grid {
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }
        body[data-role="boss"] #boss-command-center .boss-command-column-main > .boss-command-card:first-child .metric-table-head h3 {
            flex: 0 0 auto;
            white-space: nowrap;
        }
        body[data-role="boss"] #performance-table-grid .metric-table-card {
            min-height: 0;
            max-height: none;
        }
        body[data-role="boss"] #performance-table-grid .metric-table-wrap {
            flex: 0 1 auto;
            max-height: 360px;
        }
        body[data-role="boss"] #performance-table-grid .metric-table {
            min-width: 0;
            table-layout: fixed;
        }
        body[data-role="boss"] #performance-table-grid .metric-table th,
        body[data-role="boss"] #performance-table-grid .metric-table td {
            overflow: hidden;
            padding: 0.58rem 0.34rem;
            font-size: 12px;
            text-overflow: ellipsis;
        }
        @media (max-width: 1400px) {
            body[data-role="boss"] .boss-command-grid,
            body[data-role="boss"] .sales-management-layout {
                grid-template-columns: minmax(0, 1fr);
            }
        }
        body[data-role="beijing_manager"] #admin-week-panel,
        body[data-role="shanghai_manager"] #admin-week-panel,
        body[data-role="beijing_manager"] #dashboard-stats-grid,
        body[data-role="shanghai_manager"] #dashboard-stats-grid,
        body[data-role="beijing_manager"] #performance-entry-guide,
        body[data-role="shanghai_manager"] #performance-entry-guide,
        body[data-role="beijing_manager"] #performance-table-grid,
        body[data-role="shanghai_manager"] #performance-table-grid,
        body[data-role="beijing_manager"] #view-dashboard > .chart-grid,
        body[data-role="shanghai_manager"] #view-dashboard > .chart-grid { display: none !important; }
        body[data-role="beijing_manager"] #city-manager-workbench,
        body[data-role="shanghai_manager"] #city-manager-workbench { display: grid; }
        body[data-role="delivery"] #admin-week-panel,
        body[data-role="delivery"] #dashboard-stats-grid,
        body[data-role="delivery"] #dashboard-yesterday-spend-card,
        body[data-role="delivery"] #staff-progress-detail-card,
        body[data-role="delivery"] #view-dashboard > .chart-grid { display: none !important; }
        body[data-role="delivery"] #delivery-workbench { display: grid; }
        body[data-role="delivery"] #delivery-dashboard-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        body[data-role="sales"] #view-sales-feedback > .header { align-items: flex-start; }
        body[data-role="sales"] #view-sales-feedback .sales-feedback-write-only,
        body[data-role="sales"] #view-sales-feedback #sales-feedback-count,
        body[data-role="sales"] #view-sales-feedback .header-actions > .btn[onclick*="downloadSalesFeedbackPendingCsv"] { display: none !important; }
        body[data-role="sales"] #view-sales-feedback .lead-command-panel { margin-top: 12px; }
        body[data-role="sales"] #sales-feedback-summary { margin-bottom: 14px; }
        body[data-role="sales"] #sales-feedback-school-summary { display: none !important; }
        body[data-role="sales"] #view-sales-feedback .lead-command-panel {
            padding: 12px;
            border-radius: 12px;
        }
        .sales-today-command {
            padding: 18px;
            border: 1px solid rgba(168, 191, 229, 0.72);
            border-radius: 14px;
            background: rgba(255, 255, 255, 0.82);
            box-shadow: 0 10px 28px rgba(43, 75, 128, 0.06);
        }
        .sales-today-command-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 22px;
            margin-bottom: 14px;
        }
        .sales-today-command-head > div { min-width: 0; }
        .sales-today-eyebrow {
            display: block;
            margin-bottom: 4px;
            color: var(--primary);
            font-size: 12px;
            font-weight: 750;
        }
        .sales-today-command-head strong {
            display: block;
            color: var(--text-main);
            font-size: 20px;
            line-height: 1.35;
        }
        .sales-today-command-head p {
            margin: 5px 0 0;
            color: var(--text-muted);
            font-size: 12px;
        }
        .sales-today-total {
            display: grid;
            grid-template-columns: auto auto;
            align-items: center;
            gap: 10px;
            min-width: 138px;
            min-height: 54px;
            padding: 10px 16px;
            border: 1px solid rgba(47, 108, 255, 0.3);
            border-radius: 10px;
            color: #1e50d8;
            background: #edf4ff;
            cursor: pointer;
        }
        .sales-today-total span { font-size: 12px; font-weight: 700; }
        .sales-today-total b { font-size: 24px; }
        .sales-today-total.is-active,
        .sales-today-priority.is-active {
            border-color: rgba(47, 108, 255, 0.62);
            box-shadow: inset 0 0 0 1px rgba(47, 108, 255, 0.12);
            background: #edf4ff;
        }
        .sales-today-priority-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
        .sales-today-priority {
            display: grid;
            grid-template-columns: 30px minmax(0, 1fr) auto;
            grid-template-areas: "order copy value" "order copy arrow";
            align-items: center;
            gap: 2px 10px;
            min-width: 0;
            min-height: 82px;
            padding: 12px;
            border: 1px solid var(--border);
            border-left-width: 4px;
            border-radius: 10px;
            text-align: left;
            background: rgba(249, 251, 255, 0.92);
            cursor: pointer;
            transition: background 0.16s ease, border-color 0.16s ease, transform 0.16s ease;
        }
        .sales-today-priority:hover,
        .sales-today-priority:focus-visible { background: #fff; transform: translateY(-1px); outline: none; }
        .sales-today-priority.tone-danger { border-left-color: #e96d6d; }
        .sales-today-priority.tone-warning { border-left-color: #e8a63d; }
        .sales-today-priority.tone-info { border-left-color: #4f82f5; }
        .sales-today-priority.tone-neutral { border-left-color: #899bb7; }
        .sales-today-order {
            grid-area: order;
            display: inline-grid;
            place-items: center;
            width: 28px;
            height: 28px;
            border-radius: 50%;
            color: #36527b;
            font-size: 12px;
            font-weight: 800;
            background: #eaf0fa;
        }
        .sales-today-priority-copy { grid-area: copy; min-width: 0; }
        .sales-today-priority-copy strong { display: block; margin-bottom: 4px; color: var(--text-main); font-size: 13px; }
        .sales-today-priority-copy small { display: block; color: var(--text-muted); font-size: 10px; line-height: 1.45; }
        .sales-today-priority > b { grid-area: value; color: var(--text-main); font-size: 22px; line-height: 1; text-align: right; }
        .sales-today-prospect-hint {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            margin-top: 10px;
            padding: 10px 12px;
            border: 1px solid #cfe0ff;
            border-radius: 12px;
            background: #f6f9ff;
            color: var(--text-muted);
            font-size: 12px;
        }
        .sales-today-prospect-hint button {
            flex: none;
            border: 0;
            border-radius: 999px;
            padding: 7px 12px;
            background: #2f72f5;
            color: #fff;
            cursor: pointer;
            font-weight: 700;
        }
        .sales-today-arrow { grid-area: arrow; color: var(--primary); font-size: 10px; font-weight: 700; text-align: right; }
        body[data-role="sales"] .sales-feedback-filter-grid {
            grid-template-columns: minmax(240px, 1.5fr) repeat(3, minmax(150px, 1fr));
        }
        body[data-role="sales"] #sales-feedback-search { grid-column: span 2; }
        body[data-role="sales"] #sales-feedback-school-filter { grid-column: span 2; }
        .sales-role-subtitle { display: none; margin-top: 5px; color: var(--text-muted); font-size: 13px; font-weight: 400; }
        body[data-role="sales"] .sales-role-subtitle { display: block; }

        @media (max-width: 1180px) {
            .city-manager-main-grid { grid-template-columns: 1fr; }
            .role-kpi-grid,
            .delivery-workbench .role-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
            .sales-today-priority-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        }
        @media (max-width: 760px) {
            .role-workbench-intro { align-items: flex-start; flex-direction: column; }
            .role-workbench-actions { width: 100%; }
            .role-workbench-actions .btn { flex: 1 1 0; }
            .role-kpi-grid,
            .delivery-workbench .role-kpi-grid { grid-template-columns: 1fr 1fr; }
            .role-team-row { grid-template-columns: minmax(0, 1fr) repeat(2, minmax(54px, 0.58fr)); }
            .role-team-row > div:nth-child(4),
            .role-team-row > div:nth-child(5),
            .role-team-row > div:nth-child(6) { display: none; }
            .sales-today-command-head { align-items: stretch; flex-direction: column; gap: 12px; }
            .sales-today-total { width: 100%; }
            .sales-today-priority-list { grid-template-columns: 1fr; }
            .sales-today-prospect-hint { align-items: stretch; flex-direction: column; }
            .sales-today-prospect-hint button { width: 100%; }
            body[data-role="sales"] .sales-feedback-filter-grid { grid-template-columns: minmax(0, 1fr); }
            body[data-role="sales"] #sales-feedback-search,
            body[data-role="sales"] #sales-feedback-school-filter { grid-column: auto; min-width: 0; }
            body[data-role="sales"] #view-sales-feedback .lead-command-panel { min-width: 0; overflow: hidden; }
        }
