:root{
  --bg-void:#0a0d10;
  --bg-panel:#12181d;
  --bg-panel-alt:#161d23;
  --grid-line:#202a30;
  --hairline: rgba(232,163,61,0.16);
  --accent-amber:#e8a33d;
  --accent-amber-dim:#8a6423;
  --accent-cyan:#5fb3c7;
  --text-primary:#dbe6e8;
  --text-dim:#5c7480;
  --text-faint:#39474e;
  --risk-high:#c94f42;
  --risk-med:#e8a33d;
  --risk-low:#3e8e6f;
  --market-up:#4caf7d;
  --market-down:#d9534f;
  --font-display:'Big Shoulders Stencil', sans-serif;
  --font-mono:'IBM Plex Mono', monospace;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;height:100%;background:var(--bg-void);color:var(--text-primary);font-family:var(--font-mono);overflow:hidden;}
body{
  background-image:
    radial-gradient(ellipse at 50% -10%, rgba(232,163,61,0.05), transparent 60%),
    repeating-linear-gradient(180deg, rgba(255,255,255,0.012) 0px, rgba(255,255,255,0.012) 1px, transparent 1px, transparent 3px);
}
.hud{display:flex;flex-direction:column;height:100vh;width:100vw;}

/* ===== TOPBAR ===== */
.topbar{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 22px;border-bottom:1px solid var(--hairline);
  background:linear-gradient(180deg, #0e1216, #0a0d10);
  flex-shrink:0;
}
.brand{display:flex;align-items:baseline;gap:14px;}
.brand h1{
  font-family:var(--font-display);font-weight:900;font-size:34px;letter-spacing:6px;
  margin:0;color:var(--accent-amber);
  text-shadow:0 0 14px rgba(232,163,61,0.35);
}
.brand .sub{font-size:10px;letter-spacing:3px;color:var(--text-dim);text-transform:uppercase;border-left:1px solid var(--hairline);padding-left:14px;}
.topbar-right{display:flex;align-items:center;gap:22px;}
.status-group{display:flex;gap:16px;align-items:center;}
.status{display:flex;align-items:center;gap:6px;font-size:10px;letter-spacing:1.5px;color:var(--text-dim);text-transform:uppercase;}
.led{width:7px;height:7px;border-radius:50%;background:var(--risk-low);box-shadow:0 0 6px var(--risk-low);animation:pulse 2.4s ease-in-out infinite;}
.led.amber{background:var(--accent-amber);box-shadow:0 0 6px var(--accent-amber);animation-duration:1.6s;}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.35;}}
.clock{font-size:13px;letter-spacing:1px;color:var(--text-primary);border:1px solid var(--hairline);padding:4px 10px;background:var(--bg-panel);}
.classification{
  font-size:10px;letter-spacing:2px;color:var(--bg-void);background:var(--accent-amber);
  padding:4px 10px;font-weight:700;text-transform:uppercase;
}

/* ===== MAIN GRID ===== */
.grid{flex:1;display:grid;grid-template-columns:320px 1fr 400px;gap:1px;background:var(--hairline);overflow:hidden;}
.panel{background:var(--bg-panel);display:flex;flex-direction:column;overflow:hidden;position:relative;min-height:0;}
.panel.sidebar{overflow-y:auto;}
.panel.map{display:flex;flex-direction:column;flex:1;min-height:0;}
.panel-head{
  padding:10px 16px;border-bottom:1px solid var(--hairline);display:flex;align-items:center;justify-content:space-between;
  flex-shrink:0;background:var(--bg-panel-alt);
}
.panel-head h2{margin:0;font-size:11px;letter-spacing:2.5px;color:var(--accent-amber);text-transform:uppercase;font-weight:600;display:flex;align-items:center;gap:8px;}
.feed-age{font-size:9px;color:var(--text-dim);letter-spacing:1px;font-weight:400;text-transform:none;}
.panel-head .tag{font-size:9px;color:var(--text-faint);letter-spacing:1px;font-weight:400;}
.btn{
  background:transparent;border:1px solid var(--accent-amber-dim);color:var(--accent-amber);
  font-family:var(--font-mono);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;
  padding:6px 12px;cursor:pointer;transition:all .15s;
}
.btn:hover:not(:disabled){background:rgba(232,163,61,0.12);border-color:var(--accent-amber);}
.btn:disabled{opacity:0.4;cursor:wait;}
.btn-inline{background:none;border:none;color:var(--accent-cyan);text-decoration:underline;cursor:pointer;font-family:var(--font-mono);font-size:10px;}

