:root{--bg: #f6f8fa;--surface: #ffffff;--surface-muted: #f0f2f5;--ink: #1a1d21;--ink-secondary: #5e6470;--ink-tertiary: #8b919d;--border: #e2e5ea;--border-light: #eef0f3;--accent: #2563eb;--accent-soft: rgba(37, 99, 235, .08);--green: #16a34a;--red: #dc2626;--amber: #d97706;--radius: 12px;--radius-sm: 8px;--radius-xs: 6px;--shadow: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, sans-serif;--mono: "SF Mono", "Fira Code", Menlo, monospace}*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;font-family:var(--font);background:radial-gradient(circle at top left,rgba(37,99,235,.08),transparent 24%),linear-gradient(180deg,#fbfcfd 0%,var(--bg) 100%);color:var(--ink)}button,input,select,textarea{font:inherit}a{color:inherit}.table-card{position:relative;margin-top:12px;padding:18px;border:1px solid var(--border);border-radius:20px;background:linear-gradient(180deg,#fffffff5,#f8fafcf5),var(--surface);box-shadow:var(--shadow)}.table-toolbar,.table-toolbar__left,.table-toolbar__right,.bulk-bar,.bulk-bar__actions,.table-footer,.pagination{display:flex;align-items:center}.table-toolbar,.table-footer{justify-content:space-between;gap:12px}.table-toolbar{margin-bottom:14px}.table-footer{margin-top:10px}.table-toolbar__left,.table-toolbar__right,.bulk-bar,.bulk-bar__actions{gap:10px}.table-toolbar__left{flex:1 1 auto;min-width:0}.table-toolbar__right{position:relative;flex-wrap:wrap;justify-content:flex-end}.table-toolbar__count,.table-footer__range{font-size:12px;font-weight:700;color:var(--ink-secondary);white-space:nowrap;align-self:center}.search-box{display:grid;gap:6px;min-width:min(320px,100%)}.search-box__input{width:100%;min-width:0;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-xs);background:#ffffffeb;color:var(--ink);font-size:13px}.toolbar-panel-wrap{position:relative}.chips{display:inline-flex;gap:6px;padding:4px;border-radius:999px;background:var(--surface-muted)}.chip{min-height:30px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:var(--ink-secondary);font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.chip--active{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #0f172a14}.performance-table--no-checkbox .performance-table__sticky--text,.performance-table--no-checkbox .performance-table__cell--text{left:0}.toolbar-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:10;display:grid;gap:12px;width:min(360px,calc(100vw - 64px));padding:14px;border:1px solid var(--border);border-radius:16px;background:#fffffffa;box-shadow:0 18px 40px #0f172a24}.toolbar-panel__header{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;font-weight:700;color:var(--ink-secondary)}.sort-list,.column-list{display:grid;gap:8px}.sort-row{display:grid;grid-template-columns:minmax(0,1.3fr) 92px auto;gap:8px;align-items:center}.toolbar-panel__header-actions{display:flex;gap:4px}.column-toggle{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink);cursor:grab;border-radius:var(--radius-xs);padding:2px 4px;margin:-2px -4px}.column-toggle:active{cursor:grabbing}.column-toggle.drag-over{outline:2px solid var(--accent);outline-offset:1px}.column-toggle__handle{color:var(--ink-tertiary);font-size:14px;line-height:1;flex-shrink:0}.bulk-bar{justify-content:space-between;margin-bottom:14px;padding:10px 12px;border:1px dashed var(--border);border-radius:14px;background:#94a3b814;font-size:13px;font-weight:700;color:var(--ink-secondary)}.dashboard__notice--success{color:#15803d;background:#22c55e14}.table-shell{position:relative}.table-overlay{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;background:#ffffffa3;color:var(--ink-secondary);font-size:13px;font-weight:700;backdrop-filter:blur(2px)}.table-scroll{overflow:auto;max-height:calc(100vh - 228px);border:1px solid var(--border-light);border-radius:16px}.performance-table{--performance-header-row-height: 44px;width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;background:#ffffffeb}.performance-table th,.performance-table td{padding:10px 12px;border-right:1px solid rgba(226,232,240,.9);border-bottom:1px solid rgba(226,232,240,.9);font-size:12px;white-space:nowrap}.performance-table th{position:sticky;z-index:2;background:linear-gradient(180deg,#eff6ff,#f8fafc);color:var(--ink-secondary);text-align:center;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;vertical-align:middle;line-height:1}.performance-table thead tr:first-child th{top:0}.performance-table thead tr:first-child th:not([rowspan]){height:var(--performance-header-row-height);padding-top:0;padding-bottom:0}.performance-table thead tr:nth-child(2) th{top:var(--performance-header-row-height);height:var(--performance-header-row-height);padding-top:0;padding-bottom:0}.performance-table thead th[rowspan="2"]{min-height:calc(var(--performance-header-row-height) * 2)}.performance-table td{text-align:right;color:var(--ink);background:#ffffffeb}.performance-table tbody tr:hover td{background:#eff6ffcc}.performance-table__group,.performance-table__subgroup-start{border-left:2px solid rgba(191,219,254,.8)}.performance-table__sticky--checkbox,.performance-table__cell--checkbox{position:sticky;left:0;z-index:3;width:48px;min-width:48px;text-align:center}.performance-table__sticky--text,.performance-table__cell--text{position:sticky;left:48px;z-index:3;min-width:250px;max-width:25vw;text-align:left;overflow:hidden}.performance-table thead .performance-table__sticky--checkbox,.performance-table thead .performance-table__sticky--text,.performance-table thead .performance-table__sticky--action{z-index:4}.performance-table thead .performance-table__sticky--text,.performance-table tbody .performance-table__cell--text{text-align:left}.performance-table__sticky--action,.performance-table__cell--action{min-width:120px;text-align:center;border-left:2px solid rgba(191,219,254,.8)}.performance-table__empty{padding:28px 20px;text-align:center;color:var(--ink-secondary);font-size:13px;font-weight:700}.shop-favicon{width:16px;height:16px;flex-shrink:0;border-radius:2px;object-fit:contain}.shop-favicon-placeholder{display:inline-block;width:16px;height:16px;flex-shrink:0}.shop-favicon-wrap{display:inline-flex;align-items:center;vertical-align:middle;margin-right:2px}.shop-name-cell{display:flex;align-items:center;gap:6px;min-width:0}.shop-name-cell .text-ad-cell__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ad-cell{display:grid;gap:4px;min-width:0}.text-ad-cell__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;color:var(--ink)}.text-ad-cell__title--link{text-decoration:none}.text-ad-cell__title--link:hover{color:var(--accent);text-decoration:underline}.text-ad-cell__meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-tertiary);font-size:11px}.cell-alert{color:var(--red)!important;font-weight:700}.d-up{color:#15803d!important;font-weight:700}.d-down{color:var(--red)!important;font-weight:700}.d-flat{color:var(--ink-tertiary)!important}.row-action{display:inline-flex;align-items:center;justify-content:center;min-width:84px;min-height:32px;padding:0 12px;border:1px solid transparent;border-radius:999px;font-size:12px;font-weight:700;text-decoration:none;cursor:pointer}.row-action-list{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.row-action--neutral{border-color:var(--border);background:#fffffff2;color:var(--ink)}.row-action--warning{border-color:#d977063d;background:#f59e0b1f;color:#b45309}.row-action--danger{border-color:#dc26263d;background:#dc26261a;color:var(--red)}.pagination{flex-wrap:wrap;justify-content:flex-end;gap:8px}.pagination__button,.pagination__ellipsis{min-width:34px;min-height:34px;border-radius:999px;font-size:12px}.pagination__button{border:1px solid var(--border);background:#ffffffeb;color:var(--ink);font-weight:700;cursor:pointer}.pagination__button--active{border-color:var(--accent);background:var(--accent);color:#fff}.pagination__ellipsis{display:inline-flex;align-items:center;justify-content:center;color:var(--ink-tertiary)}@media (max-width: 1280px){.table-card{padding:16px}}@media (max-width: 960px){.table-toolbar,.table-footer,.bulk-bar{flex-direction:column;align-items:stretch}.table-toolbar__right,.bulk-bar__actions,.pagination{justify-content:flex-start}}@media (max-width: 640px){.search-box{min-width:100%}.toolbar-panel{position:fixed;right:16px;left:16px;width:auto}.sort-row{grid-template-columns:1fr}.table-card{padding:14px}}
