:root{--app-bg: #ecf1f6;--app-bg-deep: #dde6ef;--surface-1: rgba(255, 255, 255, .86);--surface-2: rgba(248, 250, 252, .88);--surface-3: rgba(255, 255, 255, .68);--panel-border: rgba(15, 23, 42, .08);--panel-border-strong: rgba(15, 23, 42, .12);--text-1: #162033;--text-2: rgba(22, 32, 51, .68);--text-3: rgba(22, 32, 51, .48);--line-soft: rgba(148, 163, 184, .16);--shadow-soft: 0 24px 60px rgba(15, 23, 42, .08);--shadow-panel: 0 20px 45px rgba(15, 23, 42, .07);--shadow-inset: inset 0 1px 0 rgba(255, 255, 255, .72);--accent-blue: #225cff;--accent-blue-soft: rgba(34, 92, 255, .12);--accent-emerald: #0f8b6d;--accent-emerald-soft: rgba(15, 139, 109, .12);--accent-amber: #dd8a12;--accent-amber-soft: rgba(221, 138, 18, .14);--accent-violet: #6a5cff;--accent-violet-soft: rgba(106, 92, 255, .12)}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;font-family:PingFang SC,Hiragino Sans GB,Noto Sans SC,Microsoft YaHei,Helvetica Neue,Arial,sans-serif}body{margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--app-bg);color:var(--text-1)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent;border:none}::-webkit-scrollbar-thumb{background:transparent;border-radius:3px;border:none;transition:background .2s ease}*:hover::-webkit-scrollbar-thumb{background:#00000026}*:hover::-webkit-scrollbar-thumb:hover{background:#0000004d}*{scrollbar-width:thin;scrollbar-color:transparent transparent}*:hover{scrollbar-color:rgba(0,0,0,.15) transparent}.app-layout{min-height:100vh;display:flex}.sidebar{position:fixed;left:0;top:0;bottom:0;z-index:100;display:flex;flex-direction:column;background:#fffffff5;border-right:1px solid rgba(15,23,42,.06);box-shadow:16px 0 40px #0f172a0a;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:width .25s cubic-bezier(.4,0,.2,1);overflow:hidden}.sidebar-header{display:flex;align-items:center;justify-content:space-between;height:72px;padding:0 18px;flex-shrink:0;border-bottom:1px solid rgba(15,23,42,.05)}.sidebar--collapsed .sidebar-header{justify-content:center;padding:0;border-bottom:none}.sidebar-logo{display:flex;align-items:center;gap:10px;min-width:0;overflow:hidden}.sidebar-logo__image{width:28px;height:28px;border-radius:8px;object-fit:cover;flex-shrink:0}.sidebar-logo__text{font-size:15px;font-weight:800;color:#172032;white-space:nowrap;letter-spacing:-.04em}.sidebar-toggle{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;border-radius:10px;background:#ffffffb8;color:#74839d;box-shadow:inset 0 0 0 1px #0f172a0f;cursor:pointer;transition:all .15s ease;flex-shrink:0;font-size:14px}.sidebar-toggle:hover{background:#0f172a0d;color:#425066}.sidebar--collapsed .sidebar-toggle{width:36px;height:36px;font-size:16px;color:#64748b}.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:12px 10px}.sidebar-menu.ant-menu{border-inline-end:none!important;background:transparent}.sidebar-menu.ant-menu .ant-menu-item{height:40px;line-height:40px;margin:4px 0;border-radius:12px;color:#5e6d86;font-size:13.5px;font-weight:600;transition:all .15s ease}.sidebar-menu.ant-menu .ant-menu-item .ant-menu-item-icon,.sidebar-menu.ant-menu .ant-menu-item .anticon{font-size:16px;color:#8b98ad;transition:color .15s ease}.sidebar-menu.ant-menu .ant-menu-item:hover{background:#ffffffd1;color:#243145}.sidebar-menu.ant-menu .ant-menu-item:hover .ant-menu-item-icon,.sidebar-menu.ant-menu .ant-menu-item:hover .anticon{color:#2563eb}.sidebar-menu.ant-menu .ant-menu-item-selected{background:#0f172a0d;color:#162033;font-weight:600;box-shadow:inset 0 0 0 1px #0f172a0d}.sidebar-menu.ant-menu .ant-menu-item-selected .ant-menu-item-icon,.sidebar-menu.ant-menu .ant-menu-item-selected .anticon{color:#162033}.sidebar-menu.ant-menu .ant-menu-item-selected:after{display:none}.sidebar-menu.ant-menu .ant-menu-item-divider{margin:8px 12px!important;background-color:#0000000d!important}.sidebar--collapsed .sidebar-nav{padding:8px 4px;display:flex;flex-direction:column;align-items:center}.sidebar--collapsed .sidebar-menu.ant-menu .ant-menu-item{display:flex;align-items:center;justify-content:center;padding-inline:0!important;margin:2px auto;width:42px;height:42px;border-radius:10px}.sidebar--collapsed .sidebar-menu.ant-menu .ant-menu-item .ant-menu-item-icon,.sidebar--collapsed .sidebar-menu.ant-menu .ant-menu-item .anticon{font-size:18px;margin:0}.sidebar--collapsed .sidebar-menu.ant-menu .ant-menu-item .ant-menu-title-content{display:none;width:0;margin:0;padding:0;opacity:0}.sidebar-footer{flex-shrink:0;padding:14px 12px 16px;border-top:1px solid rgba(15,23,42,.05)}.sidebar-user{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;cursor:pointer;transition:all .15s ease;min-width:0;background:#ffffff94;box-shadow:inset 0 0 0 1px #0f172a0a}.sidebar-user:hover{background:#ffffffe0}.sidebar-user__avatar{flex-shrink:0;background:linear-gradient(135deg,#4b5563,#1f2937)!important}.sidebar-user__info{display:flex;flex-direction:column;min-width:0;line-height:1}.sidebar-user__name{font-size:13.5px;font-weight:700;color:#182132;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user__role{font-size:11.5px;color:#8190a7;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-modal{display:flex;flex-direction:column;gap:18px}.profile-modal__summary{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-radius:16px;border:1px solid var(--panel-border);background:linear-gradient(135deg,#225cff14,#ffffffeb)}.profile-modal__name{margin-top:6px;font-size:24px;font-weight:800;letter-spacing:-.04em;color:var(--text-1)}.profile-modal__role{margin-top:4px;font-size:13px;color:var(--text-2)}.profile-modal__descriptions.ant-descriptions{padding:0 4px}.profile-modal__divider{height:1px;background:var(--line-soft)}.profile-modal__section-title.ant-typography{margin:0}.profile-modal__actions{display:flex;justify-content:flex-end;gap:12px}.profile-modal__ghost-btn,.profile-modal__primary-btn{min-width:108px;height:40px;border-radius:12px;font-weight:700;font-size:14px;cursor:pointer;transition:all .15s ease}.profile-modal__ghost-btn{border:1px solid var(--panel-border-strong);background:#ffffffe0;color:var(--text-1)}.profile-modal__ghost-btn:hover{border-color:#225cff38;color:var(--accent-blue)}.profile-modal__primary-btn{border:none;background:linear-gradient(135deg,#225cff,#3d7bff);color:#fff;box-shadow:0 14px 30px #225cff3d}.profile-modal__primary-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 18px 34px #225cff47}.profile-modal__primary-btn:disabled,.profile-modal__ghost-btn:disabled{opacity:.62;cursor:not-allowed}.sidebar--collapsed .sidebar-footer{display:flex;justify-content:center;padding:12px 4px}.sidebar--collapsed .sidebar-user{justify-content:center;padding:8px}.main-content{flex:1;height:100vh;overflow:hidden;transition:margin-left .25s cubic-bezier(.4,0,.2,1);background:transparent}.page-scrollable{overflow-y:auto;flex:1;min-height:0;padding-bottom:8px}.content-wrapper{padding:22px 24px 24px;height:100vh;display:flex;flex-direction:column;overflow:hidden}.content-wrapper--dashboard{padding-bottom:0}.content-shell{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;width:100%;max-width:1680px;margin:0 auto}.content-wrapper>div,.content-shell>div{flex:1;display:flex;flex-direction:column;min-height:0;min-width:0}.content-wrapper .ant-card{flex:1;display:flex;flex-direction:column;min-height:0;min-width:0}.content-wrapper .ant-card>.ant-card-body{flex:1;display:flex;flex-direction:column;min-height:0;min-width:0;padding:16px}.content-wrapper .ant-tabs{flex:1;display:flex;flex-direction:column;min-height:0;min-width:0}.content-wrapper .ant-tabs>.ant-tabs-content-holder{flex:1;min-height:0;min-width:0}.content-wrapper .ant-tabs>.ant-tabs-content-holder>.ant-tabs-content{height:100%}.content-wrapper .ant-tabs>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane-active{height:100%;display:flex;flex-direction:column;min-height:0;min-width:0}.content-wrapper .ant-tabs-tabpane-active>div{flex:1;display:flex;flex-direction:column;min-height:0;min-width:0}.content-wrapper .ant-table-wrapper{flex:1;min-height:0;min-width:0}.content-wrapper .ant-table-wrapper .ant-spin-nested-loading,.content-wrapper .ant-table-wrapper .ant-spin-container{height:100%;display:flex;flex-direction:column}.content-wrapper .ant-table-wrapper .ant-table{flex:1;min-height:0}.content-wrapper .ant-table-wrapper .ant-table .ant-table-container{height:100%;display:flex;flex-direction:column}.content-wrapper .ant-table-wrapper .ant-table .ant-table-header{flex-shrink:0}.content-wrapper .ant-table-wrapper .ant-table .ant-table-body{flex:1;min-height:0;overflow:auto!important}.admin-management-table .ant-table-content,.admin-management-table .ant-table-body{scrollbar-width:thin;scrollbar-color:rgba(15,23,42,.24) transparent}.admin-management-page{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.admin-management-page>.ant-card{flex:1;min-height:0}.admin-management-page>.ant-card>.ant-card-body{display:flex;flex-direction:column;gap:16px;flex:1;min-height:0}.admin-management-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;flex-shrink:0}.admin-management-table-area{flex:1;min-height:0;overflow:hidden}.admin-management-page .admin-management-table.ant-table-wrapper,.admin-management-page .admin-management-table .ant-spin-nested-loading,.admin-management-page .admin-management-table .ant-spin-container,.admin-management-page .admin-management-table{display:flex;flex-direction:column;flex:1;min-height:0}.admin-management-page .admin-management-table .ant-table,.admin-management-page .admin-management-table .ant-table-container{height:auto}.admin-management-page .admin-management-table .ant-table-pagination{flex-shrink:0}.admin-management-table .ant-table-content::-webkit-scrollbar,.admin-management-table .ant-table-body::-webkit-scrollbar{width:8px;height:8px}.admin-management-table .ant-table-content::-webkit-scrollbar-thumb,.admin-management-table .ant-table-body::-webkit-scrollbar-thumb{background:#0f172a3d;border-radius:999px}.admin-management-table .ant-table-content::-webkit-scrollbar-track,.admin-management-table .ant-table-body::-webkit-scrollbar-track{background:transparent}.payment-records-page{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.payment-records-page>.ant-card{flex:1;min-height:0}.payment-records-page>.ant-card>.ant-card-body{display:flex;flex-direction:column;gap:16px;flex:1;min-height:0}.payment-records-table-area{flex:1;min-height:0;overflow:hidden}.payment-records-page .payment-records-table.ant-table-wrapper,.payment-records-page .payment-records-table .ant-spin-nested-loading,.payment-records-page .payment-records-table .ant-spin-container,.payment-records-page .payment-records-table{display:flex;flex-direction:column;flex:1;min-height:0}.payment-records-page .payment-records-table .ant-table,.payment-records-page .payment-records-table .ant-table-container{height:auto}.payment-records-page .payment-records-table .ant-table-pagination{flex-shrink:0}.payment-records-table .ant-table-content,.payment-records-table .ant-table-body{scrollbar-width:thin;scrollbar-color:rgba(15,23,42,.24) transparent}.payment-records-table .ant-table-content::-webkit-scrollbar,.payment-records-table .ant-table-body::-webkit-scrollbar{width:8px;height:8px}.payment-records-table .ant-table-content::-webkit-scrollbar-thumb,.payment-records-table .ant-table-body::-webkit-scrollbar-thumb{background:#0f172a3d;border-radius:999px}.payment-records-table .ant-table-content::-webkit-scrollbar-track,.payment-records-table .ant-table-body::-webkit-scrollbar-track{background:transparent}.payment-json-block{margin:0;padding:12px 14px;border-radius:12px;background:#0f172a0a;border:1px solid rgba(15,23,42,.08);font-size:12px;line-height:1.6;overflow:auto;white-space:pre-wrap;word-break:break-word}.industry-taxonomy-page{display:grid;gap:16px;align-content:start}.content-wrapper .industry-taxonomy-page,.content-shell .industry-taxonomy-page{min-width:0}.content-wrapper .industry-taxonomy-page>.ant-card{flex:0 0 auto;min-height:auto}.content-wrapper .industry-taxonomy-page>.ant-card>.ant-card-body{display:block;flex:none;min-height:auto}.content-wrapper .industry-taxonomy-page .ant-table-wrapper,.content-wrapper .industry-taxonomy-page .ant-table-wrapper .ant-spin-nested-loading,.content-wrapper .industry-taxonomy-page .ant-table-wrapper .ant-spin-container,.content-wrapper .industry-taxonomy-page .ant-table-wrapper .ant-table,.content-wrapper .industry-taxonomy-page .ant-table-wrapper .ant-table-container,.content-wrapper .industry-taxonomy-page .ant-tabs,.content-wrapper .industry-taxonomy-page .ant-tabs>.ant-tabs-content-holder,.content-wrapper .industry-taxonomy-page .ant-tabs>.ant-tabs-content-holder>.ant-tabs-content,.content-wrapper .industry-taxonomy-page .ant-tabs>.ant-tabs-content-holder>.ant-tabs-content>.ant-tabs-tabpane-active{flex:0 0 auto;height:auto;min-height:auto}.content-wrapper .industry-taxonomy-page .ant-table-wrapper .ant-table .ant-table-container{display:block}.content-wrapper .industry-taxonomy-page .ant-table-wrapper .ant-table .ant-table-body{overflow:auto}.admin-management-table__username{display:block;width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.admin-management-permission-drawer .ant-drawer-body{padding:20px 24px 16px;background:radial-gradient(circle at top right,rgba(34,92,255,.08),transparent 30%),linear-gradient(180deg,#f8fafcf0,#fffffffa)}.admin-management-permission-drawer .ant-drawer-footer{padding:16px 24px;border-top:1px solid rgba(15,23,42,.08);background:#fffffff5;box-shadow:0 -12px 32px #0f172a0a}.admin-management-permission-panel{display:flex;flex-direction:column;gap:16px}.admin-management-permission-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.admin-management-permission-toolbar__search{flex:1;min-width:260px;max-width:380px}.admin-management-permission-toolbar__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-left:auto}.admin-management-permission-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border:1px solid rgba(15,23,42,.08);border-radius:16px;background:#ffffffb8;box-shadow:inset 0 1px #ffffffb8}.admin-management-permission-list{display:flex;flex-direction:column;gap:16px}.admin-management-permission-module{overflow:hidden;border:1px solid rgba(15,23,42,.08);border-radius:20px;background:#ffffffdb;box-shadow:0 18px 40px #0f172a0d}.admin-management-permission-module .ant-card-head{border-bottom:1px solid rgba(15,23,42,.06);padding:0 18px;min-height:62px}.admin-management-permission-module .ant-card-head-title{padding:14px 0}.admin-management-permission-module .ant-card-body{padding:18px}.admin-management-permission-module__header,.admin-management-permission-module__title{display:flex;align-items:center;gap:12px}.admin-management-permission-module__title-text{display:flex;flex-direction:column;gap:2px}.admin-management-permission-module__title-text>span{font-size:15px;font-weight:700;color:var(--text-1)}.admin-management-permission-section{display:flex;flex-direction:column;gap:16px}.admin-management-permission-section__block{display:flex;flex-direction:column;gap:12px}.admin-management-permission-section__title{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#56657e}.admin-management-permission-section__title--sub{font-size:10px;letter-spacing:.1em}.admin-management-permission-page-list,.admin-management-permission-row-list,.admin-management-permission-page-card__action-list{display:flex;flex-direction:column;gap:10px}.admin-management-permission-page-card{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:linear-gradient(180deg,#fffffff5,#f8fafce6);box-shadow:inset 0 1px #ffffffb8}.admin-management-permission-page-card__header{display:flex;align-items:flex-start;gap:12px}.admin-management-permission-page-card__content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.admin-management-permission-page-card__title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:14px;font-weight:700;color:var(--text-1)}.admin-management-permission-page-card__description,.admin-management-permission-row__description{font-size:12px;line-height:1.55}.admin-management-permission-page-card__code,.admin-management-permission-row__code{font-family:SFMono-Regular,SFMono,Cascadia Code,JetBrains Mono,Consolas,Liberation Mono,Menlo,monospace;font-size:11px;color:#1620337a;overflow-wrap:anywhere}.admin-management-permission-page-card__actions{display:flex;flex-direction:column;gap:10px}.admin-management-permission-row{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid rgba(15,23,42,.08);border-radius:16px;background:#ffffffe6}.admin-management-permission-row--nested{margin-left:28px;background:#f8fafcf5}.admin-management-permission-row__content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.admin-management-permission-row__title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-1)}.admin-management-permission-empty{padding:28px 16px;border:1px dashed rgba(15,23,42,.12);border-radius:18px;background:#ffffffa8}.admin-management-permission-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}@media (max-width: 768px){.admin-management-permission-drawer .ant-drawer-body,.admin-management-permission-drawer .ant-drawer-footer{padding-left:16px;padding-right:16px}.admin-management-permission-toolbar__search{min-width:100%;max-width:none}.admin-management-permission-toolbar__actions,.admin-management-permission-summary,.admin-management-permission-footer,.admin-management-permission-page-card__header{width:100%}.admin-management-permission-page-card__header,.admin-management-permission-summary,.admin-management-permission-footer{flex-direction:column;align-items:flex-start}.admin-management-permission-row--nested{margin-left:12px}}.content-shell .ant-picker{border-radius:14px;border-color:#0f172a14;box-shadow:inset 0 1px #ffffffb8}.content-wrapper .ant-tabs>.ant-tabs-nav:before{border-bottom:none!important}.ant-menu-inline-collapsed-tooltip .ant-tooltip-inner{font-size:12px;border-radius:6px}.ant-dropdown .ant-dropdown-menu{border-radius:10px;padding:4px;box-shadow:0 10px 40px #00000014,0 2px 8px #0000000a}.ant-dropdown .ant-dropdown-menu-item{border-radius:6px;font-size:13px;padding:6px 12px}.dashboard-page{display:flex;flex-direction:column;gap:14px}.dashboard-page>.ant-spin-nested-loading,.dashboard-page>.ant-spin-nested-loading .ant-spin-container{display:flex;flex-direction:column;gap:14px}.dashboard-panel{position:relative;overflow:hidden;border:1px solid var(--panel-border);background:linear-gradient(180deg,var(--surface-1) 0%,rgba(255,255,255,.72) 100%);box-shadow:var(--shadow-panel),var(--shadow-inset);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.content-wrapper--dashboard .dashboard-page.page-scrollable{padding-bottom:0}.dashboard-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px}.dashboard-kicker,.dashboard-panel__eyebrow{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#425066;background:#0f172a0d}.dashboard-toolbar__left,.dashboard-toolbar__right{display:flex;align-items:center;gap:12px}.dashboard-toolbar__left{min-width:0}.dashboard-toolbar__summary{font-size:12px;color:var(--text-3);white-space:nowrap}.dashboard-toolbar__right{justify-content:flex-end;margin-left:auto}.dashboard-filter-caption,.dashboard-panel__subtle,.dashboard-mini-stat__note,.dashboard-metric__note,.dashboard-flow__rate,.dashboard-ranking-item__meta,.dashboard-pipeline__body p{color:var(--text-3)}.dashboard-filter-caption{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.dashboard-range-picker{width:280px;min-width:260px;background:#ffffffd1}.dashboard-mini-stat__label,.dashboard-metric__label{display:block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.dashboard-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:start}.dashboard-panel{border-radius:18px;padding:18px}.dashboard-panel--spotlight{grid-column:span 2;grid-row:span 2;min-height:292px}.dashboard-panel__header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.dashboard-panel__title{margin-top:12px;font-size:22px;line-height:1.1;letter-spacing:-.04em;color:#101828}.dashboard-panel__badge{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:#0f172a0d;color:#425066;font-size:13px;font-weight:700}.dashboard-spotlight{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr);gap:12px;margin-top:16px}.dashboard-spotlight__primary{display:flex;flex-direction:column;padding:18px;border-radius:16px;background:linear-gradient(180deg,#fffffff0,#f5f7faeb);border:1px solid rgba(15,23,42,.06);box-shadow:inset 0 1px #ffffffd6}.dashboard-spotlight__label{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.dashboard-spotlight__value{display:block;margin-top:18px;font-size:clamp(42px,4vw,58px);line-height:.95;letter-spacing:-.06em;color:#101828}.dashboard-spotlight__description{margin-top:18px;max-width:420px;font-size:14px;line-height:1.7;color:var(--text-2)}.dashboard-redemption{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:16px;margin-top:auto;padding-top:18px}.dashboard-redemption__chart{width:112px;height:112px;position:relative}.dashboard-redemption__center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;z-index:1}.dashboard-redemption__center-value{font-size:22px;line-height:1;font-weight:800;color:#101828}.dashboard-redemption__center-label{margin-top:4px;font-size:11px;line-height:1;color:var(--text-3)}.dashboard-redemption__legend{min-width:0}.dashboard-redemption__title{font-size:13px;font-weight:700;color:#162033}.dashboard-redemption__total{margin-top:4px;font-size:12px;color:var(--text-3)}.dashboard-redemption__items{display:grid;gap:6px;margin-top:12px}.dashboard-redemption__item{display:flex;align-items:center;gap:8px;min-width:0}.dashboard-redemption__dot{width:8px;height:8px;border-radius:999px;flex-shrink:0}.dashboard-redemption__item-label{font-size:12px;color:var(--text-2);white-space:nowrap}.dashboard-redemption__item-value{margin-left:auto;font-size:12px;font-weight:700;color:#162033;font-variant-numeric:tabular-nums;white-space:nowrap}.dashboard-spotlight__cards{display:grid;gap:10px}.dashboard-mini-stat{display:flex;flex-direction:column;justify-content:center;min-height:82px;padding:14px;border-radius:16px;background:#fffc;border:1px solid rgba(15,23,42,.05)}.dashboard-mini-stat__value,.dashboard-metric__value{display:block;margin-top:10px;font-size:28px;line-height:1;letter-spacing:-.05em;color:#101828}.dashboard-mini-stat__note,.dashboard-metric__note{display:block;margin-top:10px;font-size:13px;line-height:1.6}.dashboard-ranking-item__topline,.dashboard-pipeline__topline{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.dashboard-ranking-item__name,.dashboard-pipeline__topline span{font-size:14px;font-weight:700;color:#162033}.dashboard-ranking-item__value,.dashboard-pipeline__topline strong{font-size:18px;line-height:1;color:#101828}.dashboard-ranking-item__bar{margin-top:12px;height:8px;border-radius:999px;background:#94a3b824;overflow:hidden}.dashboard-ranking-item__bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#225cff,#74a4ff)}.dashboard-ranking-item__bar--emerald span{background:linear-gradient(90deg,#0f8b6d,#4ec7aa)}.dashboard-metric{display:flex;flex-direction:column;justify-content:flex-end;min-height:136px}.dashboard-metric__icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:22px;border-radius:12px;font-size:18px}.dashboard-metric--royal .dashboard-metric__icon{color:var(--accent-blue);background:#0f172a0a}.dashboard-metric--amber .dashboard-metric__icon{color:var(--accent-amber);background:#0f172a0a}.dashboard-metric--emerald .dashboard-metric__icon{color:var(--accent-emerald);background:#0f172a0a}.dashboard-metric--violet .dashboard-metric__icon{color:var(--accent-violet);background:#0f172a0a}.dashboard-analytics-grid,.dashboard-ranking-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:12px}.dashboard-panel--chart .echarts-for-react,.dashboard-panel--chart>div:last-child{margin-top:8px}.dashboard-side-stack{display:grid;gap:12px}.dashboard-panel--pipeline{min-height:0}.dashboard-pipeline{display:grid;gap:10px;margin-top:16px}.dashboard-pipeline__item{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:16px;background:#ffffffd1;border:1px solid rgba(15,23,42,.05)}.dashboard-pipeline__icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:#0f172a0d;color:#3d4b61;font-size:16px;flex-shrink:0}.dashboard-pipeline__body{min-width:0}.dashboard-pipeline__body p{margin-top:8px;font-size:13px;line-height:1.65}.dashboard-ranking-list{display:grid;gap:10px;margin-top:16px}.dashboard-ranking-item{display:flex;gap:12px;align-items:flex-start}.dashboard-ranking-item__rank{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;font-family:SFMono-Regular,SFMono,Cascadia Code,JetBrains Mono,Consolas,Liberation Mono,Menlo,monospace;font-size:13px;font-weight:600;flex-shrink:0}.dashboard-ranking-item__rank--1,.dashboard-ranking-item__rank--2,.dashboard-ranking-item__rank--3{background:#0f172a0d;color:#162033}.dashboard-ranking-item__rank--other{background:#94a3b824;color:#667085}.dashboard-ranking-item__body{flex:1;min-width:0;padding:4px 0 2px}.dashboard-ranking-item__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-ranking-item__meta{display:block;margin-top:8px;font-size:12px}@media (max-width: 1280px){.dashboard-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-panel--spotlight{grid-column:span 2;grid-row:span 1}.dashboard-analytics-grid,.dashboard-ranking-grid{grid-template-columns:1fr}}@media (max-width: 960px){.content-wrapper{padding:16px}.dashboard-toolbar,.dashboard-toolbar__left,.dashboard-toolbar__right,.dashboard-panel__header,.dashboard-spotlight{grid-template-columns:1fr;display:grid}.dashboard-toolbar__right{margin-left:0}.dashboard-range-picker{width:100%}.dashboard-redemption,.dashboard-overview-grid{grid-template-columns:1fr}.dashboard-panel--spotlight{grid-column:span 1}}:is(.budget-management-page,.campaign-management-page) .budget-summary-row{margin-bottom:16px;flex:0 0 auto}.campaign-management-page{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.campaign-management-main-card{flex:1;min-height:0}.campaign-management-main-card>.ant-card-body{display:flex;flex-direction:column;min-height:0;gap:0;padding:16px 16px 12px}.campaign-management-toolbar{flex-shrink:0}.campaign-management-table-area{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.campaign-management-table.ant-table-wrapper,.campaign-management-table .ant-spin-nested-loading,.campaign-management-table .ant-spin-container,.campaign-management-table .ant-table{display:flex;flex-direction:column;flex:1;min-height:0}.campaign-management-table .ant-table-container{display:flex;flex-direction:column;height:100%;min-height:0}.campaign-management-table .ant-table-pagination{flex-shrink:0;margin:12px 0 0}.campaign-management-table .ant-table-body{scrollbar-width:thin;scrollbar-color:rgba(15,23,42,.24) transparent}.campaign-management-table .ant-table-body::-webkit-scrollbar{width:8px;height:8px}.campaign-management-table .ant-table-body::-webkit-scrollbar-thumb{background:#0f172a3d;border-radius:999px}.campaign-management-table .ant-table-body::-webkit-scrollbar-track{background:transparent}:is(.budget-management-page,.campaign-management-page) .budget-summary-col{display:flex;min-width:0}:is(.budget-management-page,.campaign-management-page) .budget-summary-card{width:100%;min-height:124px;flex:0 0 auto}:is(.budget-management-page,.campaign-management-page) .budget-summary-card>.ant-card-body{justify-content:center;gap:4px;min-width:0}:is(.budget-management-page,.campaign-management-page) .budget-summary-card .ant-statistic-content{white-space:nowrap}:is(.budget-management-page,.campaign-management-page) .budget-summary-card .ant-statistic-content-value{font-size:clamp(20px,1.25vw,30px)}:is(.budget-management-page,.campaign-management-page) .budget-summary-percent{margin-top:4px;font-size:16px;color:#00000073}:is(.budget-management-page,.campaign-management-page) .budget-summary-card--distribution>.ant-card-body{padding:12px 14px}:is(.budget-management-page,.campaign-management-page) .budget-distribution-content{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:10px;height:100%;min-width:0}:is(.budget-management-page,.campaign-management-page) .budget-distribution-chart{width:96px;height:96px;position:relative}:is(.budget-management-page,.campaign-management-page) .budget-distribution-legend{min-width:0}:is(.budget-management-page,.campaign-management-page) .budget-distribution-title{margin-bottom:2px;font-size:13px;color:#000000c7;font-weight:600}:is(.budget-management-page,.campaign-management-page) .budget-distribution-total{margin-bottom:8px;font-size:12px;color:#00000073}:is(.budget-management-page,.campaign-management-page) .budget-distribution-items{display:flex;flex-direction:column;gap:4px}:is(.budget-management-page,.campaign-management-page) .budget-distribution-item{display:flex;align-items:center;min-width:0;gap:6px}:is(.budget-management-page,.campaign-management-page) .budget-distribution-dot{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;flex-shrink:0}:is(.budget-management-page,.campaign-management-page) .budget-distribution-label{font-size:12px;color:#000000a6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto}:is(.budget-management-page,.campaign-management-page) .budget-distribution-value{font-size:12px;color:#000000c7;font-variant-numeric:tabular-nums;white-space:nowrap}:is(.budget-management-page,.campaign-management-page) .budget-distribution-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;z-index:1}:is(.budget-management-page,.campaign-management-page) .budget-distribution-center-value{font-size:20px;line-height:1;font-weight:700;color:#0f172a}:is(.budget-management-page,.campaign-management-page) .budget-distribution-center-label{margin-top:4px;font-size:11px;line-height:1;color:#00000073}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at top left,rgba(37,99,235,.12),transparent 45%),radial-gradient(circle at bottom right,rgba(56,189,248,.1),transparent 45%),#f3f6fb}.login-card{width:100%;max-width:420px;border-radius:14px;box-shadow:0 20px 50px #0f172a1f}.login-brand{margin-bottom:18px;text-align:center}.login-brand__image{width:64px;height:64px;border-radius:18px;object-fit:cover}.login-brand__name{margin-top:12px;font-size:24px;font-weight:800;color:#172032;letter-spacing:-.04em}.login-title.ant-typography{margin-bottom:6px!important;text-align:center;color:#1e293b}.login-subtitle.ant-typography{text-align:center;color:#64748b;margin-bottom:24px!important}
