@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap");:root{color-scheme:light;--list-row-inset:15px;--bg:#f5f7fc;--surface:#ffffff;--border:#e2e7f3;--text:#0d1526;--muted:#5d6980;--soft:#68738a;--accent:#2044d6;--accent-2:#1734a8;--accent-pale:#e5ebfd;--accent-contrast:#ffffff;--danger:#b3261e;--green:#15803d;--green-pale:rgba(21,128,61,0.1);--amber:#b45309;--amber-pale:#fef3e2;--shadow-sm:0 8px 20px rgba(23,52,168,0.08);--shadow-md:0 18px 40px rgba(23,52,168,0.14);--shadow-glow:0 0 0 4px rgba(32,68,214,0.14),0 20px 40px -16px rgba(23,52,168,0.35);--btn-padding:0.5rem 0.95rem;--btn-font-size:0.85rem;--btn-weight:600;--btn-radius:8px;--btn-shadow:0 1px 0 rgba(255,255,255,0.22) inset,0 6px 14px -8px rgba(23,52,168,0.42);--btn-shadow-hover:0 1px 0 rgba(255,255,255,0.22) inset,0 9px 18px -9px rgba(23,52,168,0.5);--radius-sm:12px;--radius-md:18px;--radius-lg:26px}*{box-sizing:border-box}html{font-size:106.25%}body{margin:0;background:radial-gradient(1100px 480px at 100% -10%,rgba(32,68,214,.1),transparent 60%),radial-gradient(900px 420px at -10% 10%,rgba(14,165,233,.07),transparent 55%),var(--bg);color:var(--text);font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}.brand-mark,.section-title,h1,h2,h3{font-family:Space Grotesk,Manrope,ui-sans-serif,-apple-system,sans-serif}a{color:var(--accent-2)}input,textarea{font:inherit;padding:.68rem .85rem;border:1.5px solid transparent;border-radius:var(--radius-sm);background:var(--bg);color:var(--text);width:100%;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}input::placeholder,textarea::placeholder{color:var(--soft)}input:hover:not(:focus),textarea:hover:not(:focus){border-color:var(--border)}input:focus,select:focus,textarea:focus{outline:none;background:var(--surface);border-color:var(--accent);box-shadow:var(--shadow-glow)}button{font:inherit;padding:var(--btn-padding);border:1.5px solid transparent;border-radius:var(--btn-radius);background:linear-gradient(180deg,#3357e6,#1c3cb4);color:var(--accent-contrast);font-size:var(--btn-font-size);font-weight:var(--btn-weight);letter-spacing:-.01em;cursor:pointer;box-shadow:var(--btn-shadow);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}button:hover:not(:disabled){background:linear-gradient(180deg,#1c3cb4,#142e8f);box-shadow:var(--btn-shadow-hover);transform:translateY(-1px)}button:disabled{opacity:.5;cursor:not-allowed;transform:none}button.secondary{background:transparent;border-color:var(--border);color:var(--accent-2);box-shadow:none}button.secondary:hover:not(:disabled){background:var(--accent-pale);border-color:var(--accent);box-shadow:none;transform:translateY(-1px)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.35rem;margin-bottom:1rem;box-shadow:var(--shadow-sm);transition:transform .22s cubic-bezier(.16,.84,.44,1),box-shadow .22s ease,border-color .22s ease}.panel{min-width:0}.panel-head h2,.panel>h2{margin:0 0 .35rem;font-size:1.05rem;letter-spacing:-.01em}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.panel-head>div{min-width:0}.panel-head p{margin:0;font-size:.9rem;line-height:1.5}.muted{color:var(--muted)}.error{color:var(--danger);font-size:.9rem}.field{margin-bottom:1rem}.field label{margin-bottom:.4rem;font-size:.76rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}select{font:inherit;padding:.68rem .85rem;border:1.5px solid transparent;border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-weight:600}select:hover:not(:focus){border-color:var(--border)}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.auth-side{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:2rem;padding:clamp(2rem,5vw,4rem);overflow:hidden;color:#ffffff;background:linear-gradient(150deg,#0a1230,#1734a8 45%,#2044d6 75%,#152a7a);background-size:220% 220%;animation:auth-gradient-shift 22s ease infinite}@keyframes auth-gradient-shift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.auth-blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.45;pointer-events:none}.auth-blob-1{width:380px;height:380px;top:-120px;left:-100px;background:radial-gradient(circle at 30% 30%,#b9cdfb,transparent 70%);animation:auth-float-1 16s ease-in-out infinite}.auth-blob-2{width:420px;height:420px;bottom:-160px;right:-120px;background:radial-gradient(circle at 60% 40%,#6e9bff,transparent 70%);animation:auth-float-2 20s ease-in-out infinite}.auth-blob-3{width:280px;height:280px;top:45%;left:55%;background:radial-gradient(circle at 50% 50%,#0ea5e9,transparent 70%);animation:auth-float-3 14s ease-in-out infinite}@keyframes auth-float-1{0%,to{transform:translate(0) scale(1)}50%{transform:translate(60px,40px) scale(1.1)}}@keyframes auth-float-2{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-50px,-30px) scale(1.08)}}@keyframes auth-float-3{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-40px,50px) scale(.92)}}.auth-grid-overlay{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 0);background-size:42px 42px;-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 40%,black 40%,transparent 90%);mask-image:radial-gradient(ellipse 80% 60% at 50% 40%,black 40%,transparent 90%);pointer-events:none}.auth-brand{position:relative;z-index:1;display:flex;align-items:center;gap:.65rem;animation:auth-brand-in .62s cubic-bezier(.16,.84,.44,1)}.auth-brand .brand-logo{width:34px;height:34px;padding:5px;border-radius:10px;background:#ffffff;box-shadow:0 6px 16px rgba(13,21,38,.35)}.auth-brand-text{font-family:Space Grotesk,sans-serif;font-size:1.15rem;font-weight:700;letter-spacing:-.02em;color:#ffffff;text-shadow:0 2px 10px rgba(13,21,38,.35)}.auth-brand-text .brand-accent{color:#eaf0fe}.auth-side-copy{position:relative;z-index:1;max-width:420px}.auth-side-copy h2{margin:0 0 .85rem;font-size:clamp(1.25rem,2.1vw,1.7rem);line-height:1.25;letter-spacing:-.02em}.auth-side-list{list-style:none;margin:1.4rem 0 0;padding:0;display:flex;flex-direction:column;gap:.75rem}.auth-side-list li{display:flex;align-items:flex-start;gap:.65rem;font-size:.85rem;line-height:1.5;color:rgba(255,255,255,.86)}.auth-side-list li:before{content:"";flex-shrink:0;width:18px;height:18px;margin-top:.1rem;border-radius:50%;background:rgba(255,255,255,.16);background-image:linear-gradient(135deg,#ffffff,#b9cdfb);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/60% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/60% no-repeat}.auth-side-foot{position:relative;z-index:1;font-size:.78rem;color:rgba(255,255,255,.55)}@keyframes auth-brand-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}.auth-main{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:1.5rem;background:#ffffff}.auth-card{width:100%;max-width:330px;padding:1.5rem 1.55rem;border-radius:16px;border:1px solid var(--border);box-shadow:0 1px 2px rgba(13,21,38,.04),0 24px 48px -24px rgba(23,52,168,.22);animation:auth-card-in .48s cubic-bezier(.16,.84,.44,1) .12s both}.auth-card h1{margin:0 0 .25rem;font-size:1.08rem}.auth-card-subtitle{margin:0 0 1rem;color:var(--muted);font-size:.78rem}.auth-card .field{margin-bottom:.75rem}.auth-card .field label{margin-bottom:.3rem;font-size:.7rem}.auth-card .field input{padding:.5rem .7rem;font-size:.84rem}.auth-card button[type=submit]{width:100%;padding:.66rem 1rem;margin-top:.45rem;border-radius:10px;font-size:.78rem;font-weight:600;letter-spacing:.01em}.auth-card .muted{font-size:.76rem}.auth-card-foot{margin-top:.8rem;text-align:center}.auth-google{display:flex;justify-content:center;min-height:36px}.auth-divider{display:flex;align-items:center;gap:.7rem;margin:1rem 0;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.03em}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:var(--border)}@keyframes auth-card-in{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}@media (max-width:860px){.auth-shell{grid-template-columns:1fr}.auth-side{display:none}}@media (prefers-reduced-motion:reduce){.auth-blob-1,.auth-blob-2,.auth-blob-3,.auth-brand,.auth-card,.auth-side{animation:none}}.field label{display:block;font-size:.85rem;color:var(--muted);margin-bottom:.25rem}.tag{display:inline-block;padding:.2rem .6rem;border-radius:999px;background:var(--accent-pale);border:1px solid transparent;color:var(--accent-2);font-size:.78rem;font-weight:650;margin:.15rem .25rem .15rem 0}.shell{display:flex;flex-direction:column;min-height:100vh}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:10;gap:clamp(.75rem,2vw,2rem);max-width:100%;padding:.85rem clamp(1.5rem,3vw,3rem);background:rgba(255,255,255,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.brand-mark,.topbar{display:flex;align-items:center}.brand-mark{gap:.55rem;flex-shrink:0;font-weight:780;letter-spacing:-.02em}.brand-logo{display:block;width:30px;height:30px;flex-shrink:0}.brand-accent{color:var(--accent-2)}.topbar nav{display:flex;align-items:center;gap:.3rem;flex:1 1;min-width:0;overflow-x:auto;scrollbar-width:none}.topbar nav::-webkit-scrollbar{display:none}.topbar nav a{display:block;flex-shrink:0;padding:.38rem .8rem;border-radius:7px;color:var(--muted);text-decoration:none;font-size:.82rem;font-weight:550;white-space:nowrap;transition:background .16s ease,color .16s ease}.topbar nav a.active,.topbar nav a:hover{background:var(--accent-pale);color:var(--accent-2)}.topbar nav a.active{font-weight:650}.topbar-brand{display:flex;align-items:center;gap:.6rem;flex-shrink:0;font-size:.85rem}.topbar-brand button{padding:.4rem .9rem;font-size:.82rem}.main{flex:1 1;min-width:0;width:100%;margin:0 auto;padding:2rem clamp(1.5rem,3vw,3rem);max-width:min(1900px,100%)}.page-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:1.75rem;gap:1rem}.page-header h1{margin:0 0 .3rem;font-size:1.6rem;letter-spacing:-.02em}.page-header .muted{margin:0;font-size:.88rem;max-width:620px}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;border-radius:999px;font-size:.75rem;font-weight:700;border:1px solid transparent}.badge-reddit{background:#fdece7;color:#ff4500}.badge-x{background:#eef0f2;color:#0f1419}.chip{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:999px;font-size:.75rem;font-weight:700}.chip-high_intent{background:var(--green-pale);color:var(--green)}.chip-emerging{background:var(--amber-pale);color:var(--amber)}.chip-competitor{background:#ede9fe;color:#6d28d9}.chip-low,.chip-unrelated{background:var(--bg);color:var(--soft)}.chip-read{background:var(--bg);color:var(--muted)}.chip-replied{background:var(--green-pale);color:var(--green)}.chip-archived{background:#eef0f4;color:#5d6980}.chip-drafted,.chip-new,.chip-retained{background:var(--accent-pale);color:var(--accent-2)}.chip-reviewed{background:var(--amber-pale);color:var(--amber)}.chip-handled{background:var(--green-pale);color:var(--green)}.chip-dismissed{background:var(--bg);color:var(--soft)}.signal-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));grid-gap:1.1rem;gap:1.1rem;align-items:stretch}.signal-list .card{display:flex;flex-direction:column;height:100%;min-height:220px;margin-bottom:0;position:relative;overflow:hidden}.signal-list .card:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,#3357e6,#0ea5e9);opacity:0;transition:opacity .22s ease}.signal-list .card:hover{transform:translateY(-6px) scale(1.012);box-shadow:var(--shadow-md);border-color:rgba(32,68,214,.35)}.signal-list .card:hover:before{opacity:1}.signal-meta{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;flex-wrap:wrap}.signal-meta .muted{font-size:.85rem}.signal-title{margin:0 0 .35rem;font-size:1rem;font-weight:650}.stat-row{display:flex;gap:1.5rem;margin-top:.75rem;font-size:.85rem;color:var(--muted);font-weight:600}.connection-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--border)}.connection-row:last-child{border-bottom:none}.connection-info{display:flex;align-items:center;gap:.75rem}.connection-status{font-size:.8rem;color:var(--muted)}.connection-status.connected{color:var(--green);font-weight:700}.icon-x{border-radius:6px;background:#0f1419;font-size:.75rem}.icon-reddit,.icon-x{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700}.icon-reddit{border-radius:50%;background:#ff4500;font-size:.7rem}.queue-row{display:grid;grid-template-columns:1fr auto;grid-gap:1rem;gap:1rem;align-items:start}.draft-box{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.75rem;margin-top:.5rem;font-size:.9rem}.list-inline{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.1rem;gap:1.1rem;align-items:stretch}.product-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:1rem;gap:1rem;margin-bottom:0;text-decoration:none;color:inherit;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:rgba(32,68,214,.35)}.product-card-text{min-width:0}.product-card-name{margin:0 0 .15rem;font-size:1.05rem;font-weight:650;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-card-text p{margin:0;font-size:.85rem}.product-card-open{flex-shrink:0;padding:.4rem .85rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);font-size:.85rem;font-weight:600;white-space:nowrap}.product-card:hover .product-card-open{border-color:var(--accent);color:var(--accent)}.wizard-steps{gap:.5rem;margin-bottom:1.25rem}.wizard-step,.wizard-steps{display:flex;align-items:center}.wizard-step{gap:.4rem;font-size:.85rem;color:var(--muted)}.wizard-step-number{display:flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border-radius:50%;border:1.5px solid var(--border);font-size:.8rem;font-weight:700}.wizard-step.active{color:var(--fg)}.wizard-step.active .wizard-step-number{border-color:var(--accent);color:var(--accent)}.wizard-step.done .wizard-step-number{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast,#fff)}.wizard-step-sep{width:1.5rem;height:1px;background:var(--border)}.product-logo{width:64px;height:64px;flex-shrink:0;border-radius:var(--radius-sm);object-fit:contain;background:var(--bg);border:1px solid var(--border)}.product-logo-fallback{display:grid;place-items:center;font-size:1.6rem;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--bg))}.search-settings-form{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;margin-top:.5rem}.search-settings-field{display:flex;flex-direction:column;gap:.3rem}.search-settings-field input{width:9rem}.section-title{font-size:.98rem;font-weight:700;margin:0 0 .75rem;letter-spacing:-.01em}.empty-state{color:var(--muted);font-size:.9rem;padding:1rem 0}.empty-panel{flex-direction:column;text-align:center;gap:.4rem;padding:3rem 2rem;border:1.5px dashed var(--border);background:radial-gradient(420px 220px at 50% 0,rgba(32,68,214,.06),transparent 70%),var(--surface)}.empty-panel,.empty-panel-icon{display:flex;align-items:center}.empty-panel-icon{justify-content:center;width:56px;height:56px;margin-bottom:.6rem;border-radius:16px;background:linear-gradient(160deg,var(--accent-pale),#ffffff);border:1px solid var(--border);color:var(--accent-2)}.empty-panel-icon svg{width:26px;height:26px}.empty-panel h3{margin:0;font-size:1.05rem;letter-spacing:-.01em}.empty-panel p{margin:0;max-width:420px;color:var(--muted);font-size:.9rem;line-height:1.55}.empty-panel .empty-panel-actions{display:flex;gap:.6rem;margin-top:1.1rem}.button-link{display:inline-block;font:inherit;padding:var(--btn-padding);border:1.5px solid transparent;border-radius:var(--btn-radius);background:linear-gradient(180deg,#3357e6,#1c3cb4);color:var(--accent-contrast);font-size:var(--btn-font-size);font-weight:var(--btn-weight);letter-spacing:-.01em;text-decoration:none;cursor:pointer;box-shadow:var(--btn-shadow);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.button-link:hover{background:linear-gradient(180deg,#1c3cb4,#142e8f);box-shadow:var(--btn-shadow-hover);transform:translateY(-1px);text-decoration:none}.filter-grid{display:flex;flex-wrap:wrap;gap:.5rem;align-items:end}.filter-grid input,.filter-grid select{padding:.4rem .6rem;font-size:.85rem;border-radius:8px}.filter-grid button{padding:.4rem .85rem;font-size:.85rem}.filter-search{max-width:220px}.filter-number{display:flex;flex-direction:column;gap:.25rem;font-size:.78rem;color:var(--muted);max-width:110px}.signal-excerpt{color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;flex:1 1}.signal-excerpt.expanded{display:block;-webkit-line-clamp:unset;overflow:visible}.signal-excerpt-lead{color:var(--text);font-size:1rem;font-weight:550;line-height:1.45}.signal-actions{display:flex;align-items:center;gap:1rem;margin-top:auto;padding-top:.75rem}.signal-actions button{padding:.45rem 1rem;font-size:.85rem}.signal-actions a{color:var(--accent-2);font-weight:700;font-size:.85rem}button.quiet{background:var(--surface);border:1.5px solid var(--border);border-radius:7px;box-shadow:none;padding:.32rem .65rem;color:var(--muted);font-size:.76rem;font-weight:650;white-space:nowrap;transition:color .14s ease,border-color .14s ease,background .14s ease,transform .14s ease}button.quiet:hover:not(:disabled){color:var(--accent-2);border-color:var(--accent);background:var(--accent-pale);transform:translateY(-1px);box-shadow:none}button.quiet.danger{color:#c4483d;border-color:rgba(196,72,61,.35)}button.quiet.danger:hover:not(:disabled){color:var(--danger);border-color:var(--danger);background:rgba(179,38,30,.08)}.signal-manage-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem;padding-top:.6rem;border-top:1px dashed var(--border)}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.dashboard-stat{display:flex;flex-direction:column;gap:.15rem;padding:.9rem 1.1rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm)}.dashboard-stat-value{font-family:Space Grotesk,sans-serif;font-size:1.6rem;font-weight:700;letter-spacing:-.02em}.dashboard-stat-label{font-size:.78rem;font-weight:650;color:var(--muted)}.dashboard-stat.stat-high_intent .dashboard-stat-value{color:var(--green)}.dashboard-stat.stat-emerging .dashboard-stat-value{color:var(--amber)}.dashboard-stat.stat-competitor .dashboard-stat-value{color:#6d28d9}.dashboard-stat.stat-low .dashboard-stat-value,.dashboard-stat.stat-unrelated .dashboard-stat-value{color:var(--soft)}.section-divider{display:flex;align-items:center;gap:.85rem;margin:1.75rem 0 1rem;color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.section-divider:after,.section-divider:before{content:"";flex:1 1;height:1px;background:var(--border)}.section-divider-unrelated{color:var(--soft);margin-top:2.25rem}.section-divider-unrelated:after,.section-divider-unrelated:before{background:var(--soft);opacity:.4}.signal-card-unrelated{opacity:.6;filter:grayscale(.4)}.signal-card-unrelated:hover{opacity:.85}.purge-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem;padding:.85rem 1.1rem;border-radius:var(--radius-sm);border:1px solid rgba(180,83,9,.25);background:var(--amber-pale);color:var(--amber);font-size:.85rem;font-weight:600}.purge-banner-timer{font-family:Space Grotesk,sans-serif;font-weight:700;white-space:nowrap}.modal-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:rgba(13,21,38,.45);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:modal-fade-in .16s ease}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.modal-card{width:100%;max-width:360px;padding:1.5rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-md);animation:modal-pop-in .18s cubic-bezier(.16,.84,.44,1)}@keyframes modal-pop-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.modal-card-bare{width:max-content;max-width:min(360px,100%)}.modal-card-bare .modal-title{margin-bottom:0}.modal-card-bare .modal-actions{margin-top:1.1rem}.modal-brand{display:flex;align-items:center;gap:.4rem;margin-bottom:.9rem;color:var(--soft);font-size:.7rem;font-weight:700;letter-spacing:.02em}.modal-brand .brand-logo{width:12px;height:12px}.modal-title{margin:0 0 .4rem;font-size:1.05rem;letter-spacing:-.01em}.modal-message{margin:0;color:var(--muted);font-size:.9rem;line-height:1.55}.modal-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:1.5rem}.modal-actions button{padding:.5rem 1rem;font-size:.85rem}button.danger-solid{background:linear-gradient(180deg,#e15b4e,#c4483d);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 12px 22px -10px rgba(196,72,61,.6)}button.danger-solid:hover:not(:disabled){background:linear-gradient(180deg,#d64f42,#b3392e);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 16px 28px -10px rgba(196,72,61,.7)}.discovery-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.discovery-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .85rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}.discovery-row-main{display:flex;align-items:center;gap:.6rem;min-width:0;flex-wrap:wrap}.discovery-row-name{font-weight:700;font-size:.92rem}.discovery-row-meta{color:var(--muted);font-size:.8rem}.discovery-row-link{font-size:.78rem;font-weight:700;white-space:nowrap}.discovery-row-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.status-pill{display:inline-flex;align-items:center;padding:.15rem .55rem;border-radius:999px;font-size:.72rem;font-weight:700;background:var(--accent-pale);color:var(--accent-2)}.status-pill-paused{background:var(--bg);color:var(--soft)}.discovery-add-form{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem;padding-top:.85rem;border-top:1px dashed var(--border)}.discovery-add-form input{flex:1 1;min-width:200px}.chip-removable-list{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.5rem}.chip-removable{display:inline-flex;align-items:center;gap:.4rem;padding:.28rem .4rem .28rem .7rem;border-radius:999px;background:var(--accent-pale);color:var(--accent-2);font-size:.8rem;font-weight:650}.chip-removable.chip-user{background:var(--green-pale);color:var(--green)}.chip-removable button{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border-radius:50%;background:rgba(0,0,0,.08);color:inherit;box-shadow:none;font-size:.7rem;line-height:1}.chip-removable button:hover:not(:disabled){background:rgba(0,0,0,.18);transform:none;box-shadow:none}.keyword-model-section{margin-top:1rem}.keyword-model-section:first-child{margin-top:0}.keyword-model-section-label{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:.3rem}.keyword-model-actions{display:flex;align-items:center;gap:.6rem;margin-top:1.1rem;padding-top:1rem;border-top:1px solid var(--border)}.modal-message a{font-weight:700}.modal-hint{display:flex;align-items:center;gap:.4rem;margin-top:.75rem;padding:.6rem .75rem;border-radius:10px;background:var(--accent-pale);color:var(--accent-2);font-size:.82rem;font-weight:650}.discovery-shell{max-width:1040px;margin:0 auto}.sticky-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));grid-gap:2.75rem 2.25rem;gap:2.75rem 2.25rem;align-items:start;padding:.75rem .25rem 2rem}.panel,.sticky-note{position:relative;margin-bottom:0;border-radius:var(--radius-md);padding:1.75rem 1.75rem 1.5rem;background:linear-gradient(160deg,#ffffff,#fafbff 55%,#f2f5fd);box-shadow:0 1px 1px rgba(13,21,38,.05),0 2px 4px rgba(13,21,38,.06),0 14px 18px -10px rgba(23,52,168,.28),0 34px 42px -22px rgba(23,52,168,.32);transform:translateY(0) scale(1);transition:transform .32s cubic-bezier(.16,.84,.44,1),box-shadow .32s ease;font-size:.9rem}.panel .section-title,.sticky-note .section-title{font-size:.92rem}.panel button.quiet,.sticky-note button.quiet{padding:.32rem .65rem;border-radius:7px}.panel:hover,.sticky-note:hover{transform:translateY(-10px) scale(1.02);box-shadow:0 2px 2px rgba(13,21,38,.06),0 4px 8px rgba(13,21,38,.08),0 26px 32px -14px rgba(23,52,168,.36),0 48px 62px -26px rgba(23,52,168,.4)}.product-page{display:flex;flex-direction:column;gap:1.75rem;padding:.75rem .25rem 2rem}.product-page-row{display:grid;grid-gap:1.5rem;gap:1.5rem;align-items:start}.product-page-row-full,.product-page-row-top{grid-template-columns:minmax(0,1fr)}.product-page-row-bottom{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}@media (max-width:900px){.product-page-row-bottom,.product-page-row-full,.product-page-row-top{grid-template-columns:minmax(0,1fr)}}.product-page .card,.product-page .sticky-note{min-width:0;margin-bottom:0}.product-identity-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:1rem;margin-bottom:.75rem}.product-identity-name{flex:1 1 9rem;min-width:0}.product-identity .logo-picker{margin-bottom:0}.product-identity .logo-picker-preview{display:flex;align-items:center}.logo-picker-compact .logo-picker-dropzone{flex-direction:row;gap:.4rem;width:7.5rem;height:44px;min-height:0;padding:0 .6rem;font-size:.78rem;font-weight:600;white-space:nowrap;color:var(--accent-2)}.card-divider{border:none;border-top:1px solid var(--border);margin:1.1rem 0}.keyword-count{margin-left:auto;font-size:.78rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.crawl-settings{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;padding:.75rem .9rem;margin:.6rem 0 .9rem;border-radius:var(--radius-sm);background:var(--accent-pale);border:1px solid var(--border)}.crawl-settings-field{display:flex;flex-direction:column;gap:.25rem}.crawl-settings-field label{font-size:.7rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.crawl-settings-field input{width:6.5rem;padding:.4rem .55rem;font-size:.85rem}.warning-bar{display:flex;align-items:center;gap:.5rem;padding:.7rem .9rem;margin-bottom:.9rem;border-radius:var(--radius-sm);border:1px solid var(--amber);background:var(--amber-pale);color:var(--amber);font-size:.85rem}.logo-picker{margin-bottom:1rem}.logo-picker-preview{position:relative;display:inline-flex;align-items:flex-start}.logo-picker-preview .logo-picker-remove{position:absolute;top:-.4rem;right:-.4rem;z-index:1;display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;min-width:0;padding:0;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.85rem;font-weight:600;line-height:1;box-shadow:0 1px 3px rgba(13,21,38,.18)}.logo-picker-preview .logo-picker-remove:hover:not(:disabled){background:var(--danger,#dc2626);border-color:transparent;color:#ffffff;transform:none;box-shadow:0 2px 6px rgba(13,21,38,.24)}.logo-picker-remove:hover{color:var(--danger);border-color:var(--danger)}.logo-picker-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:1.25rem;text-align:center;border:1.5px dashed var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem;color:var(--muted)}.logo-picker-dropzone.drag-over{border-color:var(--accent);background:var(--accent-pale);color:var(--accent-2)}.password-input{position:relative;display:flex;align-items:center}.auth-card .field .password-input input,.field .password-input input{padding-right:3.7rem}.password-toggle{position:absolute;right:.35rem;padding:.3rem .55rem;background:none;border:none;border-radius:8px;box-shadow:none;color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:0}.password-toggle:hover:not(:disabled){background:var(--accent-pale);color:var(--accent-2);box-shadow:none;transform:none}.password-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.competitor-list{list-style:none;margin:0 0 16px;padding:0;display:grid;grid-gap:8px;gap:8px}.competitor-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}.competitor-aliases{margin:4px 0 0;font-size:.78rem}.competitor-add{margin-top:1rem;padding:1rem var(--list-row-inset) 0;border-top:1px solid var(--border);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.4fr) auto;grid-gap:8px;gap:8px;margin-bottom:10px}@media (max-width:820px){.competitor-add{grid-template-columns:1fr}}.chip-competitor{background:var(--amber-pale);color:var(--amber)}.competitor-mention-summary{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem}.competitor-mention-stat{display:flex;flex-direction:column;gap:.15rem;min-width:7rem;padding:.7rem .95rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.competitor-mention-count{font-size:1.4rem;font-weight:700;line-height:1;letter-spacing:-.02em}.competitor-mention-name{font-size:.8rem;color:var(--muted)}.competitor-mention-note{margin:0 0 1rem;font-size:.85rem}.plan-picker{max-width:780px}.plan-pass{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;margin-top:1.1rem;padding:.85rem 1rem;border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--accent-pale)}.plan-pass-copy{display:flex;flex-direction:column;gap:.2rem;min-width:15rem;flex:1 1}.plan-pass-head{display:flex;align-items:baseline;gap:.5rem;margin:0;font-weight:650;font-size:.95rem;color:var(--text)}.plan-pass-price{font-size:.85rem;font-weight:600;color:var(--accent)}.plan-pass-blurb{margin:0;font-size:.82rem;line-height:1.5;color:var(--muted)}.plan-options{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.75rem;gap:.75rem;margin-top:1.1rem}.plan-option{display:flex;flex-direction:column;gap:.7rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-md)}.plan-option.featured{border-color:var(--accent)}.plan-option-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.plan-option-name{font-weight:650;font-size:.9rem}.plan-option-price{font-size:1.35rem;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.plan-option-price small{margin-left:.15rem;font-size:.72rem;font-weight:550;color:var(--muted)}.plan-option-features{display:flex;flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;font-size:.82rem;color:var(--muted)}.plan-option button{margin-top:auto;width:100%}.plan-picker-actions{justify-content:flex-start}.plan-picker-error{margin-top:.9rem;font-size:.82rem;color:var(--danger)}@media (max-width:760px){.plan-options{grid-template-columns:1fr}}.plan-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.plan-card-name{margin:0;font-size:1.05rem;font-weight:650;color:var(--text)}.plan-card-price{margin:.15rem 0 0;font-size:.85rem}.plan-card-status{flex-shrink:0;padding:.25rem .6rem;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.plan-card-status-ok{background:var(--green-pale);color:var(--green)}.plan-card-status-warn{background:var(--amber-pale);color:var(--amber)}.plan-card-status-bad{background:rgba(179,38,30,.1);color:var(--danger)}.plan-card-notice{margin:.85rem 0 0;padding:.6rem .75rem;border-radius:var(--radius-sm);background:var(--amber-pale);color:var(--amber);font-size:.82rem;line-height:1.5}.plan-card-list{display:flex;flex-direction:column;gap:0;margin:1rem 0 0;padding:0;list-style:none}.plan-card-list li{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--border);font-size:.87rem;color:var(--muted)}.plan-card-list li:last-child{border-bottom:none}.plan-card-list strong{color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.plan-card-renews{margin:.85rem 0 0;font-size:.82rem}.plan-card-actions{margin-top:1.1rem}.plan-option-current{border-color:var(--border);background:var(--accent-pale)}.plan-option-badge{align-self:flex-start;padding:.2rem .5rem;border-radius:999px;background:var(--accent);color:var(--accent-contrast);font-size:.68rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.editor-actions{display:flex;align-items:center;justify-content:flex-end;gap:.7rem;flex-wrap:wrap;margin-top:1.1rem;padding-top:.9rem;border-top:1px solid var(--border)}.editor-actions-note{margin:0 auto 0 0;font-size:.82rem}.skeleton{background:linear-gradient(90deg,var(--border) 25%,var(--bg) 50%,var(--border) 75%);background-size:200% 100%;animation:skeleton-sweep 1.4s ease-in-out infinite;border-radius:6px}@keyframes skeleton-sweep{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-line{height:.7rem;margin-bottom:.5rem}.skeleton-line:last-child{margin-bottom:0}.skeleton-title{height:1rem;margin-bottom:.75rem}.skeleton-stat{height:3.6rem;border-radius:var(--radius-sm)}.skeleton-filters{height:4.5rem;border-radius:var(--radius-md);margin-bottom:1rem}.skeleton-card{min-height:220px;padding:1.35rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm)}@media (prefers-reduced-motion:reduce){.skeleton{animation:none;background:var(--border)}}.scroll-anchor{scroll-margin-top:5rem}