@import "https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.css";@import "https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;700&family=IBM+Plex+Sans+KR:wght@400;700&display=swap";@import "https://cdn.jsdelivr.net/gh/quiple/galmuri/dist/galmuri.css";:root{--primary:#3b82f6;--primary-hover:#2563eb;--bg-color:#f8fafc;--card-bg:#fff;--text-main:#0f172a;--text-muted:#64748b;--border-color:#e2e8f0;--shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--radius:8px}body{background-color:var(--bg-color);color:var(--text-main);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;outline:none}@font-face{font-family:RoundedFixedsys;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/DungGeunMo.woff)format("woff");font-weight:400;font-display:swap}@font-face{font-family:NeoDunggeunmo;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_two@1.0/NeoDunggeunmo.woff)format("woff");font-weight:400;font-style:normal}@font-face{font-family:NeoDunggeunmoPro;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2105_2@1.0/NeoDunggeunmoPro-Regular.woff)format("woff");font-weight:400;font-style:normal}:root{--primary:#06f;--bg-color:#f8f9fa;--border-color:#eee;--text-main:#1a1a1a;--header-h:70px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);font-family:Pretendard,sans-serif}html{scrollbar-gutter:stable}.container{width:100%;max-width:1100px;margin:0 auto;padding:0 20px}.header{border-bottom:1px solid var(--border-color);z-index:100;height:var(--header-h);background:#fff;align-items:center;display:flex;position:sticky;top:0}.header .container{justify-content:space-between;align-items:center;width:100%;display:flex}.logo{color:var(--text-main);align-items:center;gap:8px;font-size:1.4rem;font-weight:900;text-decoration:none;display:flex}.search-container{flex:1;max-width:960px;margin:0 24px}.search-bar{align-items:center;display:flex;position:relative}.search-bar input{border:2px solid #eee;border-radius:50px;outline:none;width:100%;padding:16px 60px 16px 22px;font-size:1.1rem}.search-bar button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:absolute;right:6px}.nav-links{align-items:center;gap:2px;display:flex}.nav-link{color:#666;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:4px;padding:6px 8px;font-family:inherit;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.nav-more{position:relative}.nav-more-popover{border:1px solid var(--border-color,#e5e7eb);z-index:200;background:#fff;border-radius:10px;flex-direction:column;gap:2px;min-width:180px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 32px #0f172a1f}.nav-more-item{color:#444;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-size:.9rem;font-weight:500;text-decoration:none;display:flex}.nav-more-item:hover{color:var(--text-main,#0f172a);background:#f4f4f5}.nav-more-item.active,.nav-link:hover,.nav-link.active{color:var(--primary);background:#f0f7ff}.sidebar-overlay{z-index:990;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a80;position:fixed;inset:0}.login-container{background:#f8fafc;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}.login-box{text-align:center;background:#fff;border-radius:24px;flex-direction:column;align-items:center;gap:20px;width:100%;max-width:400px;padding:40px;display:flex;box-shadow:0 20px 50px #0000000d}.login-box h1{color:#0f172a;margin-bottom:10px;font-size:1.5rem;font-weight:900}.login-box form{flex-direction:column;gap:15px;width:100%;display:flex}.login-box input{text-align:center;border:2px solid #f1f5f9;border-radius:12px;outline:none;width:100%;padding:14px 20px;font-size:1rem;font-weight:600;transition:all .2s}.login-box input:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 4px #0066ff1a}.login-box button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;padding:14px;font-size:1rem;font-weight:800;transition:all .2s}.login-box button:hover{background:#0052cc;transform:translateY(-2px);box-shadow:0 8px 20px #06f3}.error-msg{color:#ef4444;margin:0;font-size:.85rem;font-weight:700}.folder-sidebar-drawer{z-index:9999;background-color:#fff;flex-direction:column;width:320px;height:100vh;transition:left .4s cubic-bezier(.2,1,.2,1);display:flex;position:fixed;top:0;left:-350px;box-shadow:20px 0 60px #0f172a1a}.folder-sidebar-drawer.open{left:0}.sidebar-header{justify-content:space-between;align-items:center;padding:32px 24px 16px;display:flex}.sidebar-header h3{color:#0f172a;letter-spacing:-.03em;align-items:center;gap:12px;font-size:1.3rem;font-weight:900;display:flex}.folder-add-form{background:#f8fafc;border:1px solid #f1f5f9;border-radius:16px;gap:8px;margin:0 16px 20px;padding:12px;display:flex}.folder-add-form input{color:#1e293b;background:#fff;border:1px solid #0000;border-radius:10px;outline:none;flex:1;padding:8px 12px;font-size:.9rem;font-weight:600;transition:all .2s}.folder-add-form button{color:#fff;cursor:pointer;background:#0f172a;border:none;border-radius:10px;padding:0 14px;font-size:.85rem;font-weight:700;transition:all .2s}.sidebar-content-scroll{flex-direction:column;flex:1;gap:2px;padding:0 12px 24px;display:flex;overflow-y:auto}.sidebar-content-scroll::-webkit-scrollbar{width:4px}.sidebar-content-scroll::-webkit-scrollbar-track{background:0 0}.sidebar-content-scroll::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:10px}.folder-row-container{border-radius:10px;position:relative}.folder-row{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:space-between;align-items:center;padding:8px 12px;transition:all .2s;display:flex}.folder-left-content{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.folder-label{white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.02em;font-size:1.05rem;font-weight:800;overflow:hidden}.folder-main-icon{opacity:.7;width:18px!important;height:18px!important}.drag-handle-icon{color:#94a3b8;opacity:0;cursor:grab;transition:all .2s}.folder-row:hover .drag-handle-icon{opacity:.5}.folder-row.active .drag-handle-icon{color:#fff;opacity:.6}.folder-row-actions{opacity:0;gap:4px;transition:all .2s;display:flex}.folder-row:hover .folder-row-actions,.folder-row.active .folder-row-actions{opacity:1}.action-btn-sm{color:#64748b;cursor:pointer;background:#fff;border:none;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex;box-shadow:0 2px 4px #0000000d}.folder-row.active .action-btn-sm{color:#fff;box-shadow:none;background:#fff3}.action-btn-sm:hover{color:var(--primary);transform:scale(1.1)}.action-btn-sm.delete:hover{color:#ef4444}.folder-row.active .action-btn-sm:hover{color:#fff;background:#ffffff4d}.folder-row-container.drag-over{border:2px dashed var(--primary);transform:scale(1.02)}.folder-edit-row{padding:4px 12px}.folder-edit-row input{border:2px solid var(--primary);border-radius:10px;outline:none;width:100%;padding:8px 12px;font-weight:700;box-shadow:0 4px 20px #0066ff26}.bulk-actions-bar{border:1px dashed var(--primary);background:#f0f7ff;border-radius:16px;align-items:center;gap:14px;width:100%;height:100%;padding:0 22px;display:flex}.selection-count{color:var(--primary);text-align:center;background:#fff;border:1px solid #bfdbfe;border-radius:10px;min-width:38px;padding:6px 12px;font-size:1.5rem;font-weight:900;line-height:1}.btn-icon-only{justify-content:center;align-items:center;display:inline-flex;padding:7px 10px!important}.btn-icon-only svg{display:block}.btn-analysis{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fe}.btn-analysis:hover:not(:disabled){background:#ede9fe}.btn-analysis:disabled{opacity:.4;cursor:not-allowed}.move-to-box{background:#fff;border:1px solid #d0e7ff;border-radius:10px;align-items:center;gap:10px;padding:8px 15px;display:flex}.move-to-box select{color:#334155;cursor:pointer;border:none;outline:none;font-weight:700}.btn-bulk-delete{color:#ef4444;cursor:pointer;background:#fee2e2;border:none;border-radius:10px;padding:8px 15px;font-weight:800}.btn-bulk-delete:hover{background:#fecaca}.item-checkbox{cursor:pointer;align-items:center;padding-right:10px;display:flex}.saved-item{position:relative}.pin-icon-btn{cursor:pointer;color:#cbd5e1;background:0 0;border:1px solid #0000;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin-left:auto;transition:all .15s;display:inline-flex}.pin-icon-btn:hover{color:#92400e;background:#fef3c7;border-color:#fde68a}.pin-icon-btn.active{color:#fff;background:#f59e0b;border-color:#d97706}.pin-icon-btn.active:hover{background:#d97706}.saved-item.selected{background:#eff6ff;border-color:#93c5fd}.saved-item.selected:before{content:"";background:var(--primary);pointer-events:none;border-radius:10px 0 0 10px;width:4px;position:absolute;top:0;bottom:0;left:0}.saved-item.pinned{border-color:var(--primary);background:#f0f7ff;border-width:2px;box-shadow:0 4px 15px #0066ff1a}.unpin-btn{color:#64748b;cursor:pointer;z-index:100;background:#f1f5f9;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex;position:absolute;top:10px;right:10px}.copy-url-btn{color:#4338ca;cursor:pointer;z-index:100;background:#eef2ff;border:1px solid #c7d2fe;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:600;transition:all .2s;position:absolute;top:10px;right:48px}.copy-url-btn:hover{background:#e0e7ff;border-color:#818cf8}.saved-page-controls{justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;display:flex}.saved-inner-search{background:#f1f5f9;border-radius:12px;flex:1;align-items:center;gap:10px;max-width:400px;padding:8px 16px;display:flex}.saved-inner-search input{color:#1e293b;background:0 0;border:none;outline:none;width:100%;font-size:.9rem;font-weight:600}.saved-inner-search button{color:#94a3b8;cursor:pointer;background:0 0;border:none;align-items:center;display:flex}.saved-count-label{color:#64748b;font-size:.9rem;font-weight:700}button.cache-stats-link{cursor:pointer;background:0 0;border:0;border-radius:4px;padding:2px 4px;transition:all .15s}button.cache-stats-link:hover{color:var(--primary);background:#eef2ff;text-decoration:underline}.cache-stats-modal{max-width:800px}.saved-item.reorder-target{border-top:4px solid var(--primary);margin-top:-4px}.drag-handle-vertical{color:#cbd5e1;cursor:grab;opacity:0;align-items:center;padding:4px;transition:opacity .2s;display:flex}.saved-item:hover .drag-handle-vertical{opacity:1}.sticky-preview-header{top:var(--header-h);z-index:90;border-bottom:1px solid var(--border-color);background:#fff;align-items:center;height:130px;display:flex;position:sticky;overflow:hidden}.sticky-preview-header .container{align-items:center;height:110px;display:flex}.preview-placeholder{text-align:center;color:#cbd5e1;width:100%;font-size:.95rem;font-weight:600;line-height:110px}.preview-layout{align-items:center;gap:20px;width:100%;height:100%;display:flex}.preview-image-box-large{background:#f8f9fa;border:1px solid #e2e8f0;border-radius:12px;flex-shrink:0;width:90px;height:90px;display:block;position:relative;overflow:hidden}.preview-image-box-large img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.preview-image-box-large:hover img{transform:scale(1.1)}.link-hover-overlay{opacity:0;background:#0000004d;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .2s;display:flex;position:absolute;top:0;left:0}.preview-image-box-large:hover .link-hover-overlay{opacity:1}.preview-info-box-large{flex:1;min-width:0}.p-title-large{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;margin-bottom:6px;font-size:1.05rem;font-weight:800;overflow:hidden}.p-top-row{flex-wrap:nowrap;align-items:center;gap:8px;width:100%;margin-bottom:6px;display:flex;overflow:hidden}.p-brand{color:var(--primary);white-space:nowrap;background:#f0f7ff;border:1px solid #d0e7ff;border-radius:4px;flex-shrink:0;align-items:center;height:20px;padding:2px 8px;font-size:.75rem;font-weight:800;display:flex}.p-rank-container{flex:1;align-items:center;gap:4px;min-width:0;display:flex;overflow:hidden}.p-rank-badge{color:#ea580c;white-space:nowrap;background:#fff7ed;border:1px solid #ffedd5;border-radius:4px;flex-shrink:0;align-items:center;height:20px;padding:2px 6px;font-size:.7rem;font-weight:800;display:flex}.p-price-row-preview{align-items:center;gap:14px;margin-top:2px;display:flex}.p-price-large{color:var(--primary);font-size:1.3rem;font-weight:900}.p-memo-edit-box{background:#fffbeb;border:1px solid #fef3c7;border-radius:10px;flex:1;align-items:center;gap:8px;max-width:360px;padding:6px 12px;transition:all .2s;display:flex}.p-memo-edit-box:focus-within{background:#fff;border-color:#f59e0b;box-shadow:0 4px 15px #f59e0b1a}.p-memo-edit-box input{color:#92400e;background:0 0;border:none;outline:none;width:100%;font-size:.9rem;font-weight:700}.p-memo-edit-box input::placeholder{color:#d97706;opacity:.5}.preview-options-box{border-left:2px solid #f1f5f9;flex-direction:column;flex-shrink:0;width:230px;height:100%;padding-left:16px;display:flex}.p-opt-list{flex-direction:column;flex:1;gap:2px;padding-right:12px;display:flex;overflow-y:auto}.p-opt-item{border-bottom:1px solid #f8fafc;justify-content:space-between;align-items:baseline;gap:15px;padding:1px 0;display:flex}.p-opt-name{color:#475569;white-space:nowrap;text-overflow:ellipsis;direction:rtl;flex:1;font-size:.8rem;font-weight:600;overflow:hidden}.p-opt-price{color:var(--primary);flex-shrink:0;font-size:.85rem;font-weight:800}.product-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:16px;display:grid}.product-card-inner{background:#fff;border:1px solid #eef2f6;border-radius:12px;flex-direction:column;height:100%;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000000a}.product-card-inner:hover{border-color:var(--primary);transform:translateY(-6px);box-shadow:0 12px 24px #0066ff1f}.product-badge{color:#fff;z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172ab3;border:1px solid #fff3;border-radius:20px;justify-content:center;align-items:center;padding:3px 10px;font-size:.7rem;font-weight:900;display:flex;position:absolute;top:8px;left:8px;box-shadow:0 4px 12px #00000026}.product-image{background:#f8fafc;width:100%;height:140px;position:relative;overflow:hidden}.product-image img{object-fit:cover;width:100%;height:100%}.card-parse-overlay{opacity:0;pointer-events:none;z-index:5;background:#0f172ae0;border-radius:0;flex-direction:column;gap:6px;padding:12px 14px;transition:opacity .18s ease-out;display:flex;position:absolute;inset:40px 0 36px;overflow:hidden}.product-card-inner:hover .card-parse-overlay,.card-parse-overlay.shown{opacity:1;pointer-events:auto}.card-parse-toggle{color:#fff;z-index:6;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172ab3;border:1px solid #ffffff38;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:background .12s;display:none;position:absolute;bottom:6px;right:6px;box-shadow:0 2px 8px #0000002e}.card-parse-toggle:hover{background:#0f172ae0}.card-parse-toggle.active{background:var(--primary,#06f);border-color:#ffffff59}.card-parse-score{color:#fff;background:#0f172a99;border:1px solid #ffffff2e;border-radius:999px;align-self:flex-end;align-items:center;gap:6px;max-width:100%;padding:2px 8px;font-size:11px;font-weight:800;display:inline-flex}.card-parse-score.unmapped{background:#b45309cc;border-color:#fcd34d80}.card-parse-preset-name{opacity:.85;text-overflow:ellipsis;white-space:nowrap;max-width:110px;font-size:10px;font-weight:600;overflow:hidden}.card-parse-badges{flex-wrap:wrap;align-content:flex-start;gap:4px;display:flex}.card-parse-badge{cursor:pointer;border:1px solid;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600;line-height:1.5;transition:transform 80ms,box-shadow 80ms}.card-parse-badge:hover{transform:translateY(-1px);box-shadow:0 2px 6px #00000040}.card-parse-badge.hit{color:#0f172a;background:#fffffff2;border-color:#fff}.card-parse-badge.miss{color:#ffffffbf;background:#0f172a8c;border-style:dashed;border-color:#94a3b899}.card-parse-badge.overridden{color:#92400e;background:#fef3c7f2;border-color:#fde68a}.card-parse-badge-cat{opacity:.65;margin-right:3px;font-weight:500}.pdc-badge-overlay{opacity:0;pointer-events:none;z-index:4;background:0 0;flex-direction:column;gap:4px;transition:opacity .18s ease-out;display:flex;position:absolute;inset:22px 0 0;overflow:hidden}.cell:hover .pdc-badge-overlay,.pdc-badge-overlay.shown{opacity:1}.pdc-badges-row{flex-wrap:wrap;align-content:flex-start;gap:3px;display:flex}.pdc-badge{border:1px solid;border-radius:4px;font-weight:600;line-height:1.4}.pdc-badge.hit{color:#0f172a;background:#fffffff2;border-color:#fff}.pdc-badge.miss{color:#ffffffbf;background:#0f172a8c;border-style:dashed;border-color:#94a3b899}.pdc-score{color:#fff;background:#0f172a99;border:1px solid #ffffff2e;border-radius:999px;align-self:flex-end;font-weight:800}.pdc-badge-overlay.pdc-m,.pdc-badge-overlay.pdc-l{padding:8px 10px}.pdc-m .pdc-badge,.pdc-l .pdc-badge{padding:2px 6px;font-size:10px}.pdc-m .pdc-score,.pdc-l .pdc-score{padding:1px 8px;font-size:10px}.pdc-badge-overlay.pdc-s{padding:3px 4px;top:12px}.pdc-s .pdc-badges-row{gap:2px}.pdc-s .pdc-badge{border-width:.5px;padding:1px 3px;font-size:8px;line-height:1.2}.pdc-s .pdc-score{padding:0 4px;font-size:8px;line-height:1.2}.pdc-mini-badges{z-index:3;pointer-events:none;justify-content:center;gap:1.5px;display:flex;position:absolute;bottom:2px;left:2px;right:2px}.pdc-mini-badge{background:#ffffff80;border:.5px solid #cbd5e1;border-radius:50%;width:4px;height:4px}.pdc-mini-badge.hit{background:#34d399;border-color:#10b981}.pdc-mini-badge.miss{background:#94a3b899;border-color:#94a3b8}@media (hover:none){.card-parse-toggle{display:inline-flex}}.product-info{flex-direction:column;flex:1;padding:0 10px 10px;display:flex}.product-info h3{color:#111;-webkit-line-clamp:2;letter-spacing:-.03em;-webkit-box-orient:vertical;height:2.4em;margin:0 0 2px;font-size:.95rem;font-weight:800;line-height:1.2;display:-webkit-box;overflow:hidden}.mall-name{color:#64748b;margin-bottom:4px;font-size:.8rem;font-weight:500}.price-info{color:var(--primary);font-size:1rem;font-weight:800}.btn-search-similar{color:#666;cursor:pointer;z-index:10;background:#fff;border:1px solid #eee;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex;position:absolute;top:50%;left:10px;transform:translateY(-50%);box-shadow:0 4px 10px #0000001a}.btn-search-similar:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-50%)scale(1.1)}.saved-list{flex-direction:column;gap:6px;margin-top:15px;padding-bottom:50px;display:flex}.saved-list.virtuoso-list{gap:0;display:block}.saved-item.virtuoso-item{margin-bottom:6px}.saved-item{background:#fff;border:1px solid #f0f0f0;border-radius:10px;flex-wrap:nowrap;align-items:center;gap:8px;width:100%;padding:6px 10px 6px 6px;transition:all .2s;display:flex;position:relative}.item-link-wrapper{color:inherit;flex:1;align-items:center;gap:8px;min-width:0;text-decoration:none;display:flex}.item-thumbnail{background:#f8f9fa;border:1px solid #eee;border-radius:6px;flex-shrink:0;width:50px;height:45px;overflow:hidden}.item-thumbnail img{object-fit:cover;width:100%;height:100%}.saved-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.saved-info h3{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.9rem;font-weight:700;overflow:hidden}.price-row{flex-wrap:nowrap;align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.price{color:var(--primary);font-size:.95rem;font-weight:900}.saved-actions{flex-shrink:0;align-items:center;gap:6px;margin-left:auto;display:flex}.saved-memo-box{flex:1;max-width:250px;margin:0 10px}.saved-memo-box input{color:#854d0e;background:#fefce8;border:1px solid #fef08a;border-radius:8px;outline:none;width:100%;padding:6px 12px;font-size:.85rem;font-weight:600;transition:all .2s}.saved-memo-box input:focus{background:#fff;border-color:#eab308;box-shadow:0 0 0 3px #eab3081a}.saved-memo-box input::placeholder{color:#ca8a04;opacity:.6}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:20px;width:90%;max-width:500px;overflow:hidden;box-shadow:0 20px 40px #0003}.modal-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:15px 20px;display:flex}.modal-body{padding:20px}.toast-message{color:#fff;z-index:2000;border-radius:50px;align-items:center;gap:10px;padding:12px 24px;font-weight:800;animation:.3s popUp;display:flex;position:fixed;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0003}.toast-message.success{background:#10b981}.toast-message.error{background:#ef4444}.toast-action-btn{color:#fff;cursor:pointer;background:#ffffff38;border:1px solid #fff6;border-radius:999px;padding:6px 14px;font-size:.9rem;font-weight:700;transition:background .15s}.toast-action-btn:hover{background:#ffffff59}.scope-bar{border:1px solid var(--border-color,#e5e7eb);background:#f8fafc;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;padding:8px 10px;display:flex}.scope-bar-label{color:#64748b;margin-right:4px;font-size:12px;font-weight:700}.scope-chip{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:4px;padding:5px 12px;font-size:13px;font-weight:600;display:inline-flex}.scope-chip:hover{background:#f1f5f9}.scope-chip.active{color:#fff;background:#1d4ed8;border-color:#1d4ed8}.scope-group-select{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px;max-width:280px;padding:5px 10px;font-size:13px;font-weight:600}.scope-group-select.active{color:#fff;background:#1d4ed8;border-color:#1d4ed8}.scope-table-link{color:#1d4ed8;border-radius:6px;margin-left:auto;padding:4px 10px;font-size:12px;font-weight:700;text-decoration:none}.scope-table-link:hover{background:#eff6ff}.pm-page{max-width:1200px;padding:16px}.pm-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.pm-header-sticky{top:var(--header-h);z-index:60;border-bottom:1px solid var(--border-color,#e5e7eb);background:#fff;margin:-16px -16px 12px;padding:10px 16px;position:sticky;box-shadow:0 2px 8px #0f172a0d}.pm-dirty-badge{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700}.pm-tab-bar{top:calc(var(--header-h) + var(--pm-header-h,56px));z-index:55;border-bottom:1px solid var(--border-color,#e5e7eb);background:#f8fafc;gap:4px;margin:0 -16px 16px;padding:4px 16px 0;display:flex;position:sticky}.pm-tab{cursor:pointer;color:#64748b;background:0 0;border:none;border-bottom:3px solid #0000;padding:8px 16px;font-size:13px;font-weight:600;transition:color .15s,border-color .15s}.pm-tab:hover{color:#0f172a}.pm-tab.active{color:#7c3aed;border-bottom-color:#7c3aed}.pm-selected-panel{top:calc(var(--header-h) + var(--pm-header-h,56px) + 4px);z-index:50;border:1px solid var(--border-color,#e5e7eb);max-height:calc(100vh - var(--header-h) - var(--pm-header-h,56px) - 40px);background:#fff;border-radius:10px;flex-direction:column;margin-bottom:14px;padding:12px 14px;display:flex;position:sticky;box-shadow:0 4px 16px #0f172a14}.pm-legend{flex-wrap:wrap;gap:4px;display:flex}.pm-legend-item{border-radius:999px;padding:2px 8px;font-size:10px;font-weight:600}.pm-lines{flex-direction:column;gap:6px;max-height:320px;display:flex;overflow-y:auto}.pm-line{background:#fafafa;border:1px solid #f1f5f9;border-radius:8px;flex-wrap:wrap;align-items:flex-start;gap:8px;padding:8px 10px;display:flex}.pm-line-idx{color:#fff;background:#1d4ed8;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;font-weight:700;display:inline-flex}.pm-line-thumb{object-fit:cover;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;flex-shrink:0;width:32px;height:32px}.pm-thumb-zoomable{flex-shrink:0;line-height:0;display:inline-block;position:relative}.pm-thumb-zoomable .pm-thumb-zoom{object-fit:cover;opacity:0;visibility:hidden;pointer-events:none;z-index:200;background:#f1f5f9;border:2px solid #fff;border-radius:6px;margin-left:8px;transition:opacity .15s ease-out,transform .15s ease-out;position:absolute;top:50%;left:100%;transform:translateY(-50%)scale(.92);box-shadow:0 8px 24px #0f172a40}.pm-thumb-zoomable:hover .pm-thumb-zoom{opacity:1;visibility:visible;transform:translateY(-50%)scale(1)}.pm-line-tokens{flex-wrap:wrap;flex:1;gap:4px;min-width:0;display:flex}.pm-line-remove{cursor:pointer;color:#94a3b8;background:0 0;border:1px solid #e2e8f0;border-radius:6px;flex-shrink:0;padding:4px}.pm-line-remove:hover{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.pm-freq-panel{background:#fef9c3;border:1px solid #fde68a;border-radius:8px;margin-bottom:10px;padding:8px 10px}.pm-freq-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.pm-freq-chips{flex-wrap:wrap;gap:4px;max-height:120px;display:flex;overflow-y:auto}.pm-freq-chip{cursor:pointer;color:#92400e;background:#fff;border:1px solid #fde68a;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-family:inherit;font-size:12px;font-weight:600;display:inline-flex}.pm-freq-chip:hover{background:#fef3c7;border-color:#f59e0b}.pm-freq-count{color:#fff;background:#fbbf24;border-radius:999px;padding:1px 5px;font-size:10px;font-weight:700}.pm-token{cursor:pointer;border-radius:6px;padding:3px 8px;font-family:inherit;font-size:13px;font-weight:600;transition:transform .1s,box-shadow .1s}.pm-token:hover{transform:translateY(-1px);box-shadow:0 2px 6px #00000014}.pm-token-unmatched{font-style:italic}.pm-token-merge-selected{transform:translateY(-1px);box-shadow:0 0 0 2px #7c3aed,0 0 0 4px #7c3aed40}.pm-line-merge-btn{color:#fff;cursor:pointer;background:#7c3aed;border:none;border-radius:6px;margin-left:6px;padding:3px 10px;font-family:inherit;font-size:11px;font-weight:700;animation:.18s ease-out pmMergePop;box-shadow:0 2px 6px #7c3aed4d}.pm-line-merge-btn:hover{background:#6d28d9}.pm-line-rule-btn{color:#fff;cursor:pointer;background:#16a34a;border:none;border-radius:6px;margin-left:4px;padding:3px 10px;font-family:inherit;font-size:11px;font-weight:700;animation:.18s ease-out pmMergePop;box-shadow:0 2px 6px #16a34a4d}.pm-line-rule-btn:hover{background:#15803d}.pm-pipeline-panel{border:1px solid var(--border-color,#e5e7eb);background:#fff;border-radius:10px;margin-bottom:14px;padding:14px 16px}.pm-pipeline-head{flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:12px;display:flex}.pm-pipeline-list{flex-direction:column;gap:8px;display:flex}.pm-pipeline-step-card{cursor:grab;-webkit-user-select:none;user-select:none;background:#fafafa;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:24px 32px 1fr auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.pm-pipeline-step-card:active{cursor:grabbing}.pm-pipeline-step-card.is-off{opacity:.5;background:#f8fafc}.pm-pipeline-step-card.is-locked{cursor:not-allowed;background:#fefce8;border-color:#fde68a}.pm-pipeline-drag{color:#94a3b8;text-align:center;font-size:16px;line-height:1}.pm-pipeline-step-card.is-locked .pm-pipeline-drag{color:#ca8a04}.pm-pipeline-num{color:#fff;background:#1e40af;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:inline-flex}.pm-pipeline-step-card.is-off .pm-pipeline-num{background:#cbd5e1}.pm-pipeline-step-card.is-locked .pm-pipeline-num{background:#ca8a04}.pm-pipeline-body{min-width:0}.pm-pipeline-name{color:#1e293b;font-size:13px;font-weight:600}.pm-pipeline-desc{color:#64748b;margin-top:2px;font-size:11px}.pm-pipeline-toggle{appearance:none;cursor:pointer;background:#cbd5e1;border:none;border-radius:999px;flex-shrink:0;width:36px;height:20px;padding:0;transition:background .15s;position:relative}.pm-pipeline-toggle:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:left .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.pm-pipeline-toggle.on{background:#1e40af}.pm-pipeline-toggle.on:after{left:18px}.pm-pipeline-toggle.disabled{opacity:.5;cursor:not-allowed}.pm-pipeline-warn{color:#92400e;background:#fffbeb;border-left:3px solid #f59e0b;border-radius:0 6px 6px 0;margin-top:10px;padding:8px 12px;font-size:12px}.pm-pipeline-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:14px;padding:10px 12px}.pm-pipeline-preview-head{color:#475569;margin-bottom:8px;font-size:12px;font-weight:600}.pm-pipeline-preview-rows{flex-direction:column;gap:4px;display:flex}.pm-pipeline-preview-row{background:#fff;border:1px solid #f1f5f9;border-radius:4px;grid-template-columns:32px auto 1fr;align-items:center;gap:8px;padding:4px 8px;font-size:11px;display:grid}.pm-pipeline-preview-row.changed{background:#ecfdf5;border-color:#6ee7b7}.pm-pipeline-preview-row.off{opacity:.5;background:#f8fafc;border-style:dashed}.pm-pipeline-preview-row.final{background:#eff6ff;border-color:#bfdbfe;font-weight:600}.pm-pipeline-preview-num{color:#475569;text-align:center;background:#e2e8f0;border-radius:3px;padding:1px 4px;font-size:10px;font-weight:700}.pm-pipeline-preview-name{color:#64748b;font-weight:600}.pm-pipeline-preview-result{color:#1e293b;word-break:break-all;font-family:monospace}.pm-pipeline-no-sample{color:#64748b;text-align:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:6px;margin-top:12px;padding:12px;font-size:12px}.pm-rules-panel{border:1px solid var(--border-color,#e5e7eb);background:#fff;border-radius:10px;margin-bottom:14px;padding:12px 14px}.pm-rules-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.pm-rules-axis{border-top:1px dashed #f1f5f9;padding:6px 0}.pm-rules-axis:first-of-type{border-top:none;padding-top:0}.pm-rules-axis-head{align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.pm-rules-list{flex-direction:column;gap:4px;display:flex}.pm-rule-card{background:#fafafa;border:1px solid #f1f5f9;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:4px 8px;display:flex}.pm-rule-card:hover{background:#f8fafc;border-color:#e2e8f0}.pm-rule-condition{flex-wrap:wrap;align-items:center;gap:4px;min-width:0;font-size:11px;display:flex}.pm-rule-tok{border-radius:4px;padding:1px 6px;font-size:11px;font-weight:600}.pm-rule-tok.include{color:#065f46;background:#ecfdf5;border:1px solid #6ee7b7}.pm-rule-tok.exclude{color:#991b1b;background:#fef2f2;border:1px solid #fca5a5;text-decoration:line-through}.pm-rule-op{color:#64748b;margin:0 1px;font-size:11px;font-weight:700}.pm-rule-arrow{color:#94a3b8;margin:0 4px;font-size:12px;font-weight:700}.pm-rule-then{color:#92400e;background:#fef3c7;border:1px solid #fde68a;border-radius:4px;padding:1px 7px;font-size:11px;font-weight:700}.pm-rule-priority{color:#475569;text-align:center;background:#e0e7ff;border:1px solid #c7d2fe;border-radius:999px;flex-shrink:0;min-width:28px;padding:1px 6px;font-size:10px;font-weight:700}.pm-rule-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.pm-rule-move{cursor:pointer;color:#64748b;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:3px;display:inline-flex}.pm-rule-move:hover:not(:disabled){color:#1d4ed8;background:#eff6ff}.pm-rule-move:disabled{color:#cbd5e1;cursor:not-allowed}.pm-rule-delete{cursor:pointer;color:#94a3b8;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:14px}.pm-rule-delete:hover{color:#b91c1c;background:#fef2f2}.pm-rule-tok.price{color:#92400e;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fef3c7;border:1px solid #fde68a;align-items:center;gap:3px;font-family:inherit;display:inline-flex}.pm-rule-tok.price:hover{background:#fde68a}.pm-rule-tok.price .edit-mark{opacity:.4;font-size:9px}.pm-rule-tok.price:hover .edit-mark{opacity:1}.pm-rule-price-add{color:#94a3b8;cursor:pointer;opacity:.5;background:0 0;border:1px dashed #cbd5e1;border-radius:4px;padding:1px 6px;font-family:inherit;font-size:10px;font-weight:600}.pm-rule-card:hover .pm-rule-price-add{opacity:1}.pm-rule-price-add:hover{color:#92400e;opacity:1;background:#fef3c7;border-color:#fde68a}.pm-rule-price-editor{background:#fffbeb;border:1px solid #fde68a;border-radius:6px;align-items:center;gap:4px;padding:3px 6px;display:inline-flex;box-shadow:0 2px 8px #92400e1f}.pm-rule-price-editor input{text-align:right;-moz-appearance:textfield;background:#fff;border:1px solid #fde68a;border-radius:4px;width:70px;padding:2px 5px;font-family:inherit;font-size:11px}.pm-rule-price-editor input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.pm-rule-price-editor input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pm-rule-price-editor input::placeholder{color:#cbd5e1}.pm-rule-price-editor .sep{color:#92400e;font-size:10px;font-weight:700}.pm-rule-price-editor button{cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:2px 5px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.pm-rule-price-editor .save{color:#065f46}.pm-rule-price-editor .save:hover{background:#ecfdf5}.pm-rule-price-editor .cancel{color:#991b1b}.pm-rule-price-editor .cancel:hover{background:#fef2f2}.pm-rule-price-editor .clear{color:#94a3b8;font-size:10px}.pm-rule-price-editor .clear:hover{color:#475569;background:#f1f5f9}.pm-rule-price-hint-inline{color:#64748b;align-items:center;gap:4px;margin-left:6px;font-size:10px;display:inline-flex}.pm-rule-price-hint-inline button{color:#1e40af;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:3px;padding:1px 5px;font-family:inherit;font-size:10px;font-weight:600}.pm-rule-price-hint-inline button:hover{background:#dbeafe}.pm-rule-modal-backdrop{z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a80;justify-content:center;align-items:center;padding:20px;animation:.12s ease-out pmModalFade;display:flex;position:fixed;inset:0}.pm-rule-modal{background:#fff;border-radius:12px;flex-direction:column;gap:12px;width:100%;max-width:520px;max-height:calc(100vh - 40px);padding:18px 20px 14px;animation:.16s cubic-bezier(.2,.8,.2,1) pmModalPop;display:flex;overflow-y:auto;box-shadow:0 20px 60px #00000040}.pm-rule-modal-head{justify-content:space-between;align-items:center;display:flex}.pm-rule-modal-close{cursor:pointer;color:#94a3b8;background:0 0;border:none;padding:0 4px;font-family:inherit;font-size:22px}.pm-rule-modal-close:hover{color:#0f172a}.pm-rule-section{flex-direction:column;gap:6px;display:flex}.pm-rule-label{color:#475569;letter-spacing:-.01em;font-size:11px;font-weight:700}.pm-rule-chips{flex-wrap:wrap;gap:4px;display:flex}.pm-rule-chips-scroll{border:1px dashed #e2e8f0;border-radius:6px;max-height:160px;padding:2px;overflow-y:auto}.pm-rule-chip{cursor:default;color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;padding:3px 8px;font-family:inherit;font-size:11px;font-weight:600}.pm-rule-chip.include{color:#065f46;background:#ecfdf5;border-color:#6ee7b7}.pm-rule-chip.exclude-pick{cursor:pointer;transition:filter .12s}.pm-rule-chip.exclude-pick:hover{background:#fef2f2;border-color:#fecaca}.pm-rule-chip.exclude-pick.selected{color:#991b1b;background:#fef2f2;border-color:#fca5a5}.pm-rule-chip.axis{cursor:pointer;transition:filter .12s}.pm-rule-chip.axis:hover{background:#f1f5f9}.pm-rule-chip.axis.selected{color:#1d4ed8;background:#eff6ff;border-color:#60a5fa;box-shadow:0 0 0 2px #3b82f62e}.pm-rule-chip.then-pick{cursor:pointer;transition:filter .12s}.pm-rule-chip.then-pick:hover{background:#fffbeb}.pm-rule-chip.then-pick.selected{color:#92400e;background:#fef3c7;border-color:#fde68a}.pm-rule-input{border:1px solid #e2e8f0;border-radius:6px;width:100%;padding:6px 10px;font-family:inherit;font-size:12px}.pm-rule-input:focus{border-color:#7c3aed;outline:none;box-shadow:0 0 0 2px #7c3aed2e}.pm-rule-modal-actions{justify-content:flex-end;gap:8px;margin-top:6px;display:flex}@keyframes pmModalFade{0%{opacity:0}to{opacity:1}}@keyframes pmModalPop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes pmMergePop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.pm-list-section{border:1px solid var(--border-color,#e5e7eb);background:#fff;border-radius:10px;padding:12px}.pm-filter-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.pm-cache-list{flex-direction:column;gap:4px;display:flex}.pm-cache-item{cursor:pointer;background:#fff;border:1px solid #f1f5f9;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;transition:background .1s,border-color .1s;display:flex}.pm-cache-item:hover{background:#f8fafc}.pm-cache-item.selected{background:#eff6ff;border-color:#93c5fd}.pm-cache-check{flex-shrink:0;align-items:center;display:flex}.pm-cache-check-empty{border:2px solid #cbd5e1;border-radius:50%;width:18px;height:18px}.pm-cache-thumb{object-fit:cover;background:#f1f5f9;border-radius:4px;flex-shrink:0;width:48px;height:48px}.pm-cache-info{flex:1;min-width:0}.pm-cache-name{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.pm-cache-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:3px;display:flex}.pm-cache-price{color:#b91c1c;font-size:12px;font-weight:700}.pm-cache-mall{color:#64748b;background:#f1f5f9;border-radius:4px;padding:1px 6px;font-size:11px}.pm-cache-cat{color:#94a3b8;font-size:11px}.pm-cache-preset-chip{color:#5b21b6;cursor:pointer;letter-spacing:-.01em;background:#ede9fe;border:1px solid #ddd6fe;border-radius:4px;align-items:center;gap:3px;padding:1px 6px;font-size:10px;font-weight:600;transition:filter .12s;display:inline-flex}.pm-cache-preset-chip:hover{filter:brightness(.95)}.pm-cache-preset-chip.unmapped{color:#92400e;background:#fef3c7;border-color:#fde68a}.pm-cache-preset-chip.current{color:#065f46;background:#ecfdf5;border-color:#6ee7b7}.pm-line-preset-chip{color:#5b21b6;cursor:pointer;letter-spacing:-.01em;background:#ede9fe;border:1px solid #ddd6fe;border-radius:4px;flex-shrink:0;align-items:center;gap:3px;margin-right:4px;padding:2px 8px;font-size:10px;font-weight:600;transition:filter .12s;display:inline-flex}.pm-line-preset-chip:hover{filter:brightness(.95)}.pm-line-preset-chip.unmapped{color:#92400e;background:#fef3c7;border-color:#fde68a}.pm-line-preset-chip.current{color:#065f46;background:#ecfdf5;border-color:#6ee7b7}.pm-line-badges{flex-wrap:wrap;align-items:center;gap:3px;margin-right:4px;display:inline-flex}.pm-line-badges-score{color:#475569;background:#f1f5f9;border-radius:4px;padding:1px 5px;font-size:10px;font-weight:700}.pm-line-price{color:#1d4ed8;letter-spacing:-.01em;font-variant-numeric:tabular-nums;cursor:pointer;background:#eff6ff;border:1px solid #93c5fd;border-radius:6px;flex-shrink:0;align-items:center;gap:3px;padding:3px 8px;font-family:inherit;font-size:13px;font-weight:700;transition:transform .1s,box-shadow .1s;display:inline-flex;position:relative}.pm-line-price:hover{transform:translateY(-1px);box-shadow:0 2px 6px #00000014}.pm-line-price.selected{transform:translateY(-1px);box-shadow:0 0 0 2px #7c3aed,0 0 0 4px #7c3aed40}.pm-line-price-menu{z-index:50;cursor:default;background:#fff;border:1px solid #e2e8f0;border-radius:6px;min-width:200px;margin-top:4px;padding:4px;font-size:11px;position:absolute;top:100%;left:0;box-shadow:0 8px 24px #0000001f}.pm-line-price-menu-head{color:#94a3b8;border-bottom:1px solid #f1f5f9;margin-bottom:2px;padding:4px 10px;font-size:10px}.pm-line-price-menu button{text-align:left;cursor:pointer;color:#475569;background:0 0;border:none;border-radius:4px;width:100%;padding:5px 10px;font-family:inherit;font-size:11px;display:block}.pm-line-price-menu button:hover:not(:disabled){color:#0f172a;background:#f1f5f9}.pm-line-price-menu button:disabled{color:#cbd5e1;cursor:not-allowed}.pm-line-price-menu button.primary{color:#5b21b6;border-top:1px solid #f1f5f9;margin-top:2px;font-weight:700}.pm-line-price-menu button.primary:hover:not(:disabled){background:#f5f3ff}.pm-rule-price-hint{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;align-items:center;gap:6px;margin-top:4px;padding:6px 10px;font-size:11px;display:flex}.pm-rule-price-hint button{color:#1d4ed8;cursor:pointer;background:0 0;border:1px solid #93c5fd;border-radius:4px;margin-left:auto;padding:2px 8px;font-family:inherit;font-size:10px;font-weight:700}.pm-rule-price-hint button:hover{background:#dbeafe}.pm-rule-match-count{border-radius:6px;align-items:center;gap:8px;margin-top:4px;padding:8px 12px;font-size:12px;font-weight:600;display:flex}.pm-rule-match-count.ok{color:#065f46;background:#f0fdf4;border:1px solid #86efac}.pm-rule-match-count.warn{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.pm-rule-match-count.zero{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.pm-rule-match-count .num{font-variant-numeric:tabular-nums;font-size:14px;font-weight:800}.pm-rule-match-count.ok .num{color:#047857}.pm-rule-match-count.warn .num{color:#b45309}.pm-rule-match-count.zero .num{color:#b91c1c}.pm-rule-match-count .sub{font-weight:400}.pm-axis-inline{background:#faf5ff;border:1px solid #e9d5ff;border-radius:6px;flex-wrap:wrap;align-items:center;gap:3px;padding:2px 6px 2px 4px;display:inline-flex}.pm-axis-inline-label{color:#5b21b6;padding:0 4px 0 2px;font-size:10px;font-weight:700}.chip.chip-active{color:#fff;cursor:pointer;background:#5b21b6;border-color:#5b21b6}.chip.chip-cand{color:#64748b;cursor:pointer;background:#fff;border-color:#e2e8f0;transition:background .12s}.chip.chip-cand:hover{color:#334155;background:#f8fafc}.pm-axis-inline-reset{color:#ef4444;cursor:pointer;background:#fff;border:1px solid #fecaca;border-radius:4px;padding:1px 6px;font-size:10px;font-weight:600;line-height:1.5}.pm-axis-inline-reset:hover{background:#fef2f2}.pm-axis-inline-collapse{color:#5b21b6;cursor:pointer;background:#ede9fe;border:1px solid #c4b5fd;border-radius:4px;padding:1px 6px;font-size:10px;font-weight:700;line-height:1.5}.pm-axis-inline-collapse:hover{background:#ddd6fe}.pm-line-recommend-chip{color:#c2410c;cursor:pointer;letter-spacing:-.01em;background:#fff7ed;border:1px solid #fed7aa;border-radius:4px;flex-shrink:0;align-items:center;gap:4px;margin-right:4px;padding:2px 8px;font-size:10px;font-weight:700;transition:filter .12s;display:inline-flex}.pm-line-recommend-chip:hover{filter:brightness(.96)}.pm-line-recommend-chip.same{color:#166534;cursor:default;background:#f0fdf4;border-color:#bbf7d0}.pm-line-new-preset-btn{color:#6d28d9;cursor:pointer;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:4px;flex-shrink:0;margin-right:4px;padding:2px 8px;font-family:inherit;font-size:10px;font-weight:700;transition:filter .12s,background .12s}.pm-line-new-preset-btn:hover{background:#ede9fe}.pm-cache-link{color:#94a3b8;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;text-decoration:none;transition:color .1s,background .1s;display:inline-flex}.pm-cache-link:hover{color:#1d4ed8;background:#eff6ff}.pm-cache-badges{flex-wrap:wrap;gap:4px;margin-top:5px;display:flex}.pm-cache-badge{cursor:pointer;background:0 0;border:1px solid;border-radius:4px;padding:1px 7px;font-family:inherit;font-size:11px;line-height:1.5;transition:filter .1s,box-shadow .1s}.pm-cache-badge:hover{filter:brightness(.96)}.pm-cache-badge.hit{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.pm-cache-badge.miss{color:#991b1b;background:#fef2f2;border-color:#fecaca}.pm-cache-badge.active{color:#1d4ed8;background:#eff6ff;border-color:#60a5fa;box-shadow:0 0 0 2px #3b82f62e}.pm-cache-badge-cat{color:#94a3b8;margin-right:3px}.pm-cache-badge.active .pm-cache-badge-cat{color:#93c5fd}.pm-facet-panel{background:#fafafa;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:8px;padding:10px 12px}.pm-facet-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.pm-facet-rows{flex-direction:column;gap:6px;display:flex}.pm-facet-row{grid-template-columns:64px 1fr;align-items:start;gap:8px;display:grid}.pm-facet-label{color:#475569;text-align:right;padding-top:4px;font-size:11px;font-weight:700}.pm-facet-chips{flex-wrap:wrap;gap:4px;display:flex}.pm-facet-chip{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-family:inherit;font-size:11px;transition:filter .1s,box-shadow .1s,border-color .1s;display:inline-flex}.pm-facet-chip:hover{background:#f1f5f9}.pm-facet-chip.miss{color:#64748b;background:#fff;border-style:dashed;border-color:#cbd5e1}.pm-facet-chip.active{color:#1d4ed8;background:#eff6ff;border-style:solid;border-color:#60a5fa;box-shadow:0 0 0 2px #3b82f62e}.pm-facet-count{color:#94a3b8;background:#f1f5f9;border-radius:3px;padding:0 4px;font-size:10px;font-weight:600}.pm-facet-chip.active .pm-facet-count{color:#1d4ed8;background:#dbeafe}.pm-facet-more{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 8px;font-family:inherit;font-size:11px}.pm-facet-more:hover{color:#1d4ed8;text-decoration:underline}.pm-filter-chip-bar{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;padding:8px 10px;display:flex}.pm-filter-chip{color:#1d4ed8;cursor:pointer;background:#eff6ff;border:1px solid #93c5fd;border-radius:4px;align-items:center;padding:2px 8px;font-family:inherit;font-size:11px;display:inline-flex}.pm-filter-chip:hover{background:#dbeafe}.pm-menu{z-index:300;border:1px solid var(--border-color,#e5e7eb);background:#fff;border-radius:10px;flex-direction:column;gap:2px;min-width:220px;padding:6px;display:flex;position:absolute;box-shadow:0 12px 32px #0f172a2e}.pm-menu-head{color:#0f172a;border-bottom:1px solid #f1f5f9;margin-bottom:4px;padding:8px 12px 6px;font-size:13px}.pm-menu-section{color:#94a3b8;text-transform:uppercase;padding:6px 12px 2px;font-size:10px;font-weight:700}.pm-menu-item{color:#0f172a;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-family:inherit;font-size:13px;font-weight:500;display:flex}.pm-menu-item:hover{background:#f1f5f9}.pm-menu-item-danger{color:#b91c1c}.pm-menu-item-danger:hover{background:#fef2f2}.settings-template-section{border-top:1px dashed #e2e8f0;margin-top:12px;padding-top:10px}.settings-template-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px;display:flex}.settings-template-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px;display:grid}.settings-template-card{cursor:pointer;text-align:left;background:#fafafa;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;font-family:inherit;transition:border-color .1s,background .1s,transform .1s;display:flex}.settings-template-card:hover{background:#fff;border-color:#7c3aed;transform:translateY(-1px)}.settings-template-label{color:#0f172a;font-size:13px;font-weight:700}.settings-template-desc{color:#64748b;font-size:11px}@keyframes popUp{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.search-history-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:24px;display:grid}.history-card{border:1px solid var(--border-color);cursor:pointer;background:#fff;border-radius:16px;flex-direction:column;gap:12px;padding:16px;transition:all .2s;display:flex;position:relative}.history-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 10px 20px #0066ff0d}.history-card .h-top{justify-content:space-between;align-items:flex-start;display:flex}.history-card .h-query-box{flex:1;align-items:center;gap:10px;display:flex}.history-card .h-query{color:#1e293b;word-break:break-all;font-size:1.1rem;font-weight:700;line-height:1.4}.history-card .h-date{color:#94a3b8;align-items:center;gap:4px;font-size:.8rem;display:flex}.history-card .h-actions{opacity:0;gap:8px;transition:opacity .2s;display:flex}.history-card:hover .h-actions{opacity:1}.btn-icon-sm{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.empty-state{text-align:center;color:#94a3b8;flex-direction:column;align-items:center;gap:16px;padding:100px 20px;display:flex}.empty-state h3{color:#64748b;font-size:1.2rem}.page-header-row{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.btn-outline{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.btn-outline:hover{color:#1e293b;background:#f8fafc;border-color:#cbd5e1}.btn-action{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;transition:all .2s;display:flex}.saved-rank-tag{color:#ea580c;background:#fff7ed;border:1px solid #ffedd5;border-radius:4px;padding:2px 6px;font-size:.7rem;font-weight:700}.saved-mall-tag{background:var(--c-neutral-bg);color:var(--c-neutral-fg);border:1px solid var(--c-neutral-border);border-radius:4px;padding:2px 6px;font-size:.7rem;font-weight:700}.saved-memo-tag{background:var(--c-memo-bg);color:var(--c-memo-fg);border:1px solid var(--c-memo-border);border-radius:4px;margin-left:4px;padding:2px 6px;font-size:.7rem;font-weight:700}.saved-parse-badges{flex-wrap:nowrap;align-items:center;gap:3px;margin-left:0;display:inline-flex}.analysis-facet-panel{background:#fafafa;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:6px;margin:8px 0;padding:8px 12px;display:flex}.analysis-facet-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.analysis-facet-row{grid-template-columns:64px 1fr;align-items:start;gap:8px;display:grid}.analysis-facet-label{color:#475569;text-align:right;padding-top:4px;font-size:11px;font-weight:700}.analysis-facet-chips{flex-wrap:wrap;gap:4px;display:flex}.analysis-facet-chip{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:4px;align-items:center;gap:4px;padding:2px 7px;font-family:inherit;font-size:11px;transition:filter .12s;display:inline-flex}.analysis-facet-chip:hover{background:#f1f5f9}.analysis-facet-chip.active{color:#1d4ed8;background:#eff6ff;border-color:#60a5fa;font-weight:700;box-shadow:0 0 0 2px #3b82f62e}.analysis-facet-chip.fallback{color:#64748b;border-style:dashed;border-color:#cbd5e1}.analysis-facet-chip.fallback.active{color:#1d4ed8;background:#eff6ff;border-style:solid;border-color:#60a5fa}.analysis-facet-count{color:#94a3b8;background:#f1f5f9;border-radius:3px;padding:0 4px;font-size:10px;font-weight:600}.analysis-facet-chip.active .analysis-facet-count{color:#1d4ed8;background:#dbeafe}.analysis-facet-chip.preset-only{color:#94a3b8;background:#fff;border-style:dashed}.analysis-facet-chip.preset-only:hover{color:#64748b;background:#f1f5f9}.analysis-facet-chip.preset-only .analysis-facet-count{color:#94a3b8;background:#f1f5f9}.analysis-facet-chip.readonly{cursor:default;color:#475569;background:#fafafa;border-color:#e2e8f0}.analysis-facet-chip.readonly:hover{background:#fafafa}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.analysis-stats-header{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-bottom:16px;display:grid}.analysis-stat-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px}.analysis-stat-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;font-size:10px}.analysis-stat-value{font-variant-numeric:tabular-nums;font-size:16px;font-weight:700}.analysis-stat-unit{color:#94a3b8;margin-left:3px;font-size:11px;font-weight:500}.cache-item-price-trend{color:#0369a1;cursor:pointer;background:#e0f2fe;border:1px solid #bae6fd;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:16px;line-height:1;text-decoration:none;transition:background .1s,transform .1s;display:inline-flex}.cache-item-price-trend:hover{background:#bae6fd;transform:scale(1.08)}.analysis-focus-banner{color:#78350f;background:linear-gradient(90deg,#fef3c7,#fef9c3);border:1px solid #fcd34d;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:8px 12px;font-size:13px;display:flex}.analysis-focus-banner strong{color:#92400e}.pm-algo-pipeline{border-top:1px dashed #cbd5e1;align-items:stretch;gap:4px;margin-top:8px;padding-top:8px;font-family:inherit;display:flex;overflow-x:auto}.pm-algo-pipeline-step{background:#fff;border:1px solid #e2e8f0;border-radius:6px;flex-direction:column;flex:1;gap:2px;min-width:120px;padding:6px 8px;display:flex}.pm-algo-pipeline-step.result{background:#ecfdf5;border-color:#86efac}.pm-algo-pipeline-label{color:#0f172a;font-size:11px;font-weight:700}.pm-algo-pipeline-mode{color:#7c3aed;background:#ede9fe;border-radius:3px;align-self:flex-start;padding:1px 6px;font-size:10px;font-weight:600}.pm-algo-pipeline-desc{color:#64748b;font-size:10px;line-height:1.3}.pm-algo-pipeline-arrow{color:#94a3b8;align-self:center;padding:0 2px;font-size:16px;font-weight:700}.pm-score-panel{border:1px solid var(--border-color,#e5e7eb);background:#fff;border-radius:10px;margin-bottom:14px;padding:12px 14px}.pm-score-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.pm-score-rows{flex-direction:column;gap:4px;display:flex}.pm-score-row{cursor:pointer;border:1px solid #0000;border-radius:6px;grid-template-columns:24px 1fr 1fr 60px 60px;align-items:center;gap:8px;padding:4px 6px;display:grid}.pm-score-row:hover{background:#f8fafc;border-color:#e2e8f0}.pm-score-row.winner{background:#f0fdf4;border-color:#bbf7d0}.pm-score-row.current{font-weight:700}.pm-score-row.winner.current{background:#d1fae5;border-color:#6ee7b7}.pm-score-rank{color:#64748b;text-align:center;font-size:11px;font-weight:700}.pm-score-name{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.pm-score-bar-wrap{background:#f1f5f9;border-radius:4px;height:8px;overflow:hidden}.pm-score-bar{background:linear-gradient(90deg,#86efac,#16a34a);height:100%;transition:width .3s}.pm-score-value{color:#0f172a;text-align:right;font-size:11px;font-weight:700}.pm-score-axes{color:#94a3b8;text-align:right;font-size:10px}.pm-score-hint{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;margin-top:8px;padding:6px 10px;font-size:11px}.pm-algo-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:6px;margin-bottom:10px;padding:8px 12px;display:flex}.pm-algo-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pm-algo-label{color:#64748b;min-width:80px;font-size:11px;font-weight:600}.pm-algo-toggle{border:1px solid #cbd5e1;border-radius:6px;gap:0;display:inline-flex;overflow:hidden}.pm-algo-opt{color:#64748b;cursor:pointer;background:#fff;border:none;border-right:1px solid #cbd5e1;padding:4px 10px;font-family:inherit;font-size:11px;font-weight:600}.pm-algo-opt:last-child{border-right:none}.pm-algo-opt:hover{background:#f1f5f9}.pm-algo-opt.active{color:#fff;background:#7c3aed}.pm-algo-locks{flex-wrap:wrap;gap:4px;display:inline-flex}.pm-algo-lock-chip{color:#92400e;background:#fef3c7;border:1px solid #fde68a;border-radius:4px;align-items:center;gap:4px;padding:2px 6px;font-size:11px;display:inline-flex}.pm-algo-lock-clear{cursor:pointer;color:#92400e;background:0 0;border:none;justify-content:center;align-items:center;width:14px;height:14px;padding:0;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.pm-algo-lock-clear:hover{color:#b91c1c}.pm-preview-select-panel{border:1px solid var(--border-color,#e5e7eb);background:#fff;border-radius:10px;margin-bottom:14px;padding:12px 14px}.pm-preview-select-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.pm-preview-select-body{flex-direction:column;gap:8px;display:flex}.pm-preview-select-result{border-top:1px dashed #e2e8f0;flex-direction:column;gap:8px;padding-top:8px;display:flex}.pm-preview-step{flex-direction:column;gap:4px;display:flex}.pm-preview-step-label{color:#64748b;font-size:11px;font-weight:600}.pm-preview-arrow{color:#94a3b8;text-align:center;padding:2px 0;font-size:11px}.pm-preview-chips{flex-wrap:wrap;gap:6px;display:flex}.pm-preview-chip{color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;display:inline-flex}.pm-preview-chip.primary{color:#065f46;background:#ecfdf5;border-color:#86efac;font-weight:700}.pm-preview-chip-idx{color:#fff;background:#cbd5e1;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;font-weight:800;display:inline-flex}.pm-preview-chip-idx.primary{background:#16a34a}.pm-preview-chip-axes{color:#94a3b8;font-size:10px}.pm-learning-panel{background:#faf5ff;border:1px solid #e9d5ff;border-radius:10px;margin-bottom:14px;padding:12px 14px}.pm-learning-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.pm-learning-group{border-top:1px dashed #e9d5ff;padding:6px 0}.pm-learning-group:first-of-type{border-top:none;padding-top:0}.pm-learning-group-head{align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.pm-learning-chips{flex-wrap:wrap;gap:4px;display:flex}.pm-learning-chip{background:#fff;border:1px solid #e2e8f0;border-radius:4px;align-items:center;gap:4px;padding:2px 6px;font-size:11px;display:inline-flex}.pm-learning-chip.new{border-color:#c084fc}.pm-learning-chip.has{color:#14532d;background:#f0fdf4;border-color:#bbf7d0}.pm-learning-count{color:#94a3b8;background:#f1f5f9;border-radius:3px;padding:0 4px;font-size:10px;font-weight:700}.pm-learning-add{color:#fff;cursor:pointer;background:#7c3aed;border:none;border-radius:3px;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.pm-learning-add:hover{background:#6d28d9}.cache-row-preset-chip{color:#5b21b6;cursor:default;letter-spacing:-.01em;background:#ede9fe;border:1px solid #ddd6fe;border-radius:4px;align-items:center;gap:3px;padding:1px 6px;font-size:10px;font-weight:600;display:inline-flex}.cache-row-preset-chip.unmapped{color:#92400e;background:#fef3c7;border-color:#fde68a}.clickable-mall{cursor:pointer;text-underline-offset:3px;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:all .2s}.clickable-mall:hover{color:var(--primary);-webkit-text-decoration-color:var(--primary);text-decoration-color:var(--primary);background-color:#f0f7ff}.clickable-mall.active{background:var(--primary);color:#fff;border-color:var(--primary)}.clickable-mall.active:hover{background:#1e40af}.mall-filter-tag{color:var(--primary);background-color:#f0f7ff;border:1px solid #0066ff1a;border-radius:20px;align-items:center;gap:8px;padding:6px 12px;font-size:.85rem;font-weight:700;display:flex}.mall-filter-tag button{cursor:pointer;color:var(--primary);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:2px;transition:all .2s;display:flex}.mall-filter-tag button:hover{background-color:#0066ff1a;transform:scale(1.1)}.axis-filter-chip{color:#fff;background:#1e40af;border-radius:999px;align-items:center;gap:4px;padding:4px 6px 4px 10px;font-size:12px;font-weight:600;display:inline-flex}.axis-filter-chip .axis-name{opacity:.65;margin-right:2px;font-size:10px;font-weight:500}.axis-filter-chip button{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:999px;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-size:11px;line-height:1;display:inline-flex}.axis-filter-chip button:hover{background:#fff6}.filter-clear-all{color:#64748b;cursor:pointer;background:0 0;border:1px dashed #cbd5e1;border-radius:4px;padding:3px 10px;font-family:inherit;font-size:11px}.filter-clear-all:hover{color:#b91c1c;background:#fef2f2;border-color:#fca5a5}.chip.chip-filter-active{position:relative;box-shadow:0 0 0 2px #1d4ed8}.chip.chip-filter-active:before{content:"✓";margin-right:3px;font-weight:900}.dropdown-item-filter{cursor:pointer;color:#1e40af;background:#dbeafe;border-bottom:1px solid #f1f5f9;border-radius:3px;margin-bottom:2px;padding:4px 8px;font-size:11px;font-weight:600}.dropdown-item-filter:hover{background:#bfdbfe}.individual-move-box{color:#64748b;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;transition:all .2s;display:flex;position:relative}.individual-move-box:hover{color:var(--primary);background-color:#f1f5f9}.individual-move-box select{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.folder-row-container.drag-over{border:2px dashed var(--primary);background-color:#f0f7ff;border-radius:12px;transform:scale(1.02)}.spin{animation:1s linear infinite spin}.analysis-mall-picker{flex-wrap:wrap;gap:8px;margin:16px 0 24px;display:flex}.mall-chip{cursor:pointer;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;transition:all .15s;display:inline-flex}.mall-chip:hover{border-color:var(--primary);color:var(--primary)}.mall-chip.active{background:var(--primary);color:#fff;border-color:var(--primary)}.mall-chip-count{background:#0000001a;border-radius:10px;padding:0 6px;font-size:11px;font-weight:600}.mall-chip.active .mall-chip-count{background:#ffffff40}.analysis-placeholder{text-align:center;color:#94a3b8;background:#f8fafc;border-radius:12px;padding:40px}.analysis-body h3.sec-title{color:#475569;text-transform:uppercase;letter-spacing:.5px;margin:24px 0 12px;font-size:13px;font-weight:600}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:8px;display:grid}.stat-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px}.stat-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:500}.stat-value{color:#0f172a;font-variant-numeric:tabular-nums;margin-top:4px;font-size:18px;font-weight:700}.histogram{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:12px 16px}.hist-row{grid-template-columns:200px 1fr 60px;align-items:center;gap:10px;margin:6px 0;font-size:13px;display:grid}.hist-range{color:#64748b;font-variant-numeric:tabular-nums;font-size:12px}.hist-bar-wrap{background:#e2e8f0;border-radius:4px;height:18px;overflow:hidden}.hist-bar{background:var(--primary);border-radius:4px;height:100%;transition:width .3s}.hist-count{text-align:right;color:#475569;font-variant-numeric:tabular-nums;font-weight:600}.two-col{grid-template-columns:1fr 1fr;gap:20px;margin-top:16px;display:grid}.rank-list{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin:0;padding:0;list-style:none}.rank-list li{border-bottom:1px solid #f1f5f9;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;padding:10px 14px;font-size:13px;display:grid}.rank-list li:last-child{border-bottom:none}.rank-no{color:#94a3b8;font-size:12px;font-weight:700}.rank-name{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rank-price{color:var(--primary);font-variant-numeric:tabular-nums;font-weight:600}@media (width<=720px){.two-col{grid-template-columns:1fr}.hist-row{grid-template-columns:120px 1fr 50px;font-size:12px}}.keyword-table{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.keyword-row{border-bottom:1px solid #f1f5f9;grid-template-columns:1.6fr .5fr 1fr 1fr 1fr;align-items:center;gap:8px;padding:8px 14px;font-size:13px;display:grid}.keyword-row:last-child{border-bottom:none}.keyword-header{color:#475569;text-transform:uppercase;letter-spacing:.3px;background:#eef2ff;font-size:11px;font-weight:700}.kw-name{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.kw-count{color:#64748b;text-align:right;font-variant-numeric:tabular-nums}.kw-num{text-align:right;font-variant-numeric:tabular-nums;color:#334155}.kw-spread{color:var(--primary);font-weight:700}.kw-delta{font-weight:700}.kw-delta.pos{color:#dc2626}.kw-delta.neg{color:#0284c7}.sec-subtitle{color:#94a3b8;text-transform:none;letter-spacing:0;margin-left:8px;font-size:10px;font-weight:400}@media (width<=720px){.keyword-row{grid-template-columns:1fr .4fr .8fr .8fr;gap:4px;padding:6px 8px;font-size:11px}.keyword-row>span:nth-child(4),.keyword-row>span:nth-child(5){display:none}}.size-row{border-bottom:1px solid #f1f5f9;grid-template-columns:1fr .5fr 1fr 1fr 1fr 1fr;align-items:center;gap:8px;padding:8px 14px;font-size:13px;display:grid}.size-row:last-child{border-bottom:none}.size-header{color:#475569;text-transform:uppercase;letter-spacing:.3px;background:#eef2ff;font-size:11px;font-weight:700}@media (width<=720px){.keyword-row,.size-row{grid-template-columns:1fr .5fr 1fr 1fr;gap:4px;padding:6px 8px;font-size:11px}.keyword-row>span:nth-child(4),.size-row>span:nth-child(5){display:none}}.stem-filter-input{background:#fff;border:1px solid #e2e8f0;border-radius:10px;outline:none;width:100%;margin:12px 0 20px;padding:10px 14px;font-size:13px}.stem-filter-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0066ff1a}.stem-groups{flex-direction:column;gap:12px;display:flex}.stem-group{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.stem-header{background:#eef2ff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.stem-name{color:#0f172a;font-size:14px;font-weight:700}.stem-range{color:#475569;font-variant-numeric:tabular-nums;font-size:12px}.stem-options{padding:4px 0}.stem-opt-row{border-bottom:1px solid #f1f5f9;grid-template-columns:130px 1fr 120px;align-items:center;gap:8px;padding:6px 16px;font-size:13px;display:grid}.stem-opt-row:last-child{border-bottom:none}.motion-chip{text-align:center;color:#334155;background:#e2e8f0;border-radius:12px;padding:3px 10px;font-size:11px;font-weight:700}.motion-chip.motion-회전브레이크,.motion-chip.motion-회전-브레이크{color:#9d174d;background:#fce7f3}.stem-opt-price{color:var(--primary);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.stem-opt-src{color:#64748b;text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.stem-opt-src a{color:#64748b;text-decoration:none}.stem-opt-src a:hover{color:var(--primary);text-decoration:underline}@media (width<=720px){.stem-opt-row{grid-template-columns:90px 1fr 80px;gap:4px;padding:4px 10px;font-size:11px}.stem-opt-price{font-size:12px}}.analysis-page{min-height:calc(100vh - var(--header-h));grid-template-columns:320px 1fr;gap:0;display:grid}.analysis-page.no-sidebar{grid-template-columns:1fr}.analysis-page.no-sidebar .analysis-main{width:100%;max-width:1200px;margin:0 auto}.analysis-sidebar{max-height:calc(100vh - var(--header-h));top:var(--header-h);background:#f8fafc;border-right:1px solid #e2e8f0;flex-direction:column;display:flex;position:sticky}.analysis-sidebar-head{background:#fff;border-bottom:1px solid #e2e8f0;padding:14px}.analysis-sidebar-head h3{color:#0f172a;margin-bottom:10px;font-size:14px;font-weight:800}.analysis-sidebar-search{border:1px solid #e2e8f0;border-radius:8px;outline:none;width:100%;margin-bottom:10px;padding:8px 12px;font-size:12px}.analysis-sidebar-search:focus{border-color:var(--primary)}.analysis-mall-chips{flex-wrap:wrap;gap:5px;display:flex}.mall-chip-sm{padding:3px 8px;font-size:11px}.analysis-sidebar-list{flex:1;padding:6px;overflow-y:auto}.sidebar-product-item{cursor:pointer;border-radius:8px;gap:8px;margin-bottom:2px;padding:8px;transition:background .15s;display:flex}.sidebar-product-item img{object-fit:cover;background:#e2e8f0;border-radius:6px;flex-shrink:0;width:40px;height:40px}.sidebar-img-placeholder{color:#94a3b8;background:#e2e8f0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.sidebar-product-text{flex:1;min-width:0}.sidebar-product-name{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;line-height:1.3;overflow:hidden}.sidebar-product-meta{color:#64748b;margin-top:2px;font-size:10px}.analysis-main{min-width:0;padding:20px 30px}.analysis-card-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;display:grid}.analysis-product-card{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;transition:all .2s;overflow:hidden}.analysis-product-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 6px 18px #00000014}.analysis-product-card img{aspect-ratio:1;object-fit:cover;background:#f1f5f9;width:100%}.analysis-card-img-placeholder{aspect-ratio:1;background:#f1f5f9;width:100%}.analysis-card-body{padding:10px}.analysis-card-name{color:#0f172a;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.analysis-card-meta{color:#64748b;margin-top:4px;font-size:10px}.analysis-product-header{background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:flex-start;gap:16px;margin-bottom:20px;padding:14px;display:flex;position:relative}.analysis-product-header img{object-fit:cover;background:#f1f5f9;border-radius:8px;flex-shrink:0;width:80px;height:80px}.analysis-product-info{flex:1;min-width:0}.analysis-product-mall{color:var(--primary);font-size:11px;font-weight:700}.analysis-product-name{color:#0f172a;margin:2px 0 6px;font-size:15px;font-weight:700;line-height:1.3}.analysis-product-price{color:#0f172a;font-size:16px;font-weight:800}.orig-strike{color:#94a3b8;margin-left:6px;font-size:12px;font-weight:500;text-decoration:line-through}.analysis-product-link{color:#64748b;margin-top:6px;font-size:11px;text-decoration:none;display:inline-block}.analysis-product-link:hover{color:var(--primary);text-decoration:underline}.analysis-clear-btn{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:16px;display:flex;position:absolute;top:10px;right:10px}.matrix-list{flex-direction:column;gap:18px;display:flex}.grade-matrix{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.grade-matrix-header{background:#eef2ff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.grade-matrix-title{color:#0f172a;font-size:14px;font-weight:800}.grade-matrix-count{color:#64748b;font-size:11px}.price-matrix{border-collapse:collapse;width:100%}.price-matrix th,.price-matrix td{text-align:center;border-bottom:1px solid #f1f5f9;border-right:1px solid #f1f5f9;padding:8px 10px;font-size:12px}.price-matrix th:last-child,.price-matrix td:last-child{border-right:none}.matrix-corner{color:#64748b;text-align:left;background:#f8fafc;font-size:10px;font-weight:600}.matrix-motion{color:#334155;background:#f8fafc;font-size:11px;font-weight:700}.matrix-size{color:#0f172a;background:#f8fafc;padding-right:14px;font-weight:700;text-align:right!important}.matrix-cell{font-variant-numeric:tabular-nums;position:relative}.matrix-cell.empty{color:#cbd5e1}.matrix-cell.sold-out-cell .matrix-price{color:#94a3b8;text-decoration:line-through}.matrix-cell.sold-out-cell .matrix-price{color:#94a3b8}.matrix-soldout-badge{color:#fff;vertical-align:middle;background:#ef4444;border-radius:3px;margin-left:4px;padding:1px 5px;font-size:9px;font-weight:700;display:inline-block}.matrix-cell-count{color:#94a3b8;font-size:9px;position:absolute;top:2px;right:3px}.matrix-motion-고정{background:#fef3c7!important}.matrix-motion-회전{background:#dbeafe!important}.matrix-motion-회전브레이크,.matrix-motion-회전-브레이크{background:#fce7f3!important}.matrix-motion-브레이크{background:#fecaca!important}.matrix-motion-휠세트{background:#d1fae5!important}.matrix-unparsed{padding:8px 14px;font-size:11px}.matrix-unparsed summary{cursor:pointer;color:#64748b;font-weight:600}.matrix-unparsed ul{margin:6px 0 0;padding:0;list-style:none}.matrix-unparsed li{color:#64748b;justify-content:space-between;padding:3px 0;display:flex}.analysis-placeholder.small{padding:14px;font-size:12px}.analysis-link-btn{color:#4338ca;background:#eef2ff;border:1px solid #c7d2fe;border-radius:6px;align-items:center;gap:4px;margin-left:10px;padding:5px 10px;font-size:11px;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex}.analysis-link-btn:hover{background:#e0e7ff;border-color:#818cf8}@media (width<=960px){.analysis-page{grid-template-columns:1fr}.analysis-sidebar{border-bottom:1px solid #e2e8f0;border-right:none;max-height:300px;position:static}.analysis-main{padding:14px}.price-matrix th,.price-matrix td{padding:6px 4px;font-size:10px}}.subprod-count{color:#64748b;margin:4px 0 12px;font-size:12px;font-weight:600}.subprod-accordion{flex-direction:column;gap:6px;display:flex}.subprod-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.subprod-summary{cursor:pointer;-webkit-user-select:none;user-select:none;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;list-style:none;display:flex}.subprod-summary::-webkit-details-marker{display:none}.subprod-item[open]>.subprod-summary{background:#eef2ff;border-bottom:1px solid #e2e8f0}.subprod-toggle{color:#64748b;width:12px;font-size:10px;transition:transform .2s}.subprod-item[open]>.subprod-summary>.subprod-toggle{transform:rotate(90deg)}.subprod-grade{border-radius:10px;flex-shrink:0;padding:3px 10px;font-size:11px;font-weight:800}.subprod-grade.grade-경량{color:#166534;background:#dcfce7}.subprod-grade.grade-중량{color:#854d0e;background:#fef9c3}.subprod-grade.grade-광폭{color:#1e40af;background:#dbeafe}.subprod-grade.grade-소폭{color:#3730a3;background:#e0e7ff}.subprod-grade.grade-고중량{color:#991b1b;background:#fecaca}.subprod-grade.grade-{color:#6b7280;background:#e5e7eb}.subprod-size{color:#0f172a;flex-shrink:0;min-width:120px;font-size:13px;font-weight:700}.subprod-motion-list{flex-wrap:wrap;flex:1;justify-content:flex-end;gap:6px;display:flex}.subprod-motion-chip{background:#f1f5f9;border-radius:12px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;line-height:1.3;display:inline-flex}.subprod-motion-chip .chip-label{color:#334155;font-weight:700}.subprod-motion-chip .chip-price{color:var(--primary);font-variant-numeric:tabular-nums;font-weight:800}.subprod-motion-chip .chip-price.sold-out{color:#94a3b8;text-decoration:line-through}.subprod-motion-chip.motion-고정{background:#fef3c7}.subprod-motion-chip.motion-고정 .chip-label{color:#92400e}.subprod-motion-chip.motion-회전{background:#dbeafe}.subprod-motion-chip.motion-회전 .chip-label{color:#1e40af}.subprod-motion-chip.motion-회전브레이크{background:#fce7f3}.subprod-motion-chip.motion-회전브레이크 .chip-label{color:#9d174d}.subprod-motion-chip.motion-브레이크{background:#fecaca}.subprod-motion-chip.motion-브레이크 .chip-label{color:#991b1b}.subprod-motion-chip.motion-휠세트{background:#d1fae5}.subprod-motion-chip.motion-휠세트 .chip-label{color:#065f46}.subprod-motion-chip.motion-회전탑브레이크{background:#e9d5ff}.subprod-motion-chip.motion-회전탑브레이크 .chip-label{color:#6b21a8}.subprod-motion-chip.motion-none{background:#e5e7eb}.subprod-detail{background:#fafbfc;padding:10px 14px}.subprod-detail-title{color:#64748b;text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px;font-size:11px;font-weight:700}.raw-opt-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.raw-opt-list li{background:#fff;border:1px solid #f1f5f9;border-radius:6px;grid-template-columns:100px 1fr 90px;align-items:center;gap:10px;padding:6px 8px;font-size:11px;display:grid}.raw-opt-list li.sold-out-row{opacity:.6}.raw-motion-chip{color:#475569;text-align:center;background:#e2e8f0;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.raw-motion-chip.motion-고정{color:#92400e;background:#fef3c7}.raw-motion-chip.motion-회전{color:#1e40af;background:#dbeafe}.raw-motion-chip.motion-회전브레이크{color:#9d174d;background:#fce7f3}.raw-motion-chip.motion-브레이크{color:#991b1b;background:#fecaca}.raw-motion-chip.motion-휠세트{color:#065f46;background:#d1fae5}.raw-opt-name{color:#334155;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.raw-opt-price{text-align:right;color:var(--primary);font-variant-numeric:tabular-nums;font-weight:700}.sold-badge{color:#fff;background:#ef4444;border-radius:3px;margin-left:4px;padding:1px 5px;font-size:9px;font-weight:700;display:inline-block}@media (width<=720px){.subprod-summary{gap:6px;padding:8px 10px}.subprod-size{min-width:auto;font-size:12px}.subprod-motion-list{justify-content:flex-start;gap:3px;width:100%}.subprod-motion-chip{padding:2px 6px;font-size:10px}.raw-opt-list li{grid-template-columns:60px 1fr 70px;font-size:10px}}.price-tree{flex-direction:column;gap:4px;display:flex}.tree-node{background:#fff;border-radius:6px;overflow:hidden}.tree-node.level-grade{border:1px solid #e2e8f0;margin-bottom:8px}.tree-node.level-size{border-left:2px solid #e2e8f0;border-radius:0;margin-left:14px}.tree-node.level-material{border-left:2px solid #dbeafe;border-radius:0;margin-left:14px}.tree-summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:6px 12px;list-style:none;display:flex}.tree-summary::-webkit-details-marker{display:none}.tree-toggle{color:#94a3b8;width:10px;font-size:9px;transition:transform .15s}.tree-node[open]>.tree-summary>.tree-toggle{transform:rotate(90deg)}.level-grade>.tree-summary{background:#eef2ff;padding:10px 14px}.level-grade[open]>.tree-summary{border-bottom:1px solid #e2e8f0}.level-size>.tree-summary{padding-left:18px}.level-material>.tree-summary{padding-left:18px;font-size:12px}.tree-children{padding:4px 0 6px}.grade-badge{border-radius:10px;padding:3px 10px;font-size:11px;font-weight:800;display:inline-block}.grade-badge.grade-경량{color:#166534;background:#dcfce7}.grade-badge.grade-중량{color:#854d0e;background:#fef9c3}.grade-badge.grade-광폭{color:#1e40af;background:#dbeafe}.grade-badge.grade-소폭{color:#3730a3;background:#e0e7ff}.grade-badge.grade-고중량{color:#991b1b;background:#fecaca}.grade-badge{color:#6b7280;background:#e5e7eb}.size-label{color:#0f172a;font-size:13px;font-weight:700}.material-label{color:#475569;background:#f1f5f9;border-radius:10px;padding:2px 8px;font-size:12px;font-weight:600}.tree-leaves{flex-direction:column;gap:3px;padding:4px 18px 8px 36px;display:flex}.tree-leaf{background:#fafbfc;border:1px solid #f1f5f9;border-radius:6px;grid-template-columns:110px 90px 1fr;align-items:center;gap:10px;padding:5px 8px;font-size:11px;display:grid}.tree-leaf.sold-out{opacity:.55}.tree-leaf.sold-out .leaf-price{color:#94a3b8;text-decoration:line-through}.motion-chip{color:#475569;text-align:center;background:#e2e8f0;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.motion-chip.motion-고정{color:#92400e;background:#fef3c7}.motion-chip.motion-회전{color:#1e40af;background:#dbeafe}.motion-chip.motion-회전브레이크{color:#9d174d;background:#fce7f3}.motion-chip.motion-브레이크{color:#991b1b;background:#fecaca}.motion-chip.motion-휠세트{color:#065f46;background:#d1fae5}.motion-chip.motion-회전탑브레이크{color:#6b21a8;background:#e9d5ff}.leaf-price{color:var(--primary);font-variant-numeric:tabular-nums;text-align:right;font-weight:800}.leaf-raw{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.sold-badge{color:#fff;background:#ef4444;border-radius:3px;padding:1px 5px;font-size:9px;font-weight:700;display:inline-block}@media (width<=720px){.tree-leaf{grid-template-columns:80px 70px 1fr;gap:6px;font-size:10px}.tree-node.level-size,.tree-node.level-material{margin-left:8px}.tree-leaves{padding-left:18px}}.tree-leaf{cursor:grab;grid-template-columns:16px 110px 90px 1fr 24px!important}.tree-leaf:active{cursor:grabbing}.tree-leaf.dragging{opacity:.4;background:#fef3c7!important}.leaf-drag-handle{color:#cbd5e1;text-align:center;cursor:grab;-webkit-user-select:none;user-select:none;letter-spacing:-2px;font-size:10px;font-weight:700;line-height:1}.tree-leaf:hover .leaf-drag-handle{color:#64748b}.leaf-clear-btn{color:#cbd5e1;cursor:pointer;background:0 0;border:none;border-radius:4px;width:24px;padding:2px 4px;font-size:12px;transition:all .15s}.leaf-clear-btn:hover{color:var(--primary);background:#eef2ff}.tree-node.drag-hover{outline:2px dashed var(--primary);outline-offset:-2px;background:#eef2ff!important}.add-custom-node-btn{color:#64748b;cursor:pointer;text-align:left;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:6px;width:calc(100% - 24px);margin:6px 12px 6px 18px;padding:6px 12px;font-size:11px;font-weight:600;transition:all .15s;display:block}.add-grade-btn{margin-top:10px}.aggregate-toggle-btn{color:#4338ca;cursor:pointer;text-align:left;background:#eef2ff;border:1px solid #c7d2fe;border-radius:8px;width:100%;margin-top:8px;padding:8px 12px;font-size:11px;font-weight:700;transition:all .15s;display:block}.aggregate-toggle-btn:hover:not(:disabled){background:#e0e7ff;border-color:#818cf8}.aggregate-toggle-btn:disabled{opacity:.5;cursor:not-allowed}.aggregate-toggle-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.tree-leaf.agg-leaf{align-items:center;grid-template-columns:40px 110px 90px 1fr!important}.leaf-product-link{color:#64748b;cursor:pointer;white-space:normal;word-break:break-word;border-radius:4px;padding:2px 6px;font-size:10px;line-height:1.4;transition:all .15s}.leaf-product-link:hover{color:var(--primary);background:#eef2ff;text-decoration:underline}.leaf-thumb{object-fit:cover;background:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;width:40px;height:40px}.leaf-thumb-placeholder{background:linear-gradient(135deg,#f1f5f9,#e2e8f0)}.mall-chip-panel{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:14px;padding:10px 14px}.mall-chip-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.mall-chip-label{color:#475569;font-size:12px;font-weight:600}.mall-chip-selected-count{color:var(--primary);font-weight:500}.mall-chip-actions{align-items:center;gap:10px;display:flex}.mall-chip-toggle{color:#64748b;cursor:pointer;align-items:center;gap:4px;font-size:11px;display:inline-flex}.btn-link-sm{color:#64748b;cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:11px}.btn-link-sm:hover{color:var(--primary);text-decoration:underline}.mall-chip-list{flex-wrap:wrap;gap:6px;display:flex}.mall-chip{cursor:pointer;background:#fff;border:1.5px solid #e5e7eb;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:500;transition:all .15s;display:inline-flex}.mall-chip:hover{transform:translateY(-1px);box-shadow:0 2px 6px #0000000f}.mall-chip.active{font-weight:700;box-shadow:0 1px 3px #0000001f}.mall-chip-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.mall-chip-count{opacity:.75;font-size:10px;font-weight:600}.mall-chip-more{color:#64748b;background:#f1f5f9;border-color:#cbd5e1}.mall-chip-dot-clickable{cursor:pointer;color:#0009;justify-content:center;align-items:center;font-size:7px;font-weight:700;transition:transform .15s;display:inline-flex}.mall-chip-dot-clickable:hover{transform:scale(1.4);box-shadow:0 0 0 2px #ffffff80}.mall-chip:has(.mall-color-picker){z-index:9999}.mall-color-picker{z-index:9999;background:#fff;border:1px solid #e2e8f0;border-radius:6px;min-width:110px;margin-top:4px;padding:5px;position:absolute;top:100%;left:0;box-shadow:0 6px 20px #0003}.mall-color-picker-head{color:#1e293b;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid #f1f5f9;max-width:160px;margin-bottom:4px;padding:1px 3px 4px;font-size:10px;font-weight:700;overflow:hidden}.mall-color-picker-grid{grid-template-columns:repeat(4,22px);gap:3px;margin-bottom:4px;display:grid}.mall-color-swatch{cursor:pointer;border:2px solid #0000;border-radius:4px;width:22px;height:22px;padding:0;transition:all .12s}.mall-color-swatch:hover{border-color:#cbd5e1;transform:scale(1.15)}.mall-color-swatch.active{border-color:#1e293b;box-shadow:0 0 0 1px #0000001a}.mall-color-auto{color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;width:100%;padding:4px 6px;font-size:10px;font-weight:600}.mall-color-auto:hover{color:#1e293b;background:#f1f5f9}.category-filter-panel{background:#fff;border:1px solid #e5e7eb;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;padding:8px 14px;display:flex}.category-filter-label{color:#475569;margin-right:4px;font-size:12px;font-weight:600}.category-filter-select{color:#1e293b;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;min-width:130px;max-width:200px;padding:5px 10px;font-size:12px}.category-filter-select:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #0066ff26}.price-range-group{align-items:center;gap:4px;display:inline-flex}.price-range-input{color:#1e293b;text-align:right;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #cbd5e1;border-radius:6px;width:70px;padding:5px 8px;font-size:12px}.price-range-input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 2px #0066ff26}.price-range-sep{color:#94a3b8;font-size:12px}.price-range-unit{color:#64748b;margin-left:2px;font-size:11px}.sort-toggle-btn{color:#475569;cursor:pointer;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:5px 10px;font-size:12px;font-weight:600;transition:all .15s}.sort-toggle-btn:hover{border-color:var(--primary);color:var(--primary)}.view-toggle-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;margin-left:auto;padding:5px 12px;font-size:12px;font-weight:600;transition:all .15s}.view-toggle-btn:hover{border-color:var(--primary);color:var(--primary)}.view-toggle-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.flat-mall-table{background:#fff;border:1px solid #e5e7eb;border-radius:10px;grid-template-columns:50px 130px 1fr 120px auto;gap:0;margin-top:8px;display:grid;position:relative}.flat-mall-row>*{background:inherit}.flat-mall-row{display:contents}.flat-mall-row>*{border-bottom:1px solid #f1f5f9;align-items:center;padding:10px 12px;font-size:12px;display:flex}.flat-mall-row.head>*{color:#475569;text-transform:uppercase;letter-spacing:.05em;background:#f8fafc;font-size:11px;font-weight:700}.flat-mall-row:last-child>*{border-bottom:none}.flat-mall-thumb{object-fit:cover;border:1px solid #e5e7eb;border-radius:6px;width:36px;height:36px}.flat-mall-thumb-placeholder{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border:1px solid #e5e7eb;border-radius:6px;width:36px;height:36px}.flat-mall-name-pill{color:#fff;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:110px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-block;overflow:hidden}.flat-mall-product{color:#64748b;cursor:pointer;word-break:break-word;border-radius:4px;padding:2px 6px;font-size:11px;line-height:1.4}.flat-mall-price{font-variant-numeric:tabular-nums;color:#1e293b;font-size:13px;font-weight:600}.flat-mall-trophy{color:#f59e0b;margin-right:4px}.flat-parse-badges{flex-wrap:wrap;gap:3px;margin-top:4px;display:flex}.flat-parse-badge{cursor:pointer;white-space:nowrap;z-index:1;border:1px solid;border-radius:3px;padding:1px 6px;font-size:10px;font-weight:500;line-height:1.5;position:relative}.flat-parse-badge:has(.flat-parse-dropdown){z-index:500}.flat-parse-badge.hit{background:var(--c-hit-bg);color:var(--c-hit-fg);border-color:var(--c-hit-border)}.flat-parse-badge.miss{background:var(--c-miss-bg);color:var(--c-miss-fg);border-color:var(--c-miss-border)}.flat-parse-badge.overridden{background:var(--c-ov-bg);color:var(--c-ov-fg);border-color:var(--c-ov-border);font-weight:700}.flat-parse-dropdown{z-index:1000;background:#fff;border:1px solid #e2e8f0;border-radius:6px;min-width:160px;max-height:260px;margin-top:4px;padding:4px;position:absolute;top:100%;left:0;overflow-y:auto;box-shadow:0 6px 20px #0000002e}.flat-parse-dropdown-head{color:#94a3b8;border-bottom:1px solid #f1f5f9;margin-bottom:2px;padding:3px 6px;font-size:10px}.flat-parse-dropdown-item{cursor:pointer;color:#1e293b;border-radius:3px;padding:4px 8px;font-size:11px}.flat-parse-dropdown-item:hover{background:#f1f5f9}.flat-parse-dropdown-item.active{color:#1d4ed8;background:#eff6ff;font-weight:600}.flat-parse-dropdown-reset{cursor:pointer;color:#ef4444;border-top:1px solid #f1f5f9;margin-top:2px;padding:4px 8px;font-size:11px}.flat-parse-dropdown-reset:hover{background:#fef2f2}.flat-mall-row.missing-row>*{opacity:.85;background:#fafbfc}.flat-mall-row.sold-out .flat-mall-price{color:#94a3b8;text-decoration:line-through}.unsaved-product-card{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;align-items:flex-start;gap:16px;padding:18px;display:flex}.unsaved-product-card img{object-fit:cover;border:1px solid #e5e7eb;border-radius:8px;flex-shrink:0;width:120px;height:120px}.unsaved-info{flex:1;min-width:0}.unsaved-info h3{color:#1e293b;margin:4px 0 8px;font-size:15px;font-weight:700;line-height:1.4}.unsaved-mall{color:#92400e;font-size:11px;font-weight:700}.unsaved-price{color:#1e293b;font-variant-numeric:tabular-nums;font-size:18px;font-weight:800}.collect-queue-panel{background:#fffbeb;border:1px solid #fde68a;border-radius:10px;margin-bottom:14px;overflow:hidden}.collect-queue-panel.open{background:#fff;border-color:#e5e7eb}.collect-queue-head{cursor:pointer;text-align:left;background:0 0;border:0;flex-wrap:wrap;align-items:center;gap:10px;width:100%;padding:8px 14px;font-size:12px;display:flex}.collect-queue-head:hover{background:#00000005}.collect-queue-toggle{color:#94a3b8;font-size:11px}.collect-queue-label{color:#92400e;font-weight:700}.collect-queue-panel.open .collect-queue-label{color:#1e293b}.collect-queue-count{color:#78350f;background:#fcd34d;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:700}.collect-queue-count.zero{color:#065f46;background:#d1fae5}.collect-queue-scope{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;max-width:50%;margin-right:auto;font-size:11px;overflow:hidden}.collect-queue-empty{color:#64748b;padding:10px 14px 14px;font-size:12px}.collect-queue-list{flex-direction:column;gap:4px;max-height:360px;padding:6px 8px 10px;display:flex;overflow-y:auto}.collect-queue-row{background:#fff;border:1px solid #f1f5f9;border-radius:6px;grid-template-columns:40px 110px 1fr auto;align-items:center;gap:10px;padding:6px 8px;font-size:11px;display:grid}.collect-queue-row:hover{background:#fafbfc;border-color:#e2e8f0}.collect-queue-thumb{object-fit:cover;border:1px solid #e5e7eb;border-radius:6px;width:36px;height:36px}.collect-queue-thumb-placeholder{background:linear-gradient(135deg,#f1f5f9,#e2e8f0)}.collect-queue-mall{color:#fff;text-align:center;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:100px;padding:2px 8px;font-size:10px;font-weight:700;overflow:hidden}.collect-queue-name{color:#1e293b;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.collect-queue-open{white-space:nowrap;text-decoration:none}.collect-queue-more{color:#94a3b8;text-align:center;padding:6px 10px;font-size:11px}.tree-range{color:#64748b;font-variant-numeric:tabular-nums;margin-left:auto;padding-left:12px;font-size:10px}.coverage-badge{color:#6366f1;font-variant-numeric:tabular-nums;background:#6366f11f;border-radius:6px;margin-left:6px;padding:1px 6px;font-size:9px;font-weight:700;display:inline-block}.tree-leaf.compare-leaf{align-items:flex-start;gap:10px;grid-template-columns:40px 130px 130px 1fr!important;padding-left:10px!important}.leaf-link-with-badges{flex-direction:column;gap:2px;min-width:0;display:flex}.tree-leaf.compare-leaf-sub{opacity:.92;background:#fff}.tree-leaf.compare-leaf-sub .leaf-price{color:#475569;font-weight:500}.mall-chip-mini-ghost{text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1.5px dashed;border-radius:999px;align-items:center;max-width:130px;padding:2px 8px;font-size:10px;font-weight:500;display:inline-flex;overflow:hidden}.match-score-badge{color:#fff;cursor:default;font-variant-numeric:tabular-nums;opacity:.85;border:0;border-radius:999px;align-items:center;gap:2px;padding:2px 7px;font-size:10px;font-weight:700;line-height:1.4;display:inline-flex}.match-score-badge.suspect{cursor:pointer;opacity:1;box-shadow:0 1px 3px #0000001f}.match-score-badge.suspect:hover{transform:translateY(-1px);box-shadow:0 2px 6px #0000002e}.match-score-badge:disabled{cursor:default}.modal-backdrop{z-index:1000;background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:540px;max-height:90vh;padding:0;display:flex;overflow:hidden;box-shadow:0 20px 60px #0000004d}.modal-head{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.modal-head h3{color:#1e293b;margin:0;font-size:14px;font-weight:700}.modal-close{cursor:pointer;color:#64748b;background:0 0;border:0;padding:0 6px;font-size:22px;line-height:1}.modal-close:hover{color:#1e293b}.modal-body{flex-direction:column;gap:12px;padding:16px 18px;display:flex;overflow-y:auto}.modal-row{flex-direction:column;gap:6px;display:flex}.modal-row label{color:#64748b;font-size:11px;font-weight:600}.raw-text-box{color:#1e293b;word-break:break-word;background:#f1f5f9;border-radius:6px;padding:8px 10px;font-size:12px;line-height:1.5}.suggest-tokens{flex-wrap:wrap;gap:6px;display:flex}.suggest-token{cursor:pointer;background:#fff;border:1.5px solid #cbd5e1;border-radius:999px;padding:4px 10px;font-size:11px;transition:all .15s}.suggest-token:hover:not(:disabled){background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-1px)}.suggest-token:disabled{opacity:.5;cursor:wait}.modal-empty{color:#94a3b8;font-size:11px}.custom-kw-row{gap:6px;display:flex}.custom-kw-row .settings-input{flex:1}.sku-chips{flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:360px;display:flex}.sku-chip{color:#475569;cursor:pointer;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #cbd5e1;border-radius:999px;align-items:center;gap:3px;padding:3px 9px;font-size:11px;line-height:1.4;transition:all .15s;display:inline-flex}.sku-chip:hover{border-color:var(--primary);color:var(--primary);transform:translateY(-1px)}.sku-chip.active{background:var(--primary);color:#fff;border-color:var(--primary);font-weight:700;box-shadow:0 1px 3px #0066ff40}.sku-chip-cheapest{font-weight:600}.sku-chip-cheapest.active .sku-chip-star{color:#fde047}.sku-chip-star{color:#f59e0b;font-size:10px}.mall-chip-mini{color:#fff;text-align:center;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:110px;padding:3px 9px;font-size:10px;font-weight:700;display:inline-block;overflow:hidden}.trophy{margin-right:4px;font-size:12px}.tree-node.level-motion>.tree-summary .motion-chip{font-size:11px}.sidebar-memo-icon{color:#f59e0b;margin-right:4px;font-size:10px;display:inline-block}.sidebar-memo-snippet{color:#854d0e;white-space:nowrap;text-overflow:ellipsis;background:#fef3c7;border-radius:4px;margin-top:3px;padding:2px 6px;font-size:10px;line-height:1.3;overflow:hidden}.analysis-memo-box{background:#fefce8;border:1px solid #fde68a;border-radius:6px;align-items:center;gap:6px;max-width:500px;margin-top:8px;padding:6px 10px;display:flex}.analysis-memo-input{color:#713f12;background:0 0;border:none;outline:none;flex:1;font-size:12px;font-weight:600}.analysis-memo-input::placeholder{color:#a16207;opacity:.6;font-weight:400}.install-page{max-width:800px;padding-top:24px;padding-bottom:40px}.install-hero{text-align:center;background:linear-gradient(135deg,#eef2ff 0%,#f0f7ff 100%);border:1px solid #dbeafe;border-radius:16px;margin-bottom:28px;padding:32px 20px}.install-hero h1{color:#0f172a;letter-spacing:-.02em;margin:0 0 8px;font-size:1.8rem;font-weight:900}.install-sub{color:#475569;margin-bottom:20px;font-size:14px}.install-download-btn{background:var(--primary);color:#fff;border-radius:10px;padding:14px 28px;font-size:14px;font-weight:800;text-decoration:none;transition:all .2s;display:inline-block;box-shadow:0 4px 12px #0066ff40}.install-download-btn:hover{background:#0052cc;transform:translateY(-1px);box-shadow:0 6px 16px #0066ff59}.install-meta{color:#94a3b8;margin-top:10px;font-size:11px}.install-steps{margin-bottom:28px}.install-steps h2,.install-usage h2,.install-faq h2{color:#0f172a;margin:24px 0 14px;font-size:1.1rem;font-weight:800}.install-step{background:#fff;border:1px solid #e2e8f0;border-radius:12px;gap:16px;margin-bottom:10px;padding:16px;display:flex}.install-step-no{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:800;display:flex}.install-step-body h3{color:#0f172a;margin:0 0 6px;font-size:14px;font-weight:700}.install-step-body p{color:#475569;margin:0;font-size:13px;line-height:1.6}.install-step-body code{color:#0f172a;background:#f1f5f9;border-radius:4px;padding:1px 6px;font-family:SF Mono,Menlo,monospace;font-size:12px}.install-hint{background:#ecfdf5;border-left:3px solid #10b981;border-radius:8px;padding:10px 12px;font-weight:600;color:#065f46!important;margin-top:8px!important}.install-usage ul{color:#334155;padding-left:20px;font-size:13px;line-height:1.9}.install-usage li{margin-bottom:4px}.install-usage code{background:#f1f5f9;border-radius:3px;padding:1px 5px;font-family:SF Mono,Menlo,monospace;font-size:11px}.install-usage a{color:var(--primary);font-weight:700;text-decoration:none}.install-usage a:hover{text-decoration:underline}.install-faq details{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:8px;padding:10px 14px}.install-faq details[open]{background:#f8fafc}.install-faq summary{cursor:pointer;color:#0f172a;padding:4px 0;font-size:13px;font-weight:700}.install-faq p{color:#475569;margin:8px 0 0;font-size:12px;line-height:1.7}.install-faq code{background:#f1f5f9;border-radius:3px;padding:1px 5px;font-family:SF Mono,Menlo,monospace;font-size:11px}.cache-memo-box{background:#fefce8;border:1px solid #fde68a;border-radius:8px;flex-direction:column;height:100%;padding:14px 16px;display:flex}.cache-memo-title{color:#854d0e;text-transform:uppercase;letter-spacing:.3px;margin-bottom:6px;font-size:11px;font-weight:700}.cache-memo-body{color:#422006;white-space:pre-wrap;word-break:break-word;flex:1;font-size:13px;line-height:1.5}.cache-memo-analyze-link{color:#92400e;margin-top:8px;font-size:11px;font-weight:700;text-decoration:none}.cache-memo-analyze-link:hover{text-decoration:underline}.cache-item-memo-icon{margin-right:6px;font-size:12px;display:inline-block}.cache-item-memo-snippet{color:#854d0e;white-space:nowrap;text-overflow:ellipsis;vertical-align:middle;background:#fef3c7;border-radius:10px;max-width:280px;margin-left:8px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block;overflow:hidden}.product-card-inner{position:relative}.card-analysis-badge{color:#fff;z-index:5;background:linear-gradient(135deg,#4338ca,#6366f1);border-radius:12px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex;position:absolute;bottom:8px;right:8px;box-shadow:0 2px 8px #6366f159}.card-analysis-badge:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f180}.card-memo-dot{opacity:.9;font-size:10px}.cache-item-analysis-badge{color:#fff;vertical-align:middle;background:linear-gradient(135deg,#4338ca,#6366f1);border-radius:10px;align-items:center;gap:4px;margin-left:8px;padding:3px 9px;font-size:11px;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex}.cache-item-analysis-badge:hover{transform:translateY(-1px);box-shadow:0 3px 8px #6366f166}.saved-time-row{color:#94a3b8;font-variant-numeric:tabular-nums;align-items:center;gap:4px;margin:4px 0;font-size:11px;display:inline-flex}.btn-cache-analysis{color:#fff;background:linear-gradient(135deg,#4338ca,#6366f1);border-radius:8px;align-items:center;gap:6px;margin-left:6px;padding:8px 14px;font-size:.85rem;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex;box-shadow:0 2px 6px #6366f14d}.btn-cache-analysis:hover{transform:translateY(-1px);box-shadow:0 4px 10px #6366f166}.btn-back-to-cache{color:#475569;background:#f1f5f9;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:700;text-decoration:none;transition:all .15s;display:inline-block}.btn-back-to-cache:hover{color:#0f172a;background:#e2e8f0}.filter-tag{color:#4338ca;background:#eef2ff;border-radius:6px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;display:inline-flex}.filter-tag strong{font-weight:700}.filter-tag button{color:#6366f1;cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;line-height:1}.settings-parsing-page{padding:20px}.settings-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.settings-header h2{color:#0f172a;font-size:1.2rem;font-weight:800}.settings-header-actions{gap:6px;display:flex}.settings-split{grid-template-columns:1fr 1fr;gap:16px;display:grid}.settings-edit,.settings-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;max-height:calc(100vh - 200px);padding:14px;overflow-y:auto}.settings-section{margin-bottom:18px}.settings-section-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.settings-label{color:#475569;text-transform:uppercase;letter-spacing:.3px;font-size:12px;font-weight:700}.settings-input{border:1px solid #e2e8f0;border-radius:6px;outline:none;width:100%;margin-top:6px;padding:8px 12px;font-size:13px}.settings-input:focus{border-color:var(--primary)}.settings-input.small{color:#64748b;padding:5px 9px;font-size:11px}.settings-input.mono{font-family:SF Mono,Menlo,monospace;font-size:12px}.settings-select{background:#fff;border:1px solid #e2e8f0;border-radius:6px;width:100%;padding:8px 12px;font-size:13px}.settings-category-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:8px;padding:10px 12px}.settings-cat-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.settings-cat-name{color:#0f172a;background:0 0;border:1px solid #0000;border-radius:4px;outline:none;flex:1;padding:4px 8px;font-size:14px;font-weight:700}.settings-cat-id{color:#94a3b8;font-family:monospace;font-size:10px}.settings-keyword-list{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.settings-kw-chip{color:#4338ca;background:#eef2ff;border-radius:12px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.kw-move{color:#6366f1;cursor:pointer;opacity:.5;background:0 0;border:none;padding:0 2px;font-size:9px;line-height:1}.kw-move:hover{opacity:1}.kw-del{color:#ef4444;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:12px;font-weight:700;line-height:1}.settings-kw-input{border:1px dashed #cbd5e1;border-radius:12px;outline:none;min-width:80px;padding:4px 10px;font-size:11px}.settings-kw-input:focus{border-color:var(--primary)}.settings-regex-row{align-items:center;gap:6px;display:flex}.settings-tag-type{color:#9d174d;background:#fce7f3;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:10px;font-weight:700}.settings-empty{color:#94a3b8;background:#fff;border-radius:6px;padding:8px;font-size:12px}.settings-syn-list{flex-direction:column;gap:4px;display:flex}.settings-syn-row{background:#fff;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:flex}.syn-from{color:#94a3b8;background:#f1f5f9;border-radius:4px;padding:2px 6px}.syn-arrow{color:#cbd5e1;font-weight:700}.syn-to{color:#4338ca;background:#eef2ff;border-radius:4px;padding:2px 6px;font-weight:700}.btn-icon-xs{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:14px}.btn-icon-xs:hover{color:#ef4444;background:#fef2f2}.btn-outline.btn-sm{padding:4px 10px;font-size:11px}.settings-preview-head{margin-bottom:12px}.settings-preview-body{background:#fff;border-radius:8px;min-height:300px;padding:10px}@media (width<=960px){.settings-split{grid-template-columns:1fr}.settings-edit,.settings-preview{max-height:none}}.settings-add-cat-form{background:#fff;border:1px dashed #cbd5e1;border-radius:8px;align-items:center;gap:6px;margin-top:8px;padding:8px;display:flex}.settings-add-cat-form .settings-input{flex:1;margin-top:0}.settings-select-inline{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:6px 8px;font-size:12px}.settings-syn-add-row{background:#fefce8;border:1px dashed #fde68a;border-radius:6px;align-items:center;gap:6px;margin-top:4px;padding:6px 10px;display:flex}.settings-syn-add-row .settings-input{flex:1;margin-top:0}.settings-add-preset-form{align-items:center;gap:6px;display:flex}.settings-add-preset-form .settings-input{flex:1;margin-top:0}.btn-outline.confirm-pending,.btn-icon-xs.confirm-pending{animation:1.5s ease-in-out infinite pulse-confirm;color:#92400e!important;background:#fef3c7!important;border-color:#fcd34d!important}@keyframes pulse-confirm{0%,to{opacity:1}50%{opacity:.6}}.preset-switcher{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;padding:8px 12px;display:flex}.preset-switcher-label{color:#64748b;font-size:11px;font-weight:700}.preset-switcher-select{background:#fff;border:1px solid #cbd5e1;border-radius:6px;outline:none;min-width:160px;padding:5px 10px;font-size:12px}.preset-switcher-select:focus{border-color:var(--primary)}.preset-switcher-mode{color:#92400e;background:#fef3c7;border-radius:10px;padding:3px 8px;font-size:11px;font-weight:700}.preset-switcher-active-badge{color:#166534;background:#dcfce7;border-radius:10px;padding:3px 8px;font-size:11px;font-weight:700}.preset-switcher-activate{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f59e0b,#ef4444);border:none;border-radius:6px;padding:5px 12px;font-size:11px;font-weight:800;transition:all .15s}.preset-switcher-activate:hover{transform:translateY(-1px);box-shadow:0 3px 8px #ef444459}.preset-switcher-edit-link{color:#94a3b8;border-radius:4px;margin-left:auto;padding:4px 8px;font-size:14px;text-decoration:none}.preset-switcher-edit-link:hover{color:var(--primary);background:#f1f5f9}.settings-fallback-row{background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;align-items:center;gap:8px;margin-top:8px;padding:6px 10px;display:flex}.settings-fallback-label{color:#0369a1;cursor:help;white-space:nowrap;flex-shrink:0;font-size:11px;font-weight:700}.settings-fallback-input{background:#fff;flex:1;margin-top:0!important}.settings-preset-row{align-items:center;gap:6px;margin-top:6px;display:flex}.settings-preset-row .settings-select{flex:1}.kw-count-badge{color:#4338ca;text-align:center;background:#6366f133;border-radius:8px;min-width:18px;padding:1px 6px;font-size:9px;font-weight:700;display:inline-block}.settings-kw-chip.kw-zero{opacity:.45}.settings-kw-chip.kw-zero .kw-count-badge{color:#94a3b8;background:#f1f5f9}.settings-kw-chip.kw-strong{background:#ecfdf5}.settings-kw-chip.kw-strong .kw-count-badge{color:#fff;background:#10b981}.settings-stats-panel{background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin-top:16px;padding:14px}.settings-stats-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.stats-loading{color:#94a3b8;font-size:11px}.stats-cat-row{grid-template-columns:80px 1fr 50px;align-items:center;gap:8px;margin-bottom:6px;font-size:12px;display:grid}.stats-cat-label{color:#334155;font-weight:700}.stats-bar-wrap{background:#f1f5f9;border-radius:4px;height:14px;display:flex;overflow:hidden}.stats-bar{height:100%;transition:width .3s}.stats-cat-pct{text-align:right;color:#64748b;font-variant-numeric:tabular-nums;font-weight:700}.stats-unmatched{margin-top:6px}.stats-unmatched-list{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.stats-unmatched-chip{color:#92400e;cursor:default;background:#fef3c7;border-radius:12px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.stats-unmatched-chip .kw-count-badge{color:#fff;background:#fbbf24}.stats-hint{color:#94a3b8;margin-top:6px;font-size:10px;line-height:1.5}.low-match-panel{margin-top:14px}.low-match-filter-row{border-bottom:1px dashed #e5e7eb;flex-wrap:wrap;gap:6px;margin:8px 0 12px;padding-bottom:10px;display:flex}.low-match-list{flex-direction:column;gap:6px;display:flex}.low-match-row{background:#fafbfc;border:1px solid #f1f5f9;border-radius:8px;grid-template-columns:56px 110px 1fr auto auto;align-items:center;gap:10px;padding:8px 10px;font-size:11px;display:grid}.low-match-row:hover{background:#fff;border-color:#e2e8f0}.low-match-mall{color:#475569;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.low-match-text{min-width:0;line-height:1.4}.low-match-option{color:#1e293b;word-break:break-word;font-weight:500}.low-match-product{color:#94a3b8;word-break:break-word;margin-top:1px;font-size:10px}.low-match-missing{flex-wrap:wrap;gap:3px;display:flex}.low-match-miss-tag{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:4px;padding:2px 7px;font-size:10px;font-weight:600}.kw-syn-chip{color:#92400e;cursor:default;background:#fef3c7;border-radius:8px;align-items:center;gap:3px;margin-left:3px;padding:2px 7px;font-size:10px;font-weight:600;display:inline-flex}.kw-syn-del{color:#b45309;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:11px;font-weight:700;line-height:1}.kw-syn-del:hover{color:#ef4444}.kw-syn-add{color:#4338ca;cursor:pointer;background:#6366f11a;border:none;border-radius:50%;margin-left:4px;padding:1px 6px;font-size:12px;font-weight:700;line-height:1;transition:all .15s}.kw-syn-add:hover{color:#fff;background:#4338ca;transform:scale(1.1)}.kw-syn-input{color:#92400e;background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;outline:none;min-width:100px;margin-left:3px;padding:2px 8px;font-size:11px}.kw-syn-input:focus{background:#fff}.settings-preview-product-info{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;margin-top:8px;padding:8px 10px;display:flex}.settings-preview-name{flex:1;align-items:flex-start;gap:8px;min-width:0;display:flex}.settings-preview-thumb{object-fit:cover;background:#f1f5f9;border-radius:6px;flex-shrink:0;width:40px;height:40px}.settings-preview-text{flex:1;min-width:0}.settings-preview-product-name{color:#0f172a;word-break:break-word;font-size:12px;font-weight:600;line-height:1.4}.settings-preview-meta{color:#64748b;gap:4px;margin-top:2px;font-size:10px;display:flex}.settings-preview-links{flex-direction:column;flex-shrink:0;gap:4px;display:flex}.settings-preview-link{white-space:nowrap;border-radius:6px;padding:4px 10px;font-size:10px;font-weight:700;text-decoration:none;transition:all .15s}.settings-preview-link.external{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}.settings-preview-link.external:hover{color:#0f172a;background:#e2e8f0}.settings-preview-link.analysis{color:#fff;background:linear-gradient(135deg,#4338ca,#6366f1)}.settings-preview-link.analysis:hover{transform:translateY(-1px);box-shadow:0 3px 8px #6366f166}.settings-cat-drag-handle{color:#cbd5e1;cursor:grab;-webkit-user-select:none;user-select:none;letter-spacing:-2px;border-radius:4px;flex-shrink:0;padding:4px 6px;font-size:12px;font-weight:700;line-height:1;transition:all .15s}.settings-cat-drag-handle:hover{color:var(--primary);background:#eef2ff}.settings-cat-drag-handle:active{cursor:grabbing}.settings-category-card{transition:all .15s;position:relative}.settings-category-card.dragging{opacity:.4;background:#fef3c7!important}.settings-category-card.drag-over{outline:2px dashed var(--primary);outline-offset:-2px;background:#eef2ff;transform:translateY(2px)}.settings-category-card.drag-over:before{content:"";background:var(--primary);border-radius:2px;height:3px;position:absolute;top:-3px;left:0;right:0}.btn-save-activate{color:#166534;background:#dcfce7;border-color:#86efac;font-weight:800}.btn-save-activate:hover{background:#bbf7d0;border-color:#22c55e}.kw-priority-num{color:#6366f1;font-variant-numeric:tabular-nums;background:#6366f11f;border-radius:6px;margin-right:2px;padding:1px 5px;font-size:9px;font-weight:800}.settings-kw-chip{cursor:grab;transition:all .15s}.settings-kw-chip:active{cursor:grabbing}.settings-kw-chip.kw-dragging{opacity:.4;background:#fef3c7!important}.settings-kw-chip.kw-drag-over{outline:2px dashed var(--primary);outline-offset:2px;transform:translateY(-1px)}:root{--primary:#0f172a;--primary-soft:#1e293b;--primary-hover:#020617;--bg-color:#fafafa;--surface:#fff;--border-color:#ececec;--border-strong:#d4d4d4;--text-main:#18181b;--text-secondary:#4b5563;--text-muted:#9ca3af;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 2px 6px #0000000d;--shadow-md:0 8px 20px #0000000f}body{background:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased}.header{-webkit-backdrop-filter:saturate(180%)blur(12px);border-bottom:1px solid var(--border-color);background:#ffffffd9}.logo{letter-spacing:-.03em;font-weight:700}.logo svg{color:var(--text-main)!important}.search-bar input{background:#f4f4f5;border:1px solid #0000;font-weight:500}.search-bar input:focus{border-color:var(--border-strong);background:#fff;box-shadow:0 0 0 3px #0f172a0f}.search-bar button{background:var(--primary)}.search-bar button:hover{background:var(--primary-hover)}.nav-link{color:#52525b;font-weight:500}.nav-link:hover,.nav-link.active{color:var(--text-main);background:#f4f4f5}.folder-sidebar-drawer{box-shadow:24px 0 60px #00000014}.sidebar-header h3{letter-spacing:-.02em;font-weight:700}.folder-add-form{border-color:var(--border-color);background:#fafafa}.folder-add-form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0f172a0f}.folder-add-form button{background:var(--primary)}.folder-add-form button:hover{background:var(--primary-hover);transform:none}.folder-row{font-weight:500}.folder-row:hover{background:#f4f4f5}.folder-row.active{background:var(--primary);color:#fff;box-shadow:none}.folder-label{letter-spacing:-.01em;font-size:.95rem;font-weight:600}.folder-row.active .folder-main-icon{opacity:.85}.action-btn-sm{border:1px solid var(--border-color);box-shadow:none;color:#52525b;background:#fff}.action-btn-sm:hover{border-color:var(--border-strong);color:var(--text-main);background:#fafafa;transform:none}.folder-row.active .action-btn-sm{color:#fff;background:#ffffff1f;border-color:#0000}.folder-row.active .action-btn-sm:hover{background:#ffffff38}.folder-edit-row input{border-color:var(--primary);box-shadow:0 0 0 3px #0f172a0f}.folder-row-container.drag-over{border:2px dashed var(--primary);background:#f4f4f5;transform:none}.sidebar-content-scroll::-webkit-scrollbar-thumb{background:#d4d4d4}.btn-action{border-color:var(--border-color);background:#fff}.btn-action:hover{border-color:var(--border-strong);color:var(--text-main);background:#fafafa}.btn-outline{border-color:var(--border-color)}.btn-outline:hover{border-color:var(--border-strong);color:var(--text-main);background:#fafafa}.btn-icon-sm{color:#52525b;background:#f4f4f5}.btn-icon-sm:hover{color:var(--text-main);background:#ebebeb}.product-card-inner{border-color:var(--border-color);box-shadow:var(--shadow-xs)}.product-card-inner:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.product-info h3{font-weight:600}.price-info{color:var(--text-main);font-weight:700}.product-badge{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:none;background:#0f172ac7;border:none;font-weight:700}.card-analysis-badge{background:var(--primary);box-shadow:none;font-weight:600}.card-analysis-badge:hover{background:var(--primary-hover);box-shadow:var(--shadow-sm)}.btn-search-similar{box-shadow:var(--shadow-xs);border-color:var(--border-color)}.btn-search-similar:hover{background:var(--primary);border-color:var(--primary);color:#fff}.mall-name{color:var(--text-secondary)}.saved-item{border-color:var(--border-color)}.saved-item:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.saved-info h3{font-weight:600}.price{color:var(--text-main);font-weight:700}.saved-item.pinned{border-color:var(--primary);box-shadow:none;background:#fafafa;border-width:1.5px}.saved-item.selected{border-color:var(--primary);background:#fafafa}.saved-rank-tag,.saved-mall-tag{font-weight:600}.saved-mall-tag{color:var(--text-main);border-color:var(--border-color);background:#f4f4f5}.saved-page-controls .saved-inner-search{background:#f4f4f5}.saved-page-controls .saved-inner-search:focus-within{border:1px solid var(--border-strong);background:#fff;box-shadow:0 0 0 3px #0f172a0a}.unpin-btn{color:#52525b;box-shadow:none;background:#f4f4f5}.unpin-btn:hover{color:#ef4444;background:#fee2e2;transform:none}.copy-url-btn{color:var(--text-main);border-color:var(--border-color);background:#f4f4f5}.copy-url-btn:hover{border-color:var(--border-strong);background:#ebebeb}.sticky-preview-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb}.preview-image-box-large{border-color:var(--border-color);background:#f4f4f5}.p-title-large{letter-spacing:-.02em;font-weight:700}.p-price-large{color:var(--text-main);font-weight:800}.p-brand{color:var(--text-main);border-color:var(--border-color);background:#f4f4f5;font-weight:600}.p-rank-badge{font-weight:600}.p-opt-price{color:var(--text-main);font-weight:700}.preview-options-box{border-left-color:var(--border-color)}.history-card{border-color:var(--border-color)}.history-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.history-card .h-query{font-weight:600}.bulk-actions-bar{border-color:var(--border-strong);background:#f4f4f5}.selection-count{color:var(--text-main);font-weight:700}.move-to-box{border-color:var(--border-color);background:#fff}.move-to-box select{color:var(--text-main);font-weight:600}.mall-filter-tag{color:var(--text-main);border-color:var(--border-color);background:#f4f4f5;font-weight:600}.mall-filter-tag button{color:var(--text-secondary)}.mall-filter-tag button:hover{color:var(--text-main);background:#ebebeb;transform:none}.filter-tag{color:var(--text-main);background:#f4f4f5}.filter-tag button{color:var(--text-secondary)}.filter-tag button:hover{color:var(--text-main)}.login-box{box-shadow:var(--shadow-md)}.login-box input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0f172a0f}.login-box button{background:var(--primary);font-weight:700}.login-box button:hover{background:var(--primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.toast-message{box-shadow:var(--shadow-md);font-weight:600}.modal-content,.modal-card{box-shadow:var(--shadow-md)}.modal-head h3{font-weight:700}.empty-state{color:#a1a1aa}.empty-state h3{color:var(--text-secondary);font-weight:700}.page-header-row h1,.page-header-row h2{letter-spacing:-.02em;font-weight:800}.analysis-sidebar{border-right-color:var(--border-color);background:#fafafa}.analysis-sidebar-head{border-bottom-color:var(--border-color)}.analysis-sidebar-head h3{font-weight:700}.analysis-sidebar-search:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0f172a0d}.sidebar-product-item:hover{background:#f4f4f5}.sidebar-product-item.active{outline:1.5px solid var(--primary);background:#f4f4f5}.analysis-product-card{border-color:var(--border-color)}.analysis-product-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.analysis-card-name{font-weight:600}.analysis-product-header{border-color:var(--border-color);box-shadow:var(--shadow-xs)}.analysis-product-mall{color:var(--text-secondary);font-weight:600}.analysis-product-name{font-weight:600}.analysis-product-price{color:var(--text-main);font-weight:700}.analysis-clear-btn{color:#52525b;background:#f4f4f5}.analysis-clear-btn:hover{color:#ef4444;background:#fee2e2}.grade-matrix{border-color:var(--border-color)}.grade-matrix-header{border-bottom-color:var(--border-color);background:#fafafa}.grade-matrix-title{font-weight:700}.matrix-corner,.matrix-motion,.matrix-size{background:#fafafa}.matrix-price{color:var(--text-main);font-weight:600}.subprod-item{border-color:var(--border-color)}.subprod-item[open]{border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.subprod-item[open]>.subprod-summary{border-bottom-color:var(--border-color);background:#fafafa}.subprod-summary:hover{background:#f4f4f5}.subprod-size{font-weight:600}.subprod-motion-chip .chip-price{color:var(--text-main);font-weight:700}.tree-node.level-grade{border-color:var(--border-color)}.level-grade>.tree-summary{background:#fafafa}.level-grade[open]>.tree-summary{border-bottom-color:var(--border-color)}.tree-summary:hover{background:#f4f4f5}.size-label{font-weight:600}.material-label{color:var(--text-secondary);background:#f4f4f5}.tree-leaf{border-color:var(--border-color);background:#fafafa}.tree-leaf.compare-leaf-first{background:#fafafa}.leaf-price{color:var(--text-main);font-weight:700}.leaf-product-link:hover,.leaf-clear-btn:hover{color:var(--text-main);background:#f4f4f5}.add-custom-node-btn{border-color:var(--border-color);color:var(--text-secondary);background:#fafafa}.add-custom-node-btn:hover{border-color:var(--border-strong);color:var(--text-main);background:#f4f4f5}.tree-node.drag-hover{outline-color:var(--primary);background:#f4f4f5!important}.tree-node.drag-hover>.tree-summary{background:#ebebeb!important}.stats-grid .stat-card{border-color:var(--border-color);background:#fafafa}.stat-value{font-weight:700}.histogram{border-color:var(--border-color);background:#fafafa}.hist-bar{background:var(--primary)}.rank-list{border-color:var(--border-color);background:#fafafa}.rank-list li{border-bottom-color:var(--border-color)}.rank-price{color:var(--text-main);font-weight:600}.keyword-table{border-color:var(--border-color);background:#fafafa}.keyword-header,.size-header{color:var(--text-secondary);background:#f4f4f5}.keyword-row{border-bottom-color:var(--border-color)}.kw-spread{color:var(--text-main)}.stem-group{border-color:var(--border-color);background:#fafafa}.stem-header{border-bottom-color:var(--border-color);background:#f4f4f5}.stem-name{font-weight:700}.stem-opt-price{color:var(--text-main);font-weight:700}.mall-chip-panel{border-color:var(--border-color);background:#fafafa}.mall-chip{border:1px solid var(--border-color);background:#fff;font-weight:500}.mall-chip:hover{border-color:var(--border-strong);box-shadow:none;background:#fafafa;transform:none}.mall-chip.active{box-shadow:var(--shadow-xs)}.mall-chip.active.mall-chip-more{color:var(--text-main);background:#f4f4f5}.category-filter-panel{background:var(--surface);border-color:var(--border-color)}.category-filter-select{border-color:var(--border-color)}.category-filter-select:hover{border-color:var(--border-strong)}.category-filter-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0f172a0d}.price-range-input{border-color:var(--border-color)}.price-range-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0f172a0d}.sort-toggle-btn,.view-toggle-btn{border-color:var(--border-color)}.sort-toggle-btn:hover,.view-toggle-btn:hover{border-color:var(--border-strong);color:var(--text-main)}.view-toggle-btn.active{background:var(--primary);border-color:var(--primary)}.flat-mall-table{border-color:var(--border-color)}.flat-mall-row>*{border-bottom-color:var(--border-color)}.flat-mall-row.head>*{color:var(--text-secondary);background:#fafafa}.flat-mall-row.cheapest-row .flat-mall-price{color:var(--text-main);font-weight:700}.flat-mall-product:hover{color:var(--text-main);background:#f4f4f5;text-decoration:none}.flat-mall-trophy{color:#b45309}.aggregate-toggle-btn{color:var(--text-secondary);border-color:var(--border-color);background:#fafafa;font-weight:600}.aggregate-toggle-btn:hover:not(:disabled){border-color:var(--border-strong);color:var(--text-main);background:#f4f4f5}.aggregate-toggle-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.aggregate-toggle-btn.active:hover{background:var(--primary-hover)}.analysis-link-btn{color:var(--text-main);border-color:var(--border-color);background:#fafafa;font-weight:600}.analysis-link-btn:hover{border-color:var(--border-strong);background:#f4f4f5}.btn-cache-analysis{background:var(--primary);box-shadow:none;font-weight:600}.btn-cache-analysis:hover{background:var(--primary-hover);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.cache-item-analysis-badge{background:var(--primary);font-weight:600}.cache-item-analysis-badge:hover{background:var(--primary-hover);box-shadow:var(--shadow-sm)}.preset-switcher{border-color:var(--border-color);background:#fafafa}.preset-switcher-select{border-color:var(--border-color)}.preset-switcher-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0f172a0d}.preset-switcher-activate{background:var(--primary);font-weight:700}.preset-switcher-activate:hover{background:var(--primary-hover);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.match-score-badge{box-shadow:none}.coverage-badge{color:var(--text-secondary);background:#0f172a0f}.install-hero{border-color:var(--border-color);background:linear-gradient(135deg,#fafafa 0%,#f4f4f5 100%)}.install-hero h1{letter-spacing:-.02em;font-weight:800}.install-download-btn{background:var(--primary);box-shadow:var(--shadow-sm);font-weight:700}.install-download-btn:hover{background:var(--primary-hover);box-shadow:var(--shadow-md)}.install-step{border-color:var(--border-color);box-shadow:var(--shadow-xs)}.install-step-no{background:var(--primary);font-weight:700}.install-step-body h3{font-weight:700}.settings-edit,.settings-preview{border-color:var(--border-color);background:#fafafa}.settings-cat-name{font-weight:700}.settings-cat-name:focus{border-color:var(--border-strong);background:#fafafa}.settings-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0f172a0d}.settings-stats-panel{border-color:var(--border-color)}.stats-bar.matched{background:var(--primary)}.stats-bar.fallback{background:#d4d4d4}.btn-save-activate{color:var(--text-main);border-color:var(--border-strong);background:#fafafa;font-weight:700}.btn-save-activate:hover{border-color:var(--text-main);background:#f4f4f5}.p-memo-edit-box,.saved-memo-box input,.analysis-memo-box{background:#fefce8;border-color:#fef9c3}.sticky-preview-header{border-bottom-color:var(--border-color)}@media (width<=720px){:root{--header-h:auto}.header{height:auto;padding:8px 0}.header .container{flex-wrap:wrap;gap:8px}.logo{flex-shrink:0;order:1}.nav-links{flex-wrap:wrap;order:2;gap:2px}.nav-link{gap:0;padding:8px}.nav-link span{display:none}.search-container{flex:0 0 100%;order:99;max-width:none;margin:0}.sticky-preview-header{height:auto;min-height:0;position:static;top:auto}.sticky-preview-header .container{flex-wrap:wrap;height:auto;padding:10px 12px}.preview-layout{flex-wrap:wrap;gap:14px}.preview-options-box{border-left:none;border-top:1px solid var(--border-color);width:100%;height:auto;padding:10px 0 0}.bulk-actions-bar{flex-wrap:wrap;gap:8px;padding:10px 12px}.selection-count{min-width:32px;padding:4px 10px;font-size:1.2rem}.move-to-box{gap:6px;padding:5px 10px}}.dialog-backdrop{z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a73;justify-content:center;align-items:center;padding:16px;animation:.12s ease-out dialogFadeIn;display:flex;position:fixed;inset:0}.dialog-card{background:#fff;border-radius:14px;flex-direction:column;gap:12px;width:100%;max-width:420px;padding:22px 22px 16px;animation:.16s cubic-bezier(.2,.8,.2,1) dialogPop;display:flex;box-shadow:0 20px 60px #0000002e}.dialog-title{color:var(--text-main);letter-spacing:-.01em;font-size:1.05rem;font-weight:700}.dialog-message{color:var(--text-main);white-space:pre-wrap;word-break:keep-all;font-size:.95rem;line-height:1.5}.dialog-input{border:1.5px solid var(--border-color);color:var(--text-main);background:#fff;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-family:inherit;font-size:.95rem}.dialog-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0f172a0f}.dialog-error{color:#ef4444;font-size:.8rem;font-weight:600}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.dialog-btn{cursor:pointer;border:1px solid #0000;border-radius:8px;padding:8px 16px;font-family:inherit;font-size:.9rem;font-weight:600;transition:all .15s}.dialog-btn-cancel{color:var(--text-secondary);border-color:var(--border-color);background:#fff}.dialog-btn-cancel:hover{border-color:var(--border-strong);color:var(--text-main);background:#fafafa}.dialog-btn-confirm{background:var(--primary);color:#fff}.dialog-btn-confirm:hover{background:var(--primary-hover)}.dialog-btn-confirm.danger{background:#dc2626}.dialog-btn-confirm.danger:hover{background:#b91c1c}@keyframes dialogFadeIn{0%{opacity:0}to{opacity:1}}@keyframes dialogPop{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}:root{--sp-0:0;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:32px;--c-hit-bg:#f8fafc;--c-hit-fg:#334155;--c-hit-border:#e2e8f0;--c-miss-bg:#f1f5f9;--c-miss-fg:#94a3b8;--c-miss-border:#cbd5e1;--c-ov-bg:#fef3c7;--c-ov-fg:#92400e;--c-ov-border:#fde68a;--c-memo-bg:#fef3c7;--c-memo-fg:#854d0e;--c-memo-border:#fde68a;--c-saved-bg:#e2e8f0;--c-saved-fg:#0f172a;--c-saved-border:#cbd5e1;--c-preset-bg:#f1f5f9;--c-preset-fg:#475569;--c-preset-border:#cbd5e1;--c-neutral-bg:#f1f5f9;--c-neutral-fg:#475569;--c-neutral-border:#e2e8f0}.btn{justify-content:center;align-items:center;gap:var(--sp-1);cursor:pointer;white-space:nowrap;color:var(--text-main);background:0 0;border:1px solid #0000;border-radius:6px;padding:6px 12px;font-family:inherit;font-size:.85rem;font-weight:600;line-height:1.3;transition:all .15s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.btn.btn-sm{padding:4px 10px;font-size:.8rem}.btn.btn-xs{padding:2px 7px;font-size:.75rem}.btn.btn-primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn.btn-primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.btn.btn-ghost{border-color:var(--border-color);color:var(--text-main);background:#fff}.btn.btn-ghost:hover:not(:disabled){border-color:var(--border-strong);background:#fafafa}.btn.btn-danger{color:#dc2626;background:#fff;border-color:#fecaca}.btn.btn-danger:hover:not(:disabled){background:#fef2f2;border-color:#f87171}.btn.btn-danger-solid{color:#fff;background:#dc2626;border-color:#dc2626}.btn.btn-danger-solid:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.btn.btn-icon{border-radius:6px;flex-shrink:0;width:28px;height:28px;padding:0}.btn.btn-icon.btn-sm{width:24px;height:24px}.btn.btn-icon.btn-xs{width:20px;height:20px}.chip{white-space:nowrap;letter-spacing:-.01em;border:1px solid #0000;border-radius:4px;align-items:center;gap:3px;padding:1px 7px;font-size:11px;font-weight:600;line-height:1.5;display:inline-flex}.chip.chip-sm{padding:1px 5px;font-size:10px}.chip.chip-xs{padding:0 5px;font-size:9px}.chip.chip-hit{background:var(--c-hit-bg);color:var(--c-hit-fg);border-color:var(--c-hit-border)}.chip.chip-miss{background:var(--c-miss-bg);color:var(--c-miss-fg);border-color:var(--c-miss-border)}.chip.chip-overridden{background:var(--c-ov-bg);color:var(--c-ov-fg);border-color:var(--c-ov-border)}.chip.chip-neutral{background:var(--c-neutral-bg);color:var(--c-neutral-fg);border-color:var(--c-neutral-border)}.chip.chip-memo{background:var(--c-memo-bg);color:var(--c-memo-fg);border-color:var(--c-memo-border)}.chip.chip-saved{background:var(--c-saved-bg);color:var(--c-saved-fg);border-color:var(--c-saved-border)}.chip.chip-preset{background:var(--c-preset-bg);color:var(--c-preset-fg);border-color:var(--c-preset-border);font-weight:700}.chip.chip-clickable{cursor:pointer;transition:filter .12s,transform .12s}.chip.chip-clickable:hover{filter:brightness(.97);transform:translateY(-1px)}.gap-1{gap:var(--sp-1)}.gap-2{gap:var(--sp-2)}.gap-3{gap:var(--sp-3)}.row{align-items:center;display:flex}.row-wrap{flex-wrap:wrap;align-items:center;display:flex}.category-leaf-link{color:var(--c-neutral-fg);cursor:pointer;text-underline-offset:2px;margin-right:2px;font-size:10px;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:#cbd5e1;transition:color .12s}.category-leaf-link:hover{color:var(--text-main)}.wiki-content{color:#1f2937;letter-spacing:-.005em;word-break:keep-all;overflow-wrap:break-word;max-width:100%;margin:0;font-family:-apple-system,BlinkMacSystemFont,Pretendard,Apple SD Gothic Neo,Noto Sans KR,Segoe UI,system-ui,sans-serif;font-size:17px;line-height:1.75}.wiki-heading-anchor{scroll-margin-top:80px;position:relative}.wiki-anchor-link{color:#cbd5e1;opacity:0;justify-content:center;align-items:center;width:20px;height:20px;text-decoration:none;transition:opacity .15s,color .15s;display:inline-flex;position:absolute;top:50%;left:-22px;transform:translateY(-50%)}.wiki-heading-anchor:hover .wiki-anchor-link{opacity:1}.wiki-anchor-link:hover{color:#3b82f6}.wiki-content pre{background:#f6f8fa;border:1px solid #d0d7de;border-radius:6px;margin:1em 0;padding:12px 14px;font-size:13px;line-height:1.5;overflow-x:auto}.wiki-content pre code{color:inherit;background:0 0;padding:0}.wiki-content code.hljs{background:0 0;padding:0}.wiki-content p{margin:0 0 1em}.wiki-content p:last-child{margin-bottom:0}.wiki-content h1,.wiki-content h2,.wiki-content h3,.wiki-content h4,.wiki-content h5,.wiki-content h6{letter-spacing:-.02em;color:#0f172a;margin:1.6em 0 .6em;font-weight:700;line-height:1.3}.wiki-content h1{border-bottom:1px solid #e5e7eb;margin-top:0;padding-bottom:.3em;font-size:2em}.wiki-content h2{border-bottom:1px solid #f1f5f9;padding-bottom:.25em;font-size:1.5em}.wiki-content h3{font-size:1.25em}.wiki-content h4{font-size:1.05em}.wiki-content h5{color:#475569;font-size:.95em}.wiki-content h6{color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-size:.9em}.wiki-content>h1:first-child,.wiki-content>h2:first-child,.wiki-content>h3:first-child{margin-top:0}.wiki-content ul,.wiki-content ol{margin:0 0 1em;padding-left:1.8em}.wiki-content li{margin:.25em 0}.wiki-content li>p{margin-bottom:.4em}.wiki-content ul ul,.wiki-content ol ol,.wiki-content ul ol,.wiki-content ol ul{margin:.3em 0}.wiki-content ul{list-style-type:disc}.wiki-content ul ul{list-style-type:circle}.wiki-content ul ul ul{list-style-type:square}.wiki-content li.task-list-item,.wiki-content li.contains-task-list{margin-left:-1.4em;list-style:none}.wiki-content input[type=checkbox]{margin-right:6px}.wiki-content code{color:#be185d;word-break:break-all;background:#f1f5f9;border-radius:4px;padding:.15em .4em;font-family:ui-monospace,SFMono-Regular,JetBrains Mono,Menlo,Consolas,monospace;font-size:.88em}.wiki-content pre{color:#e2e8f0;letter-spacing:0;background:#0f172a;border-radius:8px;margin:0 0 1em;padding:14px 16px;font-size:.88em;line-height:1.55;overflow-x:auto}.wiki-content pre code{color:inherit;font-size:inherit;word-break:normal;background:0 0;border-radius:0;padding:0}.wiki-content blockquote{color:#475569;background:#f8fafc;border-left:4px solid #94a3b8;border-radius:0 6px 6px 0;margin:1em 0;padding:.8em 1.2em}.wiki-content blockquote p:last-child{margin-bottom:0}.wiki-content blockquote>blockquote{background:#f1f5f9;border-left-color:#cbd5e1;margin-top:.5em}.wiki-content table{border-collapse:collapse;width:100%;margin:1em 0;font-size:.95em;display:block;overflow-x:auto}.wiki-content thead{background:#f8fafc}.wiki-content th,.wiki-content td{text-align:left;vertical-align:top;border:1px solid #e5e7eb;padding:8px 12px}.wiki-content th{color:#0f172a;font-weight:700}.wiki-content tbody tr:nth-child(2n){background:#fafafa}.wiki-content a{color:#1d4ed8;border-bottom:1px solid #0000;text-decoration:none;transition:border-color .12s,color .12s}.wiki-content a:hover{color:#1e40af;border-bottom-color:#93c5fd}.wiki-content a:visited{color:#6d28d9}.wiki-content img{border-radius:6px;max-width:100%;height:auto;margin:.5em 0;display:block}.wiki-content hr{border:none;border-top:1px solid #e5e7eb;margin:2.5em 0}.wiki-content strong{color:#0f172a;font-weight:700}.wiki-content em{font-style:italic}.wiki-content kbd{color:#0f172a;background:#f8fafc;border:1px solid #cbd5e1;border-bottom-width:2px;border-radius:4px;padding:2px 6px;font-family:ui-monospace,monospace;font-size:.82em;box-shadow:0 1px #0000000d}.wiki-content mark{color:inherit;background:#fef3c7;padding:0 2px}@media (width<=720px){.wiki-content{max-width:100%;font-size:16px;line-height:1.7}.wiki-content h1{font-size:1.7em}.wiki-content h2{font-size:1.35em}.wiki-content h3{font-size:1.15em}.wiki-content pre{padding:12px;font-size:.85em}.wiki-heading-anchor .wiki-anchor-link{opacity:1;color:#cbd5e1;margin-right:4px;position:static;transform:none}.wiki-action-bar{gap:6px}.wiki-action-bar .btn{padding:6px 10px;font-size:12px}.wiki-action-bar .wiki-action-label{display:none}.wiki-page-meta{gap:6px 8px!important;font-size:11px!important}.wiki-page{padding:12px 12px 24px!important}}@media print{.wiki-content{color:#000;max-width:none;font-size:11pt}.wiki-content a{color:inherit;border-bottom:none}.wiki-content pre{color:#000;background:#f5f5f5;border:1px solid #ccc}}.wiki-layout{grid-template-columns:1fr;align-items:start;gap:24px;display:grid}.wiki-layout.with-toc{grid-template-columns:minmax(0,1fr) 220px}@media (width<=820px){.wiki-layout.with-toc{grid-template-columns:1fr}.wiki-layout.with-toc>aside{order:-1;position:static!important}}@media (width<=720px){.header .container{gap:8px}.nav-links .nav-link span{display:none}.nav-links .nav-link{padding:6px 8px}.search-container{margin:0 8px}.category-filter-panel{flex-wrap:wrap;gap:6px}.category-filter-panel .category-filter-select,.category-filter-panel .price-range-group{flex:calc(50% - 6px);min-width:0}.analysis-stats-header{grid-template-columns:repeat(2,1fr);gap:6px}.analysis-stat-card{padding:6px 10px}.analysis-stat-value{font-size:14px}.page-header h2{font-size:1.1rem}.page.container>div[style*="background: rgb(248, 250, 252)"][style*="padding: 16px"]>div[style*="display: flex"]{flex-direction:column;align-items:stretch!important}.page.container>div[style*="display: flex"][style*="margin-bottom: 16px"]{flex-wrap:wrap}.page.container[style*="max-width: 1020px"]>*{font-size:13px}.wiki-content{font-size:16px}.page.container table{font-size:11px}.price-row{flex-wrap:wrap;gap:6px}}@media (width<=480px){.analysis-stats-header{grid-template-columns:1fr 1fr}.nav-links{gap:2px}.search-container{margin:0 4px}.search-bar input{padding:6px 8px;font-size:13px}.container{padding:0 12px}.page.container{padding:16px 12px}}
