*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f8fafc;color:#1e293b;line-height:1.5;-webkit-font-smoothing:antialiased}#app{min-height:100vh}.screen{display:flex;flex-direction:column;min-height:100vh}#login-screen{align-items:center;justify-content:center;background:#0f172a;color:#fff}.login-box{background:#1e293b;padding:2.5rem;border-radius:12px;box-shadow:0 20px 60px #0006;width:100%;max-width:400px}.login-box h1{font-size:1.5rem;margin-bottom:.25rem;text-align:center}.login-box .subtitle{color:#94a3b8;font-size:.85rem;text-align:center;margin-bottom:1.5rem}.login-box input[type=password]{width:100%;padding:.75rem;border:1px solid #475569;border-radius:6px;margin-bottom:1rem;font-size:1rem;background:#0f172a;color:#fff;transition:border-color .2s}.login-box input[type=password]:focus{outline:none;border-color:#3b82f6}.login-box button[type=submit]{width:100%;padding:.75rem;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;transition:background .2s}.login-box button[type=submit]:hover{background:#2563eb}.login-box .error{color:#f87171;text-align:center;margin-bottom:1rem;font-size:.9rem}.login-box .footer{text-align:center;margin-top:1.5rem;font-size:.75rem;color:#64748b}#dashboard-screen{display:flex;flex-direction:column;min-height:100vh;background:#f1f5f9}.top-bar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background:#fff;border-bottom:1px solid #e2e8f0}.brand{display:flex;align-items:center;gap:.75rem}.brand-mark{width:36px;height:36px;border-radius:8px;background:#3b82f6;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem}.brand-name{font-weight:600;color:#0f172a;font-size:1rem}.top-bar-controls{display:flex;align-items:center;gap:1rem}.ai-provider-picker{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#475569}.ai-provider-picker select{padding:.3rem .5rem;border:1px solid #e2e8f0;border-radius:4px;background:#fff;font-size:.85rem}.ai-key-input{display:flex;gap:.5rem;align-items:center}.ai-key-input input{padding:.3rem .5rem;border:1px solid #e2e8f0;border-radius:4px;font-size:.85rem;width:200px}.ai-key-input button{padding:.3rem .75rem;background:#e2e8f0;border:none;border-radius:4px;cursor:pointer;font-size:.8rem}.btn-ghost{padding:.3rem .75rem;background:transparent;border:1px solid #e2e8f0;border-radius:4px;cursor:pointer;font-size:.85rem;color:#64748b}.btn-ghost:hover{background:#f1f5f9}.tabs{display:flex;gap:.25rem;padding:0 1.5rem;background:#fff;border-bottom:1px solid #e2e8f0;overflow-x:auto;white-space:nowrap}.tab{padding:.75rem 1rem;border:none;background:transparent;cursor:pointer;font-size:.875rem;color:#64748b;border-bottom:2px solid transparent;transition:all .15s;font-weight:500}.tab:hover{color:#0f172a}.tab.active{color:#0f172a;border-bottom-color:#3b82f6}.tab-content{flex:1;padding:1.5rem;overflow-y:auto}.tab-panel{display:none}.tab-panel.active{display:block}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.panel-header h2{font-size:1.25rem;color:#0f172a;font-weight:600}.panel-subtitle{color:#64748b;font-size:.875rem;margin-top:.25rem}.panel-controls{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.search-box{display:flex;gap:.5rem}.search-box input{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;width:250px}.search-box input:focus{outline:none;border-color:#3b82f6}.search-box button{padding:.5rem .75rem;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem}.btn-primary{padding:.5rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:background .15s}.btn-primary:hover{background:#2563eb}.btn-secondary{padding:.5rem 1rem;background:#e2e8f0;color:#475569;border:none;border-radius:6px;cursor:pointer;font-size:.875rem}.btn-secondary:hover{background:#cbd5e1}.btn-danger{padding:.5rem 1rem;background:#ef4444;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem}.btn-danger:hover{background:#dc2626}.btn-small{padding:.3rem .6rem;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;border-radius:4px;cursor:pointer;font-size:.8rem}.btn-small:hover{background:#e2e8f0}.filters-bar{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;padding:.75rem;background:#fff;border-radius:8px;border:1px solid #e2e8f0;margin-bottom:1rem}.filters-bar select{padding:.4rem .6rem;border:1px solid #e2e8f0;border-radius:4px;font-size:.85rem;background:#fff}.clear-filters-btn{margin-left:auto}.retailer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.retailer-card{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;display:flex;flex-direction:column;gap:.5rem}.retailer-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.retailer-header h3{font-size:1rem;margin:0;display:flex;align-items:center;gap:.5rem}.retailer-header h3 a{color:#0f172a;text-decoration:none;font-weight:600}.retailer-header h3 a:hover{color:#3b82f6}.rv-status{font-size:.7rem;padding:.15rem .4rem;border-radius:999px;text-transform:uppercase;letter-spacing:.03em;font-weight:600}.stat-discovered{background:#dbeafe;color:#1d4ed8}.stat-reviewed{background:#fef3c7;color:#b45309}.stat-contacted{background:#d1fae5;color:#047857}.stat-converted{background:#d1fae5;color:#047857;font-weight:700}.stat-suppressed{background:#fee2e2;color:#b91c1c}.position-badge{font-size:.7rem;padding:.15rem .4rem;border-radius:4px;font-weight:700;color:#fff;min-width:20px;text-align:center}.pos-A{background:#7c3aed}.pos-B{background:#4f46e5}.pos-C{background:#0891b2}.pos-D{background:#0d9488}.pos-E{background:#78716c}.rv-location{font-size:.85rem;color:#64748b}.rv-domain{color:#3b82f6;word-break:break-all}.rv-price{display:flex;gap:.75rem;font-size:.8rem;color:#475569;flex-wrap:wrap;align-items:center}.pl{font-weight:500;color:#64748b}.pv{font-weight:600;color:#0f172a}.pp{padding:.15rem .4rem;border-radius:4px;font-size:.7rem;font-weight:600}.pp-below{background:#dcfce7;color:#15803d}.pp-within{background:#dbeafe;color:#1d4ed8}.pp-above{background:#fee2e2;color:#b91c1c}.rv-scores{display:flex;flex-direction:column;gap:.25rem;padding:.5rem 0;border-top:1px solid #f1f5f9}.sr{display:flex;align-items:center;gap:.5rem;font-size:.78rem}.sr-priority{margin-top:.25rem;padding-top:.25rem;border-top:1px solid #e2e8f0}.sl{width:65px;font-weight:500;color:#64748b}.sb{flex:1;height:6px;background:#f1f5f9;border-radius:3px;overflow:hidden}.sf{height:100%;border-radius:3px;transition:width .3s}.sf.fit{background:#3b82f6}.sf.access{background:#10b981}.sf.strategic{background:#8b5cf6}.sf.commercial{background:#f59e0b}.sf.priority{background:#ef4444}.sv{width:28px;text-align:right;font-weight:600;color:#0f172a;font-size:.8rem}.sc-conf{font-size:.7rem;padding:.1rem .3rem;border-radius:3px;margin-top:.15rem}.sc-conf.high{background:#dcfce7;color:#15803d}.sc-conf.medium{background:#fef3c7;color:#92400e}.sc-conf.low{background:#fee2e2;color:#b91c1c}.sc-conf.needs-verification{background:#fee2e2;color:#b91c1c;font-weight:600}.rv-no-score{font-size:.8rem;color:#94a3b8;font-style:italic;padding:.25rem 0}.rv-portfolio{font-size:.8rem;color:#475569;padding:.25rem 0;border-top:1px solid #f1f5f9}.rv-portfolio .pl{font-weight:500}.rv-portfolio .pv{font-weight:600;color:#0f172a}.rv-actions{display:flex;gap:.5rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e2e8f0}.clients-kpis{display:flex;gap:1rem;margin-bottom:1rem}.kpi-card{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0;flex:1;min-width:150px}.kpi-num{font-size:1.75rem;font-weight:700;color:#0f172a}.kpi-label{font-size:.8rem;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.kpi-revenue{background:#d1fae5;border-color:#a7f3d0}.kpi-revenue .kpi-num{color:#047857}.client-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.client-card{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d}.client-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.client-header h3{font-size:1rem;color:#0f172a;font-weight:600}.client-status{font-size:.7rem;padding:.15rem .4rem;border-radius:999px;font-weight:600;text-transform:uppercase}.stat-active{background:#d1fae5;color:#047857}.stat-inactive{background:#f1f5f9;color:#64748b}.stat-lost{background:#fee2e2;color:#b91c1c}.client-body{font-size:.85rem;color:#475569}.client-body p{margin-bottom:.3rem}.client-last{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #f1f5f9;font-weight:500;color:#0f172a}.client-actions{display:flex;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e2e8f0}.product-grid,.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.product-card,.portfolio-card{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0}.product-header,.portfolio-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:.5rem}.product-header h4,.portfolio-header h4{font-size:1rem;color:#0f172a;font-weight:600;margin:0}.product-cat,.portfolio-url{font-size:.75rem;color:#64748b}.portfolio-url{color:#3b82f6;word-break:break-all}.product-price{font-size:.85rem;color:#475569;margin-bottom:.5rem}.product-price span{margin-right:1rem}.product-story{font-size:.8rem;color:#64748b;font-style:italic;margin-bottom:.5rem;line-height:1.4}.product-visual-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.5rem}.vt-tag{padding:.15rem .4rem;background:#dbeafe;color:#1d4ed8;border-radius:4px;font-size:.7rem;font-weight:500}.portfolio-desc{font-size:.85rem;color:#475569;margin-bottom:.5rem}.portfolio-meta{font-size:.78rem;color:#64748b}.portfolio-meta span{display:block;margin-bottom:.2rem}.campaigns-list{display:flex;flex-direction:column;gap:.75rem}.campaign-card{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0;border-left:4px solid #3b82f6}.campaign-card.paused{border-left-color:#94a3b8}.campaign-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.campaign-header h3{font-size:1rem;color:#0f172a;font-weight:600;margin:0}.campaign-status{font-size:.75rem;padding:.2rem .5rem;border-radius:999px;font-weight:600}.campaign-status.active{background:#d1fae5;color:#047857}.campaign-status.paused{background:#f1f5f9;color:#64748b}.campaign-card p{font-size:.85rem;color:#475569;margin-bottom:.25rem}.campaign-card p strong{color:#0f172a}.campaign-actions{display:flex;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e2e8f0}.discovery-queue{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0}.discovery-queue h3{font-size:1rem;color:#0f172a;margin-bottom:.75rem}.jobs-list{display:flex;flex-direction:column;gap:.5rem}.job-row{display:flex;align-items:center;gap:.75rem;font-size:.85rem;padding:.4rem 0;border-bottom:1px solid #f1f5f9}.job-status{font-size:.7rem;padding:.15rem .4rem;border-radius:4px;font-weight:600;text-transform:uppercase}.stat-pending{background:#fef3c7;color:#92400e}.stat-running{background:#dbeafe;color:#1d4ed8}.stat-extracted,.stat-classified,.stat-reviewed{background:#d1fae5;color:#047857}.stat-done{background:#dcfce7;color:#15803d}.stat-failed{background:#fee2e2;color:#b91c1c}.job-query{color:#0f172a;font-weight:500;flex:1}.job-date{color:#64748b;font-size:.75rem}.job-count{color:#475569;font-size:.75rem}.job-fail{color:#b91c1c;font-size:.75rem}.outreach-filters{display:flex;gap:.5rem;margin-bottom:1rem}.outreach-filters select{padding:.4rem .6rem;border:1px solid #e2e8f0;border-radius:4px;font-size:.85rem}.outreach-list{display:flex;flex-direction:column;gap:.75rem}.outreach-card{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0}.or-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;flex-wrap:wrap}.or-status{font-size:.7rem;padding:.15rem .4rem;border-radius:4px;font-weight:600;text-transform:uppercase}.stat-draft{background:#fef3c7;color:#92400e}.stat-approved{background:#dbeafe;color:#1d4ed8}.stat-sent{background:#d1fae5;color:#047857}.stat-replied{background:#e0e7ff;color:#4338ca}.stat-interested{background:#dcfce7;color:#15803d}.stat-order{background:#047857;color:#fff}.stat-declined,.stat-suppressed{background:#fee2e2;color:#b91c1c}.or-retailer{font-weight:600;color:#0f172a}.or-date{color:#64748b;font-size:.75rem}.or-portfolio{font-size:.8rem;color:#475569;margin-bottom:.3rem}.or-draft{font-size:.85rem;color:#475569;background:#f8fafc;padding:.5rem;border-radius:4px;margin-bottom:.3rem;line-height:1.4}.or-reason{font-size:.8rem;color:#475569;margin-bottom:.3rem}.or-reason strong{color:#0f172a}.or-revenue{font-size:.85rem;color:#047857;font-weight:600}.or-reply{font-size:.8rem;color:#475569}.or-followup{font-size:.8rem;color:#b45309}.or-actions{display:flex;gap:.5rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e2e8f0;flex-wrap:wrap}.compliance-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.3rem .75rem;border-radius:999px;font-size:.8rem;font-weight:500;margin-left:auto}.compliance-status.disabled{color:#b91c1c}.compliance-status.ai-check{color:#92400e}.compliance-status.active{color:#047857}.compliance-label{color:#64748b}.analytics-dashboard{display:flex;flex-direction:column;gap:1.5rem}.kpis,.kpi-row{display:flex;flex-wrap:wrap;gap:1rem}.kpi-card{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0;flex:1;min-width:120px}.kpi-card.kpi-revenue{background:#d1fae5;border-color:#a7f3d0}.settings-sections{display:flex;flex-direction:column;gap:2rem}.settings-section{background:#fff;border-radius:8px;padding:1.5rem;border:1px solid #e2e8f0}.settings-section h3{font-size:1.1rem;color:#0f172a;margin-bottom:1rem;font-weight:600}.settings-hint{font-size:.8rem;color:#64748b;margin-bottom:.75rem}.settings-form,.weights-form,.ai-config,.telegram-config{display:flex;flex-direction:column;gap:.75rem}.field{display:flex;flex-direction:column;gap:.3rem}.field>span{font-size:.85rem;font-weight:500;color:#0f172a}.field input,.field textarea,.field select{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-family:inherit}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:#3b82f6}.field textarea{resize:vertical}.weights-form{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:.75rem;align-items:center}.weight-row label{font-size:.85rem;color:#0f172a;font-weight:500}.weight-row input{width:60px;padding:.4rem;border:1px solid #e2e8f0;border-radius:4px;text-align:center}.weight-pct{font-size:.85rem;color:#64748b}.email-accounts{display:flex;flex-direction:column;gap:.5rem}.email-account-row{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0;font-size:.85rem}.ea-provider{font-weight:600;color:#0f172a;min-width:60px}.ea-address{flex:1;color:#3b82f6;word-break:break-all}.ea-status{font-size:.75rem;padding:.15rem .4rem;border-radius:4px}.ea-status.connected{background:#d1fae5;color:#047857}.ea-status.not-connected{background:#f1f5f9;color:#64748b}.ea-sales{background:#dbeafe;color:#1d4ed8;padding:.1rem .4rem;border-radius:4px;font-size:.7rem;font-weight:600}.hint{font-size:.75rem;color:#94a3b8;margin-top:.2rem}.hint a{color:#3b82f6}.toggle-field{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #f1f5f9}.toggle-field:last-child{border-bottom:none}.toggle-field span{font-size:.875rem;color:#0f172a;font-weight:500}.toggle-field input[type=checkbox]{display:none}.toggle-switch{width:44px;height:24px;background:#e2e8f0;border-radius:12px;position:relative;cursor:pointer;transition:background .2s;flex-shrink:0}.toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #0003}.toggle-field input[type=checkbox]:checked+.toggle-switch{background:#3b82f6}.toggle-field input[type=checkbox]:checked+.toggle-switch:after{transform:translate(20px)}.compliance-controls{display:flex;flex-direction:column;gap:0;padding:1rem;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.chat-panel{width:320px;flex-shrink:0;background:#fff;border-left:1px solid #e2e8f0;display:flex;flex-direction:column;max-height:calc(100vh - 60px)}.chat-header{padding:.75rem 1rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between}.chat-header h3{font-size:.9rem;color:#0f172a;font-weight:600;margin:0}.chat-status{font-size:.75rem;color:#10b981}.chat-status.typing{color:#3b82f6}.chat-status.error{color:#ef4444}.chat-messages{flex:1;overflow-y:auto;padding:.75rem;display:flex;flex-direction:column;gap:.5rem;background:#f8fafc;min-height:200px}.chat-empty{color:#94a3b8;font-size:.8rem;text-align:center;padding:1rem;line-height:1.5}.chat-empty .chat-suggest{color:#3b82f6;font-style:italic}.chat-msg{font-size:.85rem;padding:.4rem .6rem;border-radius:6px;line-height:1.4;max-width:90%}.chat-msg-user{background:#e2e8f0;color:#0f172a;align-self:flex-end}.chat-msg-assistant{background:#3b82f6;color:#fff;align-self:flex-start}.chat-msg-header{font-size:.7rem;opacity:.7;margin-bottom:.2rem}.chat-msg-body{white-space:pre-wrap}.chat-input-box{display:flex;gap:.5rem;padding:.75rem;border-top:1px solid #e2e8f0}.chat-input-box textarea{flex:1;padding:.6rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-family:inherit;resize:none;min-height:40px;max-height:120px}.chat-input-box textarea:focus{outline:none;border-color:#3b82f6}.chat-input-box button{padding:.6rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem}.chat-input-box button:hover{background:#2563eb}.chat-footer{padding:.5rem .75rem;border-top:1px solid #e2e8f0}.chat-hint{font-size:.7rem;color:#94a3b8;line-height:1.4}.modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center}.modal-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:-1}.modal-content{background:#fff;border-radius:12px;padding:2rem;max-width:600px;width:90%;max-height:85vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px #0000004d}.modal-wide{max-width:700px}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#64748b;padding:.25rem}.modal-close:hover{color:#0f172a}.detail-header{margin-bottom:1.5rem}.back-link{color:#3b82f6;text-decoration:none;font-size:.875rem}.back-link:hover{text-decoration:underline}.detail-header h1{font-size:1.5rem;color:#0f172a;margin:.5rem 0}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.detail-section{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0}.detail-section h2{font-size:1rem;color:#0f172a;margin-bottom:.75rem;font-weight:600}.detail-item{display:flex;gap:.75rem;padding:.3rem 0;font-size:.875rem}.detail-item dt{color:#64748b;min-width:100px;font-size:.8rem}.detail-item dd{color:#0f172a;flex:1}.detail-scores{display:flex;flex-direction:column;gap:.5rem}.ds-row{display:flex;align-items:center;gap:.5rem}.ds-row label{width:70px;font-size:.8rem;color:#64748b;font-weight:500}.ds-bar{flex:1;height:8px;background:#f1f5f9;border-radius:4px;overflow:hidden}.ds-fill{height:100%;border-radius:4px}.ds-fill.fit{background:#3b82f6}.ds-fill.access{background:#10b981}.ds-fill.strategic{background:#8b5cf6}.ds-fill.commercial{background:#f59e0b}.ds-fill.priority{background:#ef4444}.ds-val{width:32px;text-align:right;font-weight:600;color:#0f172a;font-size:.85rem}.ds-conf{font-size:.7rem;padding:.1rem .3rem;border-radius:3px;margin-left:.5rem}.ds-conf.high{background:#dcfce7;color:#15803d}.ds-conf.medium{background:#fef3c7;color:#92400e}.ds-conf.low{background:#fee2e2;color:#b91c1c}.detail-hint{font-size:.75rem;color:#94a3b8;margin-top:.5rem;padding:.4rem;background:#f8fafc;border-radius:4px;line-height:1.4}.price-summary{font-size:.875rem;color:#475569}.price-big{font-size:1.1rem;color:#0f172a;font-weight:600;margin:.25rem 0}.price-summary details{margin-top:.5rem}.price-summary summary{cursor:pointer;color:#3b82f6;font-size:.8rem}.price-summary pre{font-size:.75rem;background:#f8fafc;padding:.5rem;border-radius:4px;margin-top:.3rem;max-height:200px;overflow:auto}.pp-below{background:#dcfce7;color:#15803d;padding:.1rem .4rem;border-radius:4px;font-size:.75rem;font-weight:600}.pp-within{background:#dbeafe;color:#1d4ed8;padding:.1rem .4rem;border-radius:4px;font-size:.75rem;font-weight:600}.pp-above{background:#fee2e2;color:#b91c1c;padding:.1rem .4rem;border-radius:4px;font-size:.75rem;font-weight:600}.contact-card{padding:.75rem;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0;margin-bottom:.5rem}.contact-card.suppressed{background:#fee2e2;border-color:#fecaca}.contact-type{font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:#64748b;font-weight:600;margin-bottom:.2rem}.contact-role{font-size:.8rem;color:#475569}.contact-name{font-size:.85rem;color:#0f172a;font-weight:500}.contact-meta{font-size:.75rem;color:#94a3b8;margin-top:.3rem;display:flex;gap:.75rem}.badge-tag{display:inline-block;padding:.2rem .5rem;background:#dbeafe;color:#1d4ed8;border-radius:4px;font-size:.75rem;margin:.15rem}.pm-row{display:flex;align-items:center;gap:.75rem;padding:.4rem 0;font-size:.8rem;border-bottom:1px solid #f1f5f9}.pm-name{flex:1;color:#0f172a;font-weight:500}.pm-score{width:32px;text-align:center;font-weight:600;color:#3b82f6}.pm-reason{color:#64748b;font-size:.75rem;flex:1}.outreach-row{display:flex;align-items:center;gap:.75rem;padding:.4rem 0;font-size:.8rem;border-bottom:1px solid #f1f5f9}.or-msg{flex:1;color:#475569}.or-rev{font-weight:600;color:#047857}.detail-notes{font-size:.85rem;color:#475569;line-height:1.5;white-space:pre-wrap;background:#f8fafc;padding:.5rem;border-radius:4px;margin-top:.3rem}.detail-footer{display:flex;gap:.75rem;padding-top:1rem;border-top:1px solid #e2e8f0;margin-top:1rem}.edit-form{display:flex;flex-direction:column;gap:.75rem}.edit-form .field{display:flex;flex-direction:column;gap:.25rem}.edit-form label span{font-size:.85rem;font-weight:500;color:#0f172a}.edit-form input[type=text],.edit-form input[type=number],.edit-form textarea,.edit-form select{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-family:inherit}.edit-form input:focus,.edit-form textarea:focus,.edit-form select:focus{outline:none;border-color:#3b82f6}.edit-form textarea{resize:vertical}.toast{position:fixed;bottom:2rem;right:2rem;padding:.75rem 1.25rem;border-radius:8px;color:#fff;font-size:.875rem;font-weight:500;z-index:2000;box-shadow:0 4px 12px #0003;opacity:1;transition:opacity .3s}.toast-success{background:#10b981}.toast-error{background:#ef4444}.toast-warning{background:#f59e0b}@media (max-width: 1024px){.chat-panel{width:280px}}@media (max-width: 768px){.top-bar{flex-direction:column;align-items:stretch;gap:.5rem}.top-bar-controls{flex-wrap:wrap}.tabs{padding:0 .75rem;overflow-x:auto}.tab-content{padding:1rem}.detail-grid,.retailer-grid{grid-template-columns:1fr}.chat-panel{position:fixed;bottom:0;left:0;right:0;top:auto;width:100%;height:50vh;z-index:100;border-left:none;border-top:1px solid #e2e8f0}body{padding-bottom:50vh}}
