:root{--bg: #f5f5f7;--surface: #ffffff;--surface-2: #f2f2f4;--text: #1d1d1f;--text-2: #6e6e73;--text-3: #86868b;--accent: #0071e3;--accent-tint: rgba(0, 113, 227, .1);--green: #34c759;--red: #ff3b30;--red-tint: rgba(255, 59, 48, .1);--orange: #ff9500;--border: rgba(0, 0, 0, .08);--header-bg: rgba(251, 251, 253, .78);--shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 8px 24px rgba(0, 0, 0, .06);--shadow-lg: 0 12px 48px rgba(0, 0, 0, .18);--radius: 18px}@media(prefers-color-scheme:dark){:root{--bg: #000000;--surface: #1c1c1e;--surface-2: #2c2c2e;--text: #f5f5f7;--text-2: #a1a1a6;--text-3: #86868b;--accent: #0a84ff;--accent-tint: rgba(10, 132, 255, .16);--green: #30d158;--red: #ff453a;--red-tint: rgba(255, 69, 58, .16);--orange: #ff9f0a;--border: rgba(255, 255, 255, .1);--header-bg: rgba(22, 22, 23, .72);--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .35);--shadow-lg: 0 12px 48px rgba(0, 0, 0, .6)}}*{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.47}button{font:inherit;border:none;background:none;color:inherit;cursor:pointer}input{font:inherit}a{color:var(--accent);text-decoration:none}.header{position:sticky;top:0;z-index:50;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);background:var(--header-bg);border-bottom:1px solid var(--border)}.header-inner{max-width:1200px;margin:0 auto;padding:0 20px;height:52px;display:flex;align-items:center;gap:16px}.logo{font-size:19px;font-weight:700;letter-spacing:-.02em;display:flex;align-items:center;gap:7px}.logo .dot{color:var(--accent)}.segmented{display:flex;background:var(--surface-2);border-radius:9px;padding:2px;gap:2px}.segmented button{padding:5px 14px;border-radius:7px;font-size:13px;font-weight:500;color:var(--text-2);transition:all .15s ease;white-space:nowrap}.segmented button.active{background:var(--surface);color:var(--text);box-shadow:0 1px 3px #0000001f}.header-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.icon-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:980px;font-size:13px;font-weight:500;background:var(--surface-2);color:var(--text);transition:transform .12s ease,background .15s ease;white-space:nowrap}.icon-btn:active{transform:scale(.96)}.icon-btn.primary{background:var(--accent);color:#fff}.icon-btn.ai{background:linear-gradient(135deg,#5e5ce6,#bf5af2);color:#fff}.icon-btn:disabled{opacity:.5;cursor:default}.spin{display:inline-block;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.container{max-width:1200px;margin:0 auto;padding:28px 20px 80px}.page-title{font-size:34px;font-weight:700;letter-spacing:-.025em;margin-bottom:4px}.page-sub{color:var(--text-2);font-size:15px;margin-bottom:20px}.filterbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;align-items:center}.chip{padding:7px 14px;border-radius:980px;font-size:13px;font-weight:500;background:var(--surface);color:var(--text);border:1px solid var(--border);transition:all .15s ease;white-space:nowrap}.chip.on{background:var(--accent);border-color:var(--accent);color:#fff}.chip.small{padding:5px 11px;font-size:12px}.filter-summary{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.sheet-backdrop{position:fixed;inset:0;background:#0006;z-index:90;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}}.filter-sheet{position:fixed;z-index:100;left:50%;top:50%;transform:translate(-50%,-50%);width:min(560px,calc(100vw - 32px));max-height:min(80vh,720px);overflow-y:auto;background:var(--surface);border-radius:22px;box-shadow:var(--shadow-lg);padding:26px;animation:popIn .22s cubic-bezier(.32,.72,.35,1.1)}@keyframes popIn{0%{opacity:0;transform:translate(-50%,-48%) scale(.97)}}.filter-sheet h2{font-size:21px;font-weight:700;letter-spacing:-.02em;margin-bottom:20px}.field{margin-bottom:20px}.field label{display:block;font-size:13px;font-weight:600;color:var(--text-2);margin-bottom:8px;text-transform:uppercase;letter-spacing:.03em}.field .chips{display:flex;flex-wrap:wrap;gap:8px}.price-input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:16px;outline:none}.price-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0}.toggle-row span{font-size:15px}.switch{position:relative;width:51px;height:31px;border-radius:16px;background:var(--surface-2);border:1px solid var(--border);transition:background .2s ease}.switch.on{background:var(--green);border-color:var(--green)}.switch:after{content:"";position:absolute;top:2px;left:2px;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #00000040;transition:transform .2s cubic-bezier(.3,.7,.4,1)}.switch.on:after{transform:translate(20px)}.sheet-actions{display:flex;gap:10px;margin-top:8px}.btn{flex:1;padding:13px;border-radius:13px;font-size:15px;font-weight:600;transition:transform .12s ease,opacity .15s ease}.btn:active{transform:scale(.97)}.btn.primary{background:var(--accent);color:#fff}.btn.secondary{background:var(--surface-2);color:var(--text)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:20px}.card{background:var(--surface);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);cursor:pointer;transition:transform .2s cubic-bezier(.3,.7,.4,1),box-shadow .2s ease;position:relative}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.card-img{position:relative;aspect-ratio:4 / 3;background:var(--surface-2);overflow:hidden}.card-img img{width:100%;height:100%;object-fit:cover;display:block}.card-img .noimg{display:flex;align-items:center;justify-content:center;height:100%;font-size:40px;opacity:.3}.badges{position:absolute;top:10px;left:10px;right:10px;display:flex;gap:6px;flex-wrap:wrap}.badge{padding:4px 9px;border-radius:980px;font-size:11px;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0000008c;color:#fff}.badge.new{background:var(--green)}.badge.warn{background:var(--red)}.badge.dup{background:#0000008c}.card-body{padding:14px 16px 16px}.price-row{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:4px}.price{font-size:21px;font-weight:700;letter-spacing:-.02em}.price .cur{font-size:14px;font-weight:600;color:var(--text-2)}.ppm{font-size:12px;color:var(--text-3)}.meta{color:var(--text-2);font-size:13.5px;display:flex;flex-wrap:wrap;gap:4px 10px;margin-bottom:8px}.meta .warn-text{color:var(--red);font-weight:600}.card-foot{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--text-3)}.site-pill{padding:3px 9px;border-radius:980px;background:var(--surface-2);font-weight:600;font-size:11px;color:var(--text-2)}.modal{position:fixed;z-index:100;left:50%;top:50%;transform:translate(-50%,-50%);width:min(680px,calc(100vw - 32px));max-height:min(85vh,800px);overflow-y:auto;background:var(--surface);border-radius:22px;box-shadow:var(--shadow-lg);animation:popIn .22s cubic-bezier(.32,.72,.35,1.1)}.modal-head{position:sticky;top:0;background:var(--surface);padding:20px 24px 12px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);z-index:2}.modal-head h2{font-size:19px;font-weight:700;letter-spacing:-.02em}.close-btn{width:30px;height:30px;border-radius:50%;background:var(--surface-2);color:var(--text-2);font-size:15px;display:flex;align-items:center;justify-content:center}.modal-body{padding:16px 24px 24px}.modal-gallery{display:flex;gap:8px;overflow-x:auto;margin-bottom:16px;border-radius:14px}.modal-gallery img{height:190px;border-radius:14px;object-fit:cover}.dup-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--border)}.dup-row:last-child{border-bottom:none}.dup-info{flex:1;min-width:0}.dup-info .t{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dup-info .s{font-size:12.5px;color:var(--text-2)}.dup-actions{display:flex;gap:7px;flex-shrink:0}.mini-btn{padding:7px 13px;border-radius:980px;font-size:12.5px;font-weight:600;background:var(--accent-tint);color:var(--accent)}.mini-btn.wa{background:#25d36626;color:#1faa53}@media(prefers-color-scheme:dark){.mini-btn.wa{color:#30d158}}.detail-line{font-size:14px;color:var(--text-2);margin-bottom:14px;display:flex;flex-wrap:wrap;gap:4px 12px}.desc{font-size:14px;color:var(--text-2);white-space:pre-wrap;margin-top:14px;max-height:180px;overflow-y:auto}.agent-list{display:flex;flex-direction:column;gap:12px;max-width:680px}.agent-row{display:flex;align-items:center;gap:14px;background:var(--surface);border-radius:16px;padding:14px 18px;box-shadow:var(--shadow)}.avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#5e5ce6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:17px;flex-shrink:0}.agent-info{flex:1;min-width:0}.agent-name{font-weight:600;font-size:15px}.agent-sub{font-size:12.5px;color:var(--text-2)}.wa-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:980px;background:#25d366;color:#fff;font-size:13.5px;font-weight:600;flex-shrink:0;transition:transform .12s ease}.wa-btn:active{transform:scale(.95)}.tel-btn{padding:9px 14px;border-radius:980px;background:var(--surface-2);color:var(--text);font-size:13.5px;font-weight:600;flex-shrink:0}.chat-sheet{position:fixed;z-index:110;right:16px;bottom:16px;top:76px;width:min(420px,calc(100vw - 32px));background:var(--surface);border-radius:22px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;animation:slideUp .25s cubic-bezier(.32,.72,.35,1.05)}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}}.chat-head{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.chat-head h3{font-size:16px;font-weight:700;display:flex;align-items:center;gap:8px}.chat-msgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}.msg{max-width:85%;padding:10px 14px;border-radius:18px;font-size:14px;white-space:pre-wrap;word-break:break-word;line-height:1.45}.msg.user{align-self:flex-end;background:var(--accent);color:#fff;border-bottom-right-radius:5px}.msg.ai{align-self:flex-start;background:var(--surface-2);border-bottom-left-radius:5px}.msg.ai a{word-break:break-all}.chat-empty{margin:auto;text-align:center;color:var(--text-3);font-size:13.5px;padding:0 24px}.chat-empty .big{font-size:34px;margin-bottom:10px}.chat-suggestions{display:flex;flex-direction:column;gap:8px;margin-top:14px}.chat-suggestions button{padding:9px 13px;border-radius:12px;background:var(--surface-2);font-size:13px;color:var(--accent);text-align:left}.chat-input-row{display:flex;gap:8px;padding:12px 14px;border-top:1px solid var(--border)}.chat-input-row input{flex:1;padding:11px 15px;border-radius:980px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);outline:none;font-size:14px}.chat-input-row input:focus{border-color:var(--accent)}.send-btn{width:40px;height:40px;border-radius:50%;background:var(--accent);color:#fff;font-size:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.send-btn:disabled{opacity:.4}.ws-badge{font-size:11px;font-weight:700;text-transform:capitalize;padding:3px 9px;border-radius:980px;background:linear-gradient(135deg,#5e5ce6,#bf5af2);color:#fff;margin-left:4px}.price-row-inputs{display:flex;gap:10px}.mark-actions-overlay{position:absolute;bottom:10px;right:10px;display:flex;gap:6px}.mark-btn{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;background:#0000008c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;transition:transform .12s ease,background .15s ease;flex-shrink:0}.mark-btn:hover{transform:scale(1.12)}.mark-btn.on{background:var(--accent)}.mark-btn.on-fav{background:var(--orange)}.mark-btn.danger:hover{background:var(--red)}.badge.talked{background:#5e5ce6}.badge.done{background:var(--green)}.mark-row{background:var(--surface);border-radius:16px;padding:14px 16px;box-shadow:var(--shadow)}.mark-head{display:flex;align-items:center;gap:12px}.mark-thumb{width:64px;height:48px;border-radius:10px;object-fit:cover;flex-shrink:0}.mark-info{flex:1;min-width:0}.mark-title{font-weight:600;font-size:14.5px;color:var(--text);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mark-sub{font-size:12.5px;color:var(--text-2)}.mark-actions{display:flex;gap:7px;margin:10px 0 8px}.mark-note{width:100%;min-height:40px;padding:9px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font:inherit;font-size:13.5px;resize:vertical;outline:none}.mark-note:focus{border-color:var(--accent)}.toast{position:fixed;z-index:200;bottom:28px;left:50%;transform:translate(-50%);background:var(--text);color:var(--bg);padding:12px 22px;border-radius:980px;font-size:14px;font-weight:600;box-shadow:var(--shadow-lg);animation:toastIn .3s cubic-bezier(.3,.9,.4,1.2)}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(16px)}}.empty{text-align:center;padding:80px 20px;color:var(--text-3)}.empty .big{font-size:48px;margin-bottom:14px}.empty h3{color:var(--text);font-size:19px;font-weight:700;margin-bottom:6px}.skeleton{border-radius:var(--radius);background:var(--surface);overflow:hidden;box-shadow:var(--shadow)}.skeleton .sk-img{aspect-ratio:4 / 3;background:linear-gradient(100deg,var(--surface-2) 40%,var(--surface) 50%,var(--surface-2) 60%);background-size:200% 100%;animation:shimmer 1.4s infinite}.skeleton .sk-line{height:14px;margin:14px 16px;border-radius:7px;background:var(--surface-2)}@keyframes shimmer{to{background-position:-200% 0}}@media(max-width:640px){.header-inner{padding:6px 12px;gap:8px;height:auto;flex-wrap:wrap}.logo{font-size:17px}.segmented{order:3;width:100%}.segmented button{flex:1}.page-title{font-size:28px}.container{padding:20px 14px 70px}.grid{grid-template-columns:1fr 1fr;gap:12px}.chat-sheet{right:8px;left:8px;width:auto}}@media(max-width:440px){.grid{grid-template-columns:1fr}}