/* ===== FEED PANEL ===== */
.feed-list{flex:1;overflow-y:auto;padding:8px;}
.feed-list::-webkit-scrollbar{width:6px;}
.feed-list::-webkit-scrollbar-thumb{background:var(--grid-line);}
.article{
  border-left:3px solid var(--text-faint);background:var(--bg-panel-alt);margin-bottom:6px;padding:9px 10px;
  cursor:pointer;transition:background .15s;
}
.article:hover{background:#1a2229;}
.article.risk-YÜKSEK{border-left-color:var(--risk-high);}
.article.risk-ORTA{border-left-color:var(--risk-med);}
.article.risk-DÜŞÜK{border-left-color:var(--risk-low);}
.article .meta{display:flex;justify-content:space-between;font-size:9px;color:var(--text-dim);letter-spacing:0.5px;text-transform:uppercase;margin-bottom:5px;gap:8px;}
.article .meta .country{color:var(--accent-cyan);white-space:nowrap;}
.article .title{font-size:12px;line-height:1.4;color:var(--text-primary);}
.article a{color:inherit;text-decoration:none;}
.article-actions{margin-top:5px;}
.translate-btn{
  background:transparent;border:1px solid var(--accent-amber-dim);color:var(--accent-amber);
  font-family:var(--font-mono);font-size:8px;letter-spacing:2px;text-transform:uppercase;
  padding:2px 8px;cursor:pointer;transition:all .15s;
}
.translate-btn:hover:not(:disabled){background:rgba(232,163,61,0.12);border-color:var(--accent-amber);}
.translate-btn:disabled{opacity:0.4;cursor:wait;}
.translated-text{
  margin-top:5px;padding:6px 8px;font-size:11px;line-height:1.5;
  background:rgba(232,163,61,0.06);border-left:2px solid var(--accent-amber-dim);color:var(--text-primary);
}
.translate-loading{color:var(--text-dim);font-size:10px;}
.feed-empty{padding:30px 16px;color:var(--text-dim);font-size:11px;line-height:1.6;text-align:center;}
.product-name{font-size:10px;color:var(--text-dim);margin-top:3px;letter-spacing:0.5px;}
.due-date{font-size:9px;color:#e8573a;margin-left:auto;letter-spacing:0.5px;}
.severity-badge{font-weight:600;letter-spacing:1px;}

/* ===== MAP PANEL (gerçek coğrafi harita) ===== */
.map-wrap{flex:1;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 45%, #0d1418 0%, #080b0d 75%);min-height:0;width:100%;}
.geo-svg{display:block;width:100%;height:100%;position:absolute;top:0;left:0;}
.geo-grid line, .geo-grid circle{stroke:var(--grid-line);stroke-width:1;fill:none;}
.blip-ring{animation:ring 2.2s ease-out infinite;transform-origin:center;}
.blip-hub circle:first-child{stroke:var(--accent-amber-dim);stroke-width:1;stroke-dasharray:2,2;}
@keyframes ring{0%{r:4;opacity:0.7;}100%{r:18;opacity:0;}}
.callout-leader{stroke:var(--accent-amber-dim);stroke-width:1;stroke-dasharray:2,2;opacity:0.6;}

.sweep{
  position:absolute;top:50%;left:50%;width:180%;height:180%;
  transform-origin:center;transform:translate(-50%,-50%) rotate(0deg);
  background:conic-gradient(from 0deg, rgba(232,163,61,0.14), transparent 12%, transparent 100%);
  animation:sweep 6s linear infinite;mix-blend-mode:screen;pointer-events:none;
}
@keyframes sweep{from{transform:translate(-50%,-50%) rotate(0deg);}to{transform:translate(-50%,-50%) rotate(360deg);}}
.scanlines{position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(180deg, rgba(0,0,0,0.15) 0px, transparent 1px, transparent 3px);}
.vignette{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 140px 40px rgba(0,0,0,0.7);}
.map-caption{position:absolute;bottom:10px;left:14px;font-size:9px;color:var(--text-dim);letter-spacing:1.5px;text-transform:uppercase;pointer-events:none;}
.map-caption b{color:var(--accent-amber);}

/* öngörü sonrası bölgede beliren küçük kutucuklar */
.callout-layer{position:absolute;inset:0;pointer-events:none;}
.callout{
  position:absolute;width:220px;background:rgba(10,13,16,0.94);border:1px solid var(--accent-amber-dim);
  padding:8px 9px;font-size:10px;line-height:1.4;pointer-events:auto;
  box-shadow:0 0 16px rgba(0,0,0,0.6);animation:callout-in .3s ease-out;
}
@keyframes callout-in{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}
.callout-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px;gap:6px;}
.callout-title{color:var(--accent-amber);font-weight:600;letter-spacing:0.5px;flex:1;}
.callout-close{
  background:transparent;border:1px solid var(--hairline);color:var(--text-dim);
  font-size:14px;line-height:1;width:20px;height:20px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s;
}
.callout-close:hover{color:var(--risk-high);border-color:var(--risk-high);}
.callout-text{color:var(--text-primary);}
.callout.risk-border-YÜKSEK{border-color:var(--risk-high);}
.callout.risk-border-ORTA{border-color:var(--risk-med);}
.callout.risk-border-DÜŞÜK{border-color:var(--risk-low);}
.callout-actions{margin-top:8px;padding-top:6px;border-top:1px solid var(--hairline);}
.callout-advice-btn{
  background:transparent;border:1px solid var(--accent-cyan-dim, rgba(95,179,199,0.3));color:var(--accent-cyan);
  font-family:var(--font-mono);font-size:9px;letter-spacing:1.5px;text-transform:uppercase;
  padding:3px 8px;cursor:pointer;transition:all .15s;
}
.callout-advice-btn:hover{border-color:var(--accent-cyan);background:rgba(95,179,199,0.1);}

.callout-warning{
  border:2px solid #e8a33d;background:rgba(232,163,61,0.15);
  box-shadow:0 0 24px rgba(232,163,61,0.3), inset 0 0 30px rgba(232,163,61,0.05);
  animation:warning-pulse 1.5s ease-in-out infinite;
}
@keyframes warning-pulse{0%,100%{box-shadow:0 0 24px rgba(232,163,61,0.3);}50%{box-shadow:0 0 36px rgba(232,163,61,0.5);}}
.callout-warning-title{color:#e8a33d;font-size:11px;letter-spacing:3px;}
.callout-warning-text{color:#e8a33d;font-size:10.5px;}
.callout-warning-btn{
  width:100%;background:rgba(232,163,61,0.2);border:1px solid #e8a33d;color:#e8a33d;
  font-family:var(--font-mono);font-size:10px;letter-spacing:2px;text-transform:uppercase;
  padding:6px 0;cursor:pointer;transition:all .15s;font-weight:700;
}
.callout-warning-btn:hover{background:rgba(232,163,61,0.35);}

/* ===== FORECAST PANEL ===== */
.forecast-body{flex:1;overflow-y:auto;padding:14px;font-size:12px;line-height:1.6;}
.forecast-body::-webkit-scrollbar{width:6px;}
.forecast-body::-webkit-scrollbar-thumb{background:var(--grid-line);}
.fc-idle{color:var(--text-dim);font-size:11.5px;line-height:1.8;}
.fc-idle .btn{margin-top:14px;}
.fc-section{margin-bottom:18px;}
.fc-section h3{font-size:10px;letter-spacing:2px;color:var(--accent-cyan);text-transform:uppercase;margin:0 0 8px;border-bottom:1px solid var(--hairline);padding-bottom:6px;display:flex;justify-content:space-between;align-items:center;}
.fc-summary{color:var(--text-primary);font-size:12px;}

.region-row{display:flex;justify-content:space-between;align-items:flex-start;padding:8px 0;border-bottom:1px dashed var(--grid-line);gap:8px;}
.region-row:last-child{border-bottom:none;}
.region-main{flex:1;}
.region-name-line{display:flex;align-items:center;gap:6px;}
.region-name{font-size:11.5px;color:var(--text-primary);font-weight:600;}
.region-assess{font-size:11px;color:var(--text-dim);margin-top:2px;}
.advice-btn{
  background:transparent;border:1px solid var(--accent-cyan-dim, rgba(95,179,199,0.3));color:var(--accent-cyan);
  font-family:var(--font-mono);font-size:9px;letter-spacing:1.5px;text-transform:uppercase;
  padding:3px 8px;cursor:pointer;transition:all .15s;white-space:nowrap;flex-shrink:0;
}
.advice-btn:hover{border-color:var(--accent-cyan);background:rgba(95,179,199,0.1);}
.advice-btn:disabled{opacity:0.4;cursor:wait;}
.advice-box{margin-top:7px;background:var(--bg-panel-alt);border-left:2px solid var(--accent-cyan);padding:7px 9px;font-size:10.5px;}
.advice-list{margin:0;padding-left:16px;color:var(--text-primary);}
.advice-list li{margin-bottom:4px;}
.advice-loading{color:var(--text-dim);}
.advice-note{margin-top:6px;font-size:9px;color:var(--text-faint);}

.risk-badge{font-size:9px;letter-spacing:1px;padding:2px 8px;text-transform:uppercase;font-weight:600;white-space:nowrap;}
.risk-badge.YÜKSEK{background:rgba(201,79,66,0.18);color:var(--risk-high);border:1px solid var(--risk-high);}
.risk-badge.ORTA{background:rgba(232,163,61,0.18);color:var(--risk-med);border:1px solid var(--risk-med);}
.risk-badge.DÜŞÜK{background:rgba(62,142,111,0.18);color:var(--risk-low);border:1px solid var(--risk-low);}

.conf-legend{display:flex;gap:14px;font-size:9px;color:var(--text-dim);margin-bottom:8px;}
.conf-legend .dot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:4px;}
.dot.conf-YÜKSEK{background:var(--risk-high);}
.dot.conf-ORTA{background:var(--risk-med);}
.dot.conf-DÜŞÜK{background:var(--risk-low);}

.market-row{display:flex;justify-content:space-between;align-items:flex-start;padding:7px 0;border-bottom:1px dashed var(--grid-line);gap:10px;}
.market-row:last-child{border-bottom:none;}
.market-asset{font-size:11.5px;color:var(--text-primary);white-space:nowrap;font-weight:600;}
.market-rationale{font-size:10.5px;color:var(--text-dim);flex:1;}
.market-signals{display:flex;flex-direction:column;align-items:flex-end;gap:3px;}
.dir{font-weight:700;font-size:11px;letter-spacing:1px;white-space:nowrap;}
.dir.YUKARI{color:var(--market-up);}
.dir.AŞAĞI{color:var(--market-down);}
.dir.NÖTR{color:var(--text-dim);}
.conf-badge{font-size:8.5px;letter-spacing:0.5px;padding:1px 6px;text-transform:uppercase;white-space:nowrap;}
.conf-badge.conf-YÜKSEK{background:rgba(201,79,66,0.18);color:var(--risk-high);border:1px solid var(--risk-high);}
.conf-badge.conf-ORTA{background:rgba(232,163,61,0.18);color:var(--risk-med);border:1px solid var(--risk-med);}
.conf-badge.conf-DÜŞÜK{background:rgba(62,142,111,0.18);color:var(--risk-low);border:1px solid var(--risk-low);}

.confidence-wrap{display:flex;align-items:center;gap:10px;}
.confidence-bar{flex:1;height:6px;background:var(--grid-line);position:relative;}
.confidence-fill{height:100%;background:var(--accent-amber);}
.watchlist{display:flex;flex-wrap:wrap;gap:6px;}
.chip{font-size:10px;padding:3px 9px;border:1px solid var(--hairline);color:var(--accent-cyan);letter-spacing:0.5px;}
.fc-timestamp{font-size:9px;color:var(--text-faint);letter-spacing:1px;margin-top:4px;}
.disclaimer{font-size:9.5px;color:var(--text-faint);line-height:1.6;margin-top:16px;border-top:1px solid var(--hairline);padding-top:10px;}
.spinner-text::after{content:'';animation:dots 1.2s steps(4,end) infinite;}
@keyframes dots{0%{content:'';}25%{content:'.';}50%{content:'..';}75%{content:'...';}}

/* ===== TICKER ===== */
.ticker{
  height:30px;border-top:1px solid var(--hairline);background:var(--bg-panel-alt);
  display:flex;align-items:center;overflow:hidden;flex-shrink:0;
}
.ticker-track{display:flex;gap:34px;white-space:nowrap;animation:scroll-left 40s linear infinite;padding-left:100%;}
.ticker:hover .ticker-track{animation-play-state:paused;}
@keyframes scroll-left{from{transform:translateX(0);}to{transform:translateX(-100%);}}
.tick-item{font-size:11px;color:var(--text-dim);letter-spacing:0.5px;display:flex;gap:6px;align-items:center;}
.tick-item b{color:var(--text-primary);}
.live-dot{width:5px;height:5px;border-radius:50%;background:var(--risk-low);box-shadow:0 0 5px var(--risk-low);}

/* ===== SIDEBAR SOURCE TABS ===== */
.source-tabs{
  display:flex;border-bottom:1px solid var(--hairline);background:var(--bg-panel-alt);
  flex-shrink:0;
}
.source-tab{
  flex:1;background:transparent;border:none;border-bottom:2px solid transparent;
  color:var(--text-dim);font-family:var(--font-mono);font-size:9px;letter-spacing:1.5px;
  text-transform:uppercase;padding:10px 4px;cursor:pointer;transition:all .15s;
}
.source-tab:hover{color:var(--text-primary);background:rgba(232,163,61,0.04);}
.source-tab.active{color:var(--accent-amber);border-bottom-color:var(--accent-amber);background:rgba(232,163,61,0.08);}

.source-content{flex:1;overflow:hidden;position:relative;display:flex;flex-direction:column;min-height:0;}
.source-panel{display:none;flex-direction:column;flex:1;overflow-y:auto;padding:0;min-height:0;}
.source-panel.active{display:flex;}
.source-panel::-webkit-scrollbar{width:5px;}
.source-panel::-webkit-scrollbar-thumb{background:var(--grid-line);}

.source-title{
  font-size:10px;letter-spacing:1.5px;color:var(--text-dim);text-transform:uppercase;
  padding:10px 14px;border-bottom:1px solid var(--hairline);background:var(--bg-panel-alt);
  position:sticky;top:0;z-index:1;flex-shrink:0;
}
.feed-age-wrap{
  padding:6px 14px;border-bottom:1px solid var(--hairline);background:var(--bg-panel-alt);
  position:sticky;top:0;z-index:1;flex-shrink:0;
}
.feed-age{font-size:9px;color:var(--text-dim);letter-spacing:1px;}

.source-panel .feed-list,
.source-panel .eq-list,
.source-panel .conflict-list,
.source-panel .cyber-list,
.source-panel .military-list{
  flex:1;overflow-y:auto;padding:8px;min-height:0;
}

/* ===== COMPARE BUTTON ===== */
.btn-compare{
  background:transparent;border:1px solid var(--accent-cyan-dim, rgba(95,179,199,0.3));
  color:var(--accent-cyan);font-family:var(--font-mono);font-size:10px;letter-spacing:1.5px;
  text-transform:uppercase;padding:4px 10px;cursor:pointer;transition:all .15s;
  display:flex;align-items:center;gap:6px;
}
.btn-compare:hover{background:rgba(95,179,199,0.12);border-color:var(--accent-cyan);}
.compare-icon{font-size:13px;}

/* ===== COMPARE OVERLAY ===== */
.compare-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,0.7);z-index:1000;
  display:none;align-items:center;justify-content:center;
}
.compare-overlay.active{display:flex;}
.compare-popup{
  background:var(--bg-panel);border:1px solid var(--accent-cyan-dim, rgba(95,179,199,0.3));
  width:500px;max-width:90vw;max-height:80vh;overflow-y:auto;
  box-shadow:0 0 40px rgba(95,179,199,0.2);
}
.compare-header{
  display:flex;justify-content:space-between;align-items:center;
  padding:12px 16px;border-bottom:1px solid var(--hairline);
}
.compare-header h3{margin:0;font-size:11px;letter-spacing:2px;color:var(--accent-cyan);}
.compare-body{padding:16px;}
.compare-info{font-size:10px;color:var(--text-dim);margin-bottom:12px;letter-spacing:1px;}
.compare-select{
  width:100%;background:var(--bg-panel-alt);border:1px solid var(--hairline);
  color:var(--text-primary);font-family:var(--font-mono);font-size:11px;
  padding:8px 10px;margin-bottom:10px;appearance:none;cursor:pointer;
}
.compare-select:focus{border-color:var(--accent-cyan);outline:none;}
.compare-vs{
  display:block;text-align:center;font-size:11px;letter-spacing:3px;
  color:var(--accent-amber);margin:6px 0;font-weight:700;
}
.compare-result{
  margin-top:14px;padding-top:12px;border-top:1px solid var(--hairline);
  font-size:11px;line-height:1.6;color:var(--text-primary);white-space:pre-line;
}
.compare-result:empty{display:none;}

/* ===== NOTIFICATION BANNER ===== */
.notification-banner{
  display:none;align-items:center;gap:10px;padding:8px 22px;
  font-size:10px;letter-spacing:1px;color:var(--text-primary);
}
.notification-banner.active{display:flex;}

.notif-red{
  background:rgba(201,79,66,0.15);border-bottom:1px solid var(--risk-high);
}
.notif-red .notif-icon{color:var(--risk-high);}
.notif-red .notif-text{color:var(--risk-high);}
.notif-red .btn-notif{
  background:rgba(201,79,66,0.2);border:1px solid var(--risk-high);color:var(--risk-high);
  font-family:var(--font-mono);font-size:9px;letter-spacing:1.5px;text-transform:uppercase;
  padding:4px 10px;cursor:pointer;transition:all .15s;
}
.notif-red .btn-notif:hover{background:rgba(201,79,66,0.35);}

.notif-green{
  background:rgba(62,142,111,0.15);border-bottom:1px solid var(--risk-low);
}
.notif-green .notif-icon{color:var(--risk-low);}
.notif-green .notif-text{color:var(--risk-low);}
.notif-green .btn-notif-off{
  background:rgba(62,142,111,0.2);border:1px solid var(--risk-low);color:var(--risk-low);
  font-family:var(--font-mono);font-size:9px;letter-spacing:1.5px;text-transform:uppercase;
  padding:4px 10px;cursor:pointer;transition:all .15s;
}
.notif-green .btn-notif-off:hover{background:rgba(62,142,111,0.35);}

.notif-icon{font-size:14px;}
.notif-text{flex:1;color:var(--text-dim);text-transform:uppercase;}

.btn-notif-dismiss{
  background:transparent;border:none;color:var(--text-dim);font-size:16px;
  cursor:pointer;padding:0 4px;
}
.notif-red .btn-notif-dismiss:hover{color:var(--risk-high);}
.notif-green .btn-notif-dismiss:hover{color:var(--risk-low);}

/* ===== MAP CONTROLS ===== */
.map-controls{
  position:absolute;top:12px;right:12px;z-index:10;
  background:rgba(10,13,16,0.9);border:1px solid var(--hairline);
  padding:8px;display:flex;flex-direction:column;gap:4px;
  pointer-events:auto;
}
.map-toggle{
  display:flex;align-items:center;gap:6px;padding:4px 6px;cursor:pointer;transition:background .15s;
}
.map-toggle:hover{background:rgba(232,163,61,0.08);}
.map-toggle-led{
  width:8px;height:8px;border-radius:50%;border:1px solid var(--text-faint);
  background:transparent;transition:all .2s;flex-shrink:0;
}
.map-toggle-led.active{background:var(--accent-cyan);border-color:var(--accent-cyan);box-shadow:0 0 5px var(--accent-cyan);}
.map-toggle-label{font-size:9px;letter-spacing:1px;color:var(--text-dim);text-transform:uppercase;}
.map-toggle:hover .map-toggle-label{color:var(--text-primary);}

/* ===== DATA LISTS (cyber, eq, conflict) ===== */
.cyber-list, .eq-list, .conflict-list, .military-list{padding:8px;flex:1;overflow-y:auto;min-height:0;}
.cyber-list::-webkit-scrollbar, .eq-list::-webkit-scrollbar, .conflict-list::-webkit-scrollbar, .military-list::-webkit-scrollbar{width:5px;}
.cyber-list::-webkit-scrollbar-thumb, .eq-list::-webkit-scrollbar-thumb, .conflict-list::-webkit-scrollbar-thumb, .military-list::-webkit-scrollbar-thumb{background:var(--grid-line);}
.cyber-item, .eq-item, .conflict-item, .military-item{
  padding:6px 8px;margin-bottom:4px;border-left:2px solid var(--text-faint);
  background:var(--bg-panel-alt);font-size:10px;line-height:1.4;
}
.cyber-item{border-left-color:var(--risk-high);}
.eq-item{border-left-color:var(--accent-amber);}
.conflict-item{border-left-color:#c94f42;}
.military-item{border-left-color:var(--accent-cyan);}
.cyber-item .title, .eq-item .title, .conflict-item .title, .military-item .title{color:var(--text-primary);font-weight:600;margin-bottom:2px;}
.cyber-item .meta, .eq-item .meta, .conflict-item .meta, .military-item .meta{color:var(--text-dim);font-size:9px;letter-spacing:0.5px;}

/* ===== CYBER ATTACK ARCS ===== */
.cyberattack-layer{pointer-events:none;}
.cyberattack-layer .blip-group{pointer-events:auto;}
.attack-arc{animation:arcFade 3s ease-in-out infinite;}
.attack-pulse{animation:attackTravel 3s linear infinite;}
.cyber-src .blip-ring{animation:srcPulse 1.5s ease-in-out infinite;}
.cyber-tgt .blip-ring{animation:tgtPulse 1s ease-in-out infinite;}
@keyframes arcFade{0%,100%{opacity:0.3;}50%{opacity:0.6;}}
@keyframes attackTravel{0%{stroke-dashoffset:1000;}100%{stroke-dashoffset:0;}}
@keyframes srcPulse{0%,100%{r:6;opacity:0.2;}50%{r:9;opacity:0.35;}}
@keyframes tgtPulse{0%,100%{r:8;opacity:0.15;stroke:#ff2244;}50%{r:12;opacity:0.3;stroke:#ff4466;}}

/* ===== FIRMS (YANGIN) LAYER ===== */
.firms-layer{pointer-events:none;}
.firms-layer .blip-group{pointer-events:auto;}
.firms-blip .blip-ring{animation:firmsPulse 2s ease-in-out infinite;}
@keyframes firmsPulse{0%,100%{opacity:0.15;}50%{opacity:0.35;}}

/* ===== YANARDAĞ LAYER ===== */
.volcano-layer{pointer-events:none;}
.volcano-layer .blip-group{pointer-events:auto;}
.volcano-blip .blip-ring{animation:volcanoPulse 1.5s ease-in-out infinite;}
@keyframes volcanoPulse{0%,100%{opacity:0.3;}50%{opacity:0.6;}}

/* ===== HAVA KALİTESİ LAYER ===== */
.airquality-layer{pointer-events:none;}
.airquality-layer .blip-group{pointer-events:auto;}
.airquality-blip .blip-ring{animation:airQualityPulse 2.5s ease-in-out infinite;}
@keyframes airQualityPulse{0%,100%{opacity:0.2;}50%{opacity:0.4;}}

/* ===== ASKERİ ÜS LAYER ===== */
.militarybases-layer{pointer-events:none;}
.militarybases-layer .blip-group{pointer-events:auto;}
.militarybases-blip rect{transition:all 0.2s;}
.militarybases-blip:hover rect{opacity:0.9;transform:scale(1.2);}

/* ===== GPS JAMMING LAYER ===== */
.jamming-layer{pointer-events:none;}
.jamming-layer .blip-group{pointer-events:auto;}
.jamming-blip circle:first-child{animation:jammingPulse 2s ease-in-out infinite;}
.jamming-blip circle:nth-child(2){animation:jammingPulse 2s ease-in-out infinite 0.3s;}
@keyframes jammingPulse{0%,100%{opacity:0.4;}50%{opacity:0.7;}}

/* ===== MAP ZOOM CONTROLS ===== */
.map-zoom-controls{
  position:absolute;bottom:12px;right:12px;z-index:10;
  display:flex;flex-direction:column;gap:2px;
  pointer-events:auto;
}
.map-zoom-btn{
  width:28px;height:28px;
  background:rgba(10,13,16,0.85);border:1px solid var(--hairline);
  color:var(--text-primary);font-size:14px;font-weight:700;
  cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:all .15s;font-family:var(--font-mono);
}
.map-zoom-btn:hover{background:rgba(232,163,61,0.15);border-color:var(--accent-amber);color:var(--accent-amber);}
.map-zoom-btn:active{transform:scale(0.92);}

/* ===== MOBILE SIDEBAR TOGGLE ===== */
.sidebar-toggle,.forecast-toggle{
  display:none;position:fixed;z-index:100;
  width:42px;height:42px;border-radius:50%;
  background:rgba(10,13,16,0.92);border:1px solid var(--accent-amber);
  color:var(--accent-amber);font-size:18px;font-weight:700;
  cursor:pointer;align-items:center;justify-content:center;
  box-shadow:0 0 12px rgba(232,163,61,0.3);
  transition:all .2s;font-family:var(--font-mono);
}
.sidebar-toggle{bottom:60px;left:10px;}
.forecast-toggle{bottom:60px;right:10px;border-color:var(--accent-cyan);color:var(--accent-cyan);box-shadow:0 0 12px rgba(95,179,199,0.3);}
.sidebar-toggle:active,.forecast-toggle:active{transform:scale(0.9);}

/* ===== RESPONSIVE — TABLET (≤1050px) ===== */
@media (max-width:1050px){
  html,body{overflow:auto;}
  .hud{height:auto;min-height:100vh;min-height:100dvh;}
  .grid{
    display:flex;flex-direction:column;
    overflow:visible;height:auto;
  }
  .panel.sidebar{
    position:fixed;top:0;left:0;bottom:0;width:85vw;max-width:360px;
    z-index:200;transform:translateX(-100%);
    transition:transform .3s ease;border-right:1px solid var(--hairline);
    box-shadow:4px 0 20px rgba(0,0,0,0.5);
    height:100vh;height:100dvh;
  }
  .panel.sidebar.open{transform:translateX(0);}
  .panel.map{
    width:100%;order:1;
    height:calc(100vh - 100px);min-height:300px;
    flex-shrink:0;
  }
  .panel.map .panel-head{display:none;}
  .panel.forecast{
    position:fixed;top:0;right:0;bottom:0;width:85vw;max-width:400px;
    z-index:200;transform:translateX(100%);
    transition:transform .3s ease;border-left:1px solid var(--hairline);
    box-shadow:-4px 0 20px rgba(0,0,0,0.5);
    height:100vh;height:100dvh;
  }
  .panel.forecast.open{transform:translateX(0);}
  .sidebar-toggle,.forecast-toggle{display:flex;}
  .source-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .source-tab{min-width:56px;padding:10px 6px;font-size:8px;}
  .map-controls{top:8px;right:8px;padding:4px;}
  .map-toggle{padding:3px 4px;}
  .map-toggle-label{font-size:8px;}
  .map-zoom-controls{bottom:8px;right:8px;}
  .map-zoom-btn{width:26px;height:26px;font-size:13px;}
  .map-caption{font-size:8px;bottom:6px;left:8px;}
  .topbar{padding:8px 12px;}
  .brand h1{font-size:22px;letter-spacing:3px;}
  .brand .sub{display:none;}
  .topbar-right{gap:10px;}
  .status-group{display:none;}
  .btn-compare span:not(.compare-icon){display:none;}
  .clock{font-size:11px;padding:3px 6px;}
  .classification{font-size:8px;padding:3px 6px;}
  .notification-banner{padding:6px 12px;font-size:9px;flex-wrap:wrap;}
  .btn-notif,.btn-notif-off{font-size:8px;padding:3px 8px;}
  .ticker{height:26px;}
  .tick-item{font-size:10px;}
}

/* ===== RESPONSIVE — MOBİL (≤600px) ===== */
@media (max-width:600px){
  .topbar{padding:6px 10px;}
  .brand h1{font-size:18px;letter-spacing:2px;}
  .btn-compare{padding:3px 6px;font-size:9px;}
  .compare-icon{font-size:11px;}
  .clock{font-size:10px;padding:2px 5px;}
  .classification{display:none;}
  .notification-banner{padding:5px 10px;gap:6px;}
  .notif-text{font-size:8px;}
  .btn-notif,.btn-notif-off{font-size:7px;padding:2px 6px;}
  .panel.map{height:calc(100vh - 80px);min-height:260px;}
  .panel.map .panel-head{display:none;}
  .map-controls{top:6px;right:6px;padding:3px;gap:2px;}
  .map-toggle{padding:2px 4px;gap:4px;}
  .map-toggle-led{width:6px;height:6px;}
  .map-toggle-label{font-size:7px;letter-spacing:0.5px;}
  .map-zoom-controls{bottom:6px;left:50%;transform:translateX(-50%);right:auto;display:flex;gap:4px;}
  .map-zoom-btn{width:24px;height:24px;font-size:12px;}
  .map-caption{display:none;}
  .sidebar-toggle,.forecast-toggle{width:38px;height:38px;bottom:50px;font-size:16px;}
  .sidebar-toggle{left:8px;}
  .forecast-toggle{right:8px;}
  .source-tab{min-width:50px;padding:8px 4px;font-size:7px;letter-spacing:0.5px;}
  .source-title{font-size:9px;padding:8px 10px;}
  .article{padding:7px 8px;}
  .article .title{font-size:11px;}
  .article .meta{font-size:8px;}
}

/* ===== MOBILE OVERLAYS ===== */
.sidebar-overlay,.forecast-overlay{
  display:none;position:fixed;inset:0;background:rgba(0,0,0,0.5);
  z-index:195;
}
.sidebar-overlay.active,.forecast-overlay.active{display:block;}

/* ===== COUNTRY PROFILE POPUP ===== */
.country-profile-popup{
  position:fixed;z-index:1000;width:300px;
  background:rgba(10,13,16,0.96);border:1px solid var(--accent-cyan-dim, rgba(95,179,199,0.4));
  box-shadow:0 0 30px rgba(95,179,199,0.2);
  font-family:var(--font-mono);font-size:11px;
  animation:callout-in .2s ease-out;
}
.country-profile-header{
  display:flex;align-items:center;gap:10px;padding:10px 12px;
  border-bottom:1px solid var(--hairline);background:var(--bg-panel-alt);
}
.country-flag{width:32px;height:20px;object-fit:cover;border:1px solid var(--hairline);}
.country-profile-name{font-size:13px;font-weight:700;color:var(--accent-cyan);letter-spacing:1px;}
.country-profile-official{font-size:9px;color:var(--text-dim);margin-top:2px;}
.country-profile-body{padding:8px 12px;}
.profile-row{
  display:flex;justify-content:space-between;align-items:flex-start;
  padding:4px 0;border-bottom:1px dashed var(--grid-line);gap:8px;
}
.profile-row:last-child{border-bottom:none;}
.profile-label{font-size:9px;color:var(--text-dim);letter-spacing:0.5px;text-transform:uppercase;white-space:nowrap;}
.profile-value{font-size:10px;color:var(--text-primary);text-align:right;flex:1;}
