@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-main:#030303;--bg-card:#ffffff04;--bg-card-hover:#ffffff0a;--border-color:#ffffff08;--text-primary:#fff;--text-secondary:#a1a1aa;--text-muted:#52525b;--accent-risk-high:#ff4545;--accent-risk-med:#ff9100;--accent-risk-low:#00e676;--accent-primary:#339af0;--font-sans:"Inter", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-main);color:var(--text-primary);-webkit-font-smoothing:antialiased;line-height:1.5}.dashboard-layout{background-color:var(--bg-main);flex-direction:row;width:100%;height:100vh;display:flex;overflow:hidden}.map-section{border-right:1px solid var(--border-color);background-color:#050505;flex-direction:column;flex:1;padding:2rem;display:flex}.side-panel{background:#ffffff03;flex-direction:column;flex-shrink:0;width:400px;height:100%;display:flex}.side-panel-header{border-bottom:1px solid var(--border-color);padding:1.5rem}.side-panel-header h2{margin-bottom:.5rem;font-size:1.25rem;font-weight:600}.side-panel-header p{color:var(--text-muted);font-size:.85rem}.side-panel-scroll{flex-direction:column;flex:1;gap:1.5rem;padding:1.5rem;display:flex;overflow-y:auto}.geo-map-container{border:1px solid var(--border-color);background:#ffffff05;border-radius:12px;flex:1;justify-content:center;align-items:center;margin:1rem 0;display:flex}.btn-small{padding:.25rem .75rem;font-size:.75rem}.signal-card{background:var(--bg-card);border:1px solid var(--border-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;flex-direction:column;gap:1.25rem;padding:1.25rem;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.card-image{aspect-ratio:1;border-radius:8px;width:100%;margin-bottom:-.5rem;overflow:hidden}.card-image img{object-fit:cover;width:100%;height:100%}.signal-card:hover{background:var(--bg-card-hover);border-color:#ffffff1a;transform:translateY(-4px);box-shadow:0 10px 30px -10px #00000080}.card-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.summary{color:var(--text-primary);margin:0;font-size:1.125rem;font-weight:500;line-height:1.4}.risk-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:20px;justify-content:center;align-items:center;padding:.25rem .6rem;font-size:.75rem;font-weight:700;display:inline-flex}.risk-badge.high{color:var(--accent-risk-high);background:#fa52521a;border:1px solid #fa525233}.risk-badge.med{color:var(--accent-risk-med);background:#fd7e141a;border:1px solid #fd7e1433}.card-body{flex-direction:column;flex-grow:1;gap:1rem;display:flex}.section{flex-direction:column;gap:.5rem;display:flex}.section-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;font-size:.75rem;font-weight:600}.section-content{color:var(--text-secondary);font-size:.875rem}.context-layer{border:1px solid var(--border-color);background:#0003;border-radius:8px;margin-top:.5rem;overflow:hidden}.context-summary{text-transform:uppercase;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;padding:.75rem 1rem;font-size:.8rem;font-weight:600;display:flex}.context-summary:hover{color:var(--text-primary);background:#ffffff05}.context-content{border-top:1px solid var(--border-color);flex-direction:column;gap:.75rem;padding:1rem;display:flex}.context-item{flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.context-item .context-label{color:var(--text-muted);font-weight:600}.card-footer{border-top:1px solid var(--border-color);gap:.75rem;margin-top:auto;padding-top:1rem;display:flex}.btn-x{color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-x:hover{background:#ffffff1a;border-color:#fff3}.btn-x.secondary{color:var(--text-muted);border-color:#0000}.btn-x.secondary:hover{color:var(--text-primary);background:#ffffff0d}.loading{min-height:200px;color:var(--text-muted);justify-content:center;align-items:center;font-size:1rem;display:flex}.spinner{border:2px solid var(--border-color);border-top-color:var(--text-primary);border-radius:50%;width:24px;height:24px;margin-right:.75rem;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-468px 0}to{background-position:468px 0}}.pulse-button{animation:2s infinite telegram-pulse}@keyframes telegram-pulse{0%{box-shadow:0 0 #0088ccb3}70%{box-shadow:0 0 0 15px #08c0}to{box-shadow:0 0 #08c0}}.category-filters::-webkit-scrollbar{display:none}.globe-marker{cursor:pointer;pointer-events:auto;position:relative}.globe-marker .marker-dot{background:var(--marker-color,#4dabf7);box-shadow:0 0 10px 1px var(--marker-color,#4dabf7);border-radius:50%;transition:transform .2s;position:absolute;inset:0}.globe-marker .marker-ring{background:var(--marker-color,#4dabf7);opacity:.55;border-radius:50%;animation:2.2s cubic-bezier(.4,0,.2,1) infinite marker-pulse;position:absolute;inset:0}.globe-marker.selected .marker-ring{animation-duration:1.4s}.globe-marker:hover .marker-dot{transform:scale(1.25)}@keyframes marker-pulse{0%{opacity:.55;transform:scale(1)}75%,to{opacity:0;transform:scale(2.8)}}.globe-tooltip{z-index:2000;pointer-events:none;border:1px solid #ffffff14;border-left:3px solid var(--tooltip-color,#4dabf7);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a0a0ceb;border-radius:10px;max-width:280px;padding:.7rem .9rem;animation:.15s fadeIn;position:fixed;transform:translate(-50%,calc(-100% - 14px));box-shadow:0 12px 30px -8px #0009}.globe-tooltip .tooltip-title{color:var(--text-primary);margin-bottom:.5rem;font-size:.85rem;font-weight:600;line-height:1.35}.globe-tooltip .tooltip-meta{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.globe-tooltip .tooltip-badge{letter-spacing:.04em;border-radius:20px;padding:.15rem .5rem;font-size:.65rem;font-weight:700}
