/* ══════════════════════════════════════════════════════════════════════════
   INTEL FEED v8 — UPGRADED THEME
   Mobile-friendly + Light/Dark mode toggle
   ══════════════════════════════════════════════════════════════════════════ */

:root {
  --bg:         #06080c;
  --pnl:        #0e1117;
  --pnl2:       #111620;
  --border:     #1c2030;
  --border2:    #242d40;
  --orange:     #ff6a00;
  --amber:      #f0a500;
  --white:      #cdd0da;
  --dim:        #4a4e5c;
  --dim2:       #2a2e3c;
  --green:      #00d95a;
  --red:        #ff3044;
  --cyan:       #00b8ff;
  --tweet:      #1d9bf0;
  --gold:       #ffc400;
  --crit:       #ff0033;
  --high:       #ff6600;
  --med:        #ccaa00;
  --glow-o:     rgba(255,106,0,0.12);
  --glow-r:     rgba(255,0,51,0.1);
  --font-mono:  'Share Tech Mono', 'Consolas', 'Courier New', monospace;
  --font-display: 'Orbitron', 'Consolas', monospace;
  --shadow:     0 2px 12px rgba(0,0,0,0.4);
}

body.light-mode {
  --bg:       #f0f2f5;
  --pnl:      #ffffff;
  --pnl2:     #e8eaed;
  --border:   #d0d4dc;
  --border2:  #b8bcc8;
  --white:    #1a1d24;
  --dim:      #6b7280;
  --dim2:     #9ca3af;
  --glow-o:   rgba(255,106,0,0.08);
  --glow-r:   rgba(255,0,51,0.06);
  --shadow:   0 2px 12px rgba(0,0,0,0.1);
}
body.light-mode #main-header { background: linear-gradient(180deg,#fff 0%,#f8f9fb 100%); }
body.light-mode .feed-row:hover { background: #f5f6f8; }
body.light-mode body::after { display: none; }

*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }

html,body {
  height:100%; background:var(--bg); color:var(--white);
  font-family:var(--font-mono); font-size:13px; overflow:hidden;
  transition:background 0.3s,color 0.3s;
}
@media(max-width:768px){ html,body{overflow:auto;} #main-layout{height:auto;} #feed-panel{height:auto;min-height:60vh;} }

::-webkit-scrollbar{width:5px;height:5px;}
::-webkit-scrollbar-track{background:var(--bg);}
::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px;}
::-webkit-scrollbar-thumb:hover{background:var(--orange);}

/* HEADER */
#main-header {
  display:flex; align-items:center; justify-content:space-between;
  padding:0 16px; height:44px;
  background:linear-gradient(180deg,#0a0d13 0%,var(--pnl) 100%);
  border-bottom:1px solid var(--orange);
  box-shadow:0 1px 20px var(--glow-o);
  position:relative; z-index:100; flex-shrink:0;
}
.hd-left{display:flex;align-items:center;gap:4px;}
.logo-bracket{color:var(--orange);font-size:18px;font-weight:bold;}
.logo-text{font-family:var(--font-display);font-size:15px;font-weight:900;color:var(--orange);letter-spacing:3px;text-shadow:0 0 20px rgba(255,106,0,0.6);}
.logo-version{font-family:var(--font-display);font-size:10px;color:var(--amber);margin-left:2px;vertical-align:super;}
.logo-sub{color:var(--dim);font-size:11px;margin-left:8px;letter-spacing:2px;}
@media(max-width:600px){.logo-sub{display:none;}}

.hd-center{display:flex;align-items:center;gap:8px;}
@media(max-width:500px){#sp-saved{display:none;}.hd-center{gap:4px;}}

.stat-pill{display:flex;flex-direction:column;align-items:center;padding:3px 10px;background:var(--pnl2);border:1px solid var(--border2);border-radius:3px;min-width:54px;cursor:default;transition:background 0.3s;}
.stat-pill.crit{border-color:rgba(255,0,51,0.4);}
.stat-pill.high{border-color:rgba(255,102,0,0.4);}
.sp-val{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--white);line-height:1;}
.stat-pill.crit .sp-val{color:var(--crit);}
.stat-pill.high .sp-val{color:var(--high);}
.sp-lbl{font-size:8px;color:var(--dim);letter-spacing:1px;margin-top:1px;}

.hd-right{display:flex;align-items:center;gap:8px;}
.clock{font-family:var(--font-display);font-size:13px;color:var(--amber);letter-spacing:2px;}
@media(max-width:600px){.clock{font-size:10px;letter-spacing:1px;}}

.status-dot{width:8px;height:8px;border-radius:50%;background:var(--dim);border:1px solid var(--border2);transition:background 0.3s;flex-shrink:0;}
.status-dot.live{background:var(--green);box-shadow:0 0 6px var(--green);animation:pulse-dot 2s infinite;}
.status-dot.fetching{background:var(--amber);animation:pulse-dot 0.5s infinite;}
.status-dot.error{background:var(--red);}
@keyframes pulse-dot{0%,100%{opacity:1;}50%{opacity:0.4;}}

.hd-btn{background:transparent;border:1px solid var(--border2);color:var(--dim);cursor:pointer;padding:4px 8px;border-radius:3px;font-size:14px;transition:all 0.15s;font-family:var(--font-mono);white-space:nowrap;}
.hd-btn:hover{border-color:var(--orange);color:var(--orange);background:var(--glow-o);}
.hd-btn.active{border-color:var(--amber);color:var(--amber);background:rgba(240,165,0,0.08);}

/* TICKER */
#ticker-bar{display:flex;align-items:center;height:24px;background:rgba(255,106,0,0.05);border-bottom:1px solid var(--border);overflow:hidden;flex-shrink:0;}
@media(max-width:500px){#ticker-bar{display:none;}}
.ticker-label{flex-shrink:0;padding:0 10px;background:var(--orange);color:#000;font-family:var(--font-display);font-size:9px;font-weight:700;letter-spacing:2px;height:100%;display:flex;align-items:center;}
.ticker-track{flex:1;overflow:hidden;white-space:nowrap;font-size:11px;color:var(--dim);padding:0 12px;}
.ticker-item{display:inline-block;padding:0 40px;animation:ticker-scroll 60s linear infinite;}
.ticker-item.t-crit{color:var(--crit);}
.ticker-item.t-high{color:var(--high);}
@keyframes ticker-scroll{0%{transform:translateX(100vw);}100%{transform:translateX(-200%);}}

/* FILTER BAR */
#filter-bar{display:flex;align-items:center;gap:8px;padding:6px 14px;background:var(--pnl);border-bottom:1px solid var(--border);flex-shrink:0;flex-wrap:wrap;transition:background 0.3s;}
.filter-chips{display:flex;gap:4px;flex-wrap:wrap;}
.chip{padding:4px 10px;background:transparent;border:1px solid var(--border2);color:var(--dim);cursor:pointer;border-radius:2px;font-family:var(--font-mono);font-size:11px;letter-spacing:0.5px;transition:all 0.15s;white-space:nowrap;}
.chip:hover{border-color:var(--orange);color:var(--orange);}
.chip.active{border-color:var(--orange);color:var(--orange);background:var(--glow-o);}
.chip.alert-chip.active{border-color:var(--crit);color:var(--crit);background:var(--glow-r);}

.search-wrap{display:flex;align-items:center;flex:1;max-width:320px;background:var(--pnl2);border:1px solid var(--border2);border-radius:2px;padding:3px 8px;gap:6px;transition:background 0.3s;}
@media(max-width:600px){.search-wrap{max-width:100%;width:100%;}}
.search-icon{color:var(--dim);font-size:15px;}
#search-input{flex:1;background:transparent;border:none;outline:none;color:var(--white);font-family:var(--font-mono);font-size:11px;letter-spacing:0.5px;}
#search-input::placeholder{color:var(--dim);}
.search-clear{background:transparent;border:none;color:var(--dim);cursor:pointer;font-size:11px;padding:0;display:none;}
.search-clear.visible{display:block;}

.feed-controls{display:flex;align-items:center;gap:6px;margin-left:auto;}
.ctrl-btn{background:transparent;border:1px solid var(--border2);color:var(--dim);cursor:pointer;width:28px;height:28px;border-radius:2px;font-size:14px;display:flex;align-items:center;justify-content:center;transition:all 0.15s;}
.ctrl-btn:hover{border-color:var(--orange);color:var(--orange);}
.ctrl-btn.paused{border-color:var(--amber);color:var(--amber);}
.ctrl-btn.spinning{animation:spin 0.6s linear infinite;}
@keyframes spin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}
.last-fetch{font-size:10px;color:var(--dim);white-space:nowrap;}
@media(max-width:600px){.last-fetch{display:none;}}

/* NAV TABS */
#nav-tabs{display:flex;background:var(--pnl2);border-bottom:1px solid var(--border);flex-shrink:0;}
.nav-tab{padding:6px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--dim);cursor:pointer;font-family:var(--font-mono);font-size:10px;letter-spacing:1px;transition:all 0.15s;}
.nav-tab:hover{color:var(--white);background:var(--pnl);}
.nav-tab.active{color:var(--orange);border-bottom-color:var(--orange);}

/* MAIN LAYOUT */
#main-layout{display:flex;flex:1;height:calc(100vh - 44px - 24px - 40px - 33px);overflow:hidden;}
@media(max-width:768px){#main-layout{flex-direction:column;height:auto;overflow:visible;}}

/* FEED PANEL */
#feed-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--border);}
@media(max-width:768px){#feed-panel{border-right:none;overflow:visible;}}

#feed-header{display:grid;grid-template-columns:44px 50px 90px 40px 1fr 80px;padding:5px 8px;background:var(--pnl2);border-bottom:1px solid var(--border2);font-size:9px;color:var(--dim);letter-spacing:1px;flex-shrink:0;transition:background 0.3s;}
@media(max-width:600px){#feed-header{grid-template-columns:40px 46px 1fr;}#feed-header .col-type,#feed-header .col-actions,#feed-header .col-sev{display:none;}}

#feed-list{flex:1;overflow-y:auto;}
@media(max-width:768px){#feed-list{overflow-y:visible;}}

/* FEED ROW */
.feed-row{display:grid;grid-template-columns:44px 50px 90px 40px 1fr 80px;align-items:center;padding:5px 8px;border-bottom:1px solid rgba(28,32,48,0.6);border-left:3px solid transparent;transition:background 0.1s;min-height:30px;}
.feed-row:hover{background:#121620;}
.feed-row.new-flash{animation:row-flash 1.5s ease-out;}
.feed-row.sev-crit{border-left-color:var(--crit);}
.feed-row.sev-crit:hover{background:rgba(255,0,51,0.05);}
.feed-row.sev-high{border-left-color:var(--high);}
.feed-row.pinned-row{background:rgba(255,196,0,0.03);border-left-color:var(--gold);}
@media(max-width:600px){.feed-row{grid-template-columns:40px 46px 1fr;padding:6px 8px;min-height:36px;}.feed-row .col-type,.feed-row .col-actions,.feed-row .col-sev{display:none;}}
@keyframes row-flash{0%{background:rgba(240,165,0,0.18);}100%{background:transparent;}}

.col-age{font-size:10px;color:var(--dim);white-space:nowrap;}
.col-src{font-size:10px;color:var(--amber);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:6px;}
.col-type{font-size:9px;color:var(--dim);}
.col-title{overflow:hidden;}
.col-actions{display:flex;gap:4px;justify-content:flex-end;opacity:0;transition:opacity 0.15s;}
.feed-row:hover .col-actions{opacity:1;}

.sev-badge{display:inline-block;padding:1px 4px;font-size:8px;font-weight:bold;letter-spacing:1px;border-radius:2px;font-family:var(--font-display);white-space:nowrap;}
.sev-badge.CRIT{background:rgba(255,0,51,0.15);color:var(--crit);border:1px solid rgba(255,0,51,0.3);}
.sev-badge.HIGH{background:rgba(255,102,0,0.12);color:var(--high);border:1px solid rgba(255,102,0,0.3);}
.sev-badge.MED{background:rgba(204,170,0,0.10);color:var(--med);border:1px solid rgba(204,170,0,0.3);}

.headline-link{color:var(--white);text-decoration:none;font-size:12px;line-height:1.3;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color 0.1s;}
.headline-link:hover{color:var(--orange);text-decoration:underline;}
.headline-link.sev-crit{color:#ffcdd2;}
.headline-link.sev-high{color:#ffe0cc;}
@media(max-width:600px){.headline-link{white-space:normal;}}

.action-btn{background:transparent;border:1px solid var(--border2);color:var(--dim);cursor:pointer;width:22px;height:20px;border-radius:2px;font-size:11px;display:flex;align-items:center;justify-content:center;transition:all 0.1s;padding:0;}
.action-btn:hover{border-color:var(--orange);color:var(--orange);}
.action-btn.active{color:var(--gold);border-color:var(--gold);}
.action-btn.pin-active{color:var(--cyan);border-color:var(--cyan);}
.action-btn.tweet-btn:hover{border-color:var(--tweet);color:var(--tweet);}

.loading-indicator{display:flex;align-items:center;justify-content:center;gap:8px;padding:30px;color:var(--dim);font-size:11px;letter-spacing:2px;}
.ld-spinner{animation:spin 1.2s linear infinite;display:inline-block;}
.empty-state{text-align:center;padding:40px;color:var(--dim);font-size:11px;letter-spacing:2px;}
#load-more-wrap{display:flex;justify-content:center;padding:12px;border-top:1px solid var(--border);}
#btn-load-more{background:transparent;border:1px solid var(--border2);color:var(--dim);cursor:pointer;padding:6px 20px;font-family:var(--font-mono);font-size:11px;letter-spacing:1px;border-radius:2px;transition:all 0.15s;}
#btn-load-more:hover{border-color:var(--orange);color:var(--orange);}

/* SIDEBAR */
#sidebar{width:240px;flex-shrink:0;background:var(--pnl);overflow-y:auto;display:flex;flex-direction:column;transition:width 0.2s,opacity 0.2s,background 0.3s;}
#sidebar.collapsed{width:0;opacity:0;pointer-events:none;}
@media(max-width:768px){#sidebar{width:100%;border-top:1px solid var(--border);max-height:400px;}#sidebar.collapsed{width:100%;max-height:0;overflow:hidden;opacity:0;}}

.sb-block{border-bottom:1px solid var(--border);}
.sb-title{padding:8px 12px;font-size:9px;color:var(--orange);letter-spacing:2px;background:rgba(255,106,0,0.04);cursor:pointer;display:flex;justify-content:space-between;align-items:center;user-select:none;}
.sb-title:hover{background:rgba(255,106,0,0.08);}
.sb-expand{color:var(--dim);font-size:9px;}
.sb-content{padding:8px 12px;}
.sb-loading{color:var(--dim);font-size:10px;}

.trend-item{display:flex;justify-content:space-between;align-items:center;padding:3px 0;border-bottom:1px solid rgba(28,32,48,0.5);cursor:pointer;}
.trend-item:hover .trend-word{color:var(--orange);}
.trend-word{font-size:11px;color:var(--white);}
.trend-count{font-size:10px;color:var(--amber);background:rgba(240,165,0,0.08);padding:1px 5px;border-radius:2px;min-width:24px;text-align:center;}
.trend-bar{height:2px;background:var(--orange);border-radius:1px;margin-top:2px;opacity:0.4;transition:width 0.5s;}

.stat-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:11px;}
.stat-row.divider{border-top:1px solid var(--border);margin-top:4px;padding-top:8px;}
.sr-label{color:var(--dim);}
.sr-val{color:var(--white);font-family:var(--font-display);font-size:13px;}

.health-item{display:flex;align-items:center;gap:6px;padding:3px 0;font-size:10px;border-bottom:1px solid rgba(28,32,48,0.4);}
.health-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;}
.health-dot.ok{background:var(--green);}
.health-dot.warn{background:var(--amber);}
.health-dot.dead{background:var(--red);}
.health-src{flex:1;color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.health-age{color:var(--dim);font-size:9px;}

.terminal-select{width:100%;background:var(--pnl2);border:1px solid var(--border2);color:var(--white);padding:5px 8px;font-family:var(--font-mono);font-size:11px;border-radius:2px;outline:none;cursor:pointer;transition:background 0.3s;}
.terminal-select:focus{border-color:var(--orange);}

/* GEO PAGE */
#page-geo{display:none;flex:1;flex-direction:column;overflow:hidden;}
#page-geo.active{display:flex;}
#geo-layout{display:flex;flex:1;overflow:hidden;}
#geo-container{flex:1;position:relative;background:var(--bg);display:flex;flex-direction:column;}
#geo-header{padding:10px 16px;background:var(--pnl);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:16px;flex-shrink:0;}
.geo-title{font-family:var(--font-display);font-size:12px;color:var(--orange);letter-spacing:2px;}
.geo-legend{display:flex;gap:12px;}
.geo-leg-item{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--dim);}
.geo-leg-dot{width:8px;height:8px;border-radius:50%;}
#world-map-wrap{flex:1;overflow:hidden;position:relative;}
#world-map-wrap svg{width:100%;height:100%;}
.geo-tooltip{position:absolute;background:var(--pnl);border:1px solid var(--orange);padding:8px 12px;font-size:11px;pointer-events:none;display:none;z-index:10;max-width:240px;box-shadow:var(--shadow);}
.geo-tt-country{color:var(--orange);font-family:var(--font-display);font-size:11px;margin-bottom:4px;}
.geo-tt-item{color:var(--dim);font-size:10px;padding:2px 0;border-bottom:1px solid var(--border);}
.geo-tt-item.crit{color:var(--crit);}
.geo-tt-item.high{color:var(--high);}

#geo-sidebar{width:260px;flex-shrink:0;background:var(--pnl);border-left:1px solid var(--border);overflow-y:auto;}
@media(max-width:768px){#geo-sidebar{display:none;}}
.geo-region-block{border-bottom:1px solid var(--border);}
.geo-region-title{padding:8px 12px;font-size:9px;color:var(--orange);letter-spacing:2px;background:rgba(255,106,0,0.04);}
.geo-region-item{padding:5px 12px;font-size:11px;color:var(--dim);border-bottom:1px solid rgba(28,32,48,0.4);cursor:pointer;display:flex;align-items:center;gap:6px;}
.geo-region-item:hover{background:var(--pnl2);color:var(--white);}
.geo-region-flag{font-size:14px;}
.geo-region-name{flex:1;}
.geo-region-count{font-size:10px;color:var(--amber);background:rgba(240,165,0,0.08);padding:1px 5px;border-radius:2px;}

/* FEEDS PAGE */
#page-feeds{display:none;flex:1;flex-direction:column;overflow:hidden;}
#page-feeds.active{display:flex;}
#feeds-layout{display:flex;flex:1;overflow:hidden;}
@media(max-width:768px){#feeds-layout{flex-direction:column;}}
#feeds-list-panel{flex:1;overflow-y:auto;}
#feeds-detail-panel{width:300px;flex-shrink:0;background:var(--pnl);border-left:1px solid var(--border);padding:16px;overflow-y:auto;}
@media(max-width:768px){#feeds-detail-panel{width:100%;border-left:none;border-top:1px solid var(--border);}}

.feeds-toolbar{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--pnl);border-bottom:1px solid var(--border);flex-shrink:0;}
.feeds-toolbar input{flex:1;background:var(--pnl2);border:1px solid var(--border2);color:var(--white);padding:5px 10px;font-family:var(--font-mono);font-size:11px;border-radius:2px;outline:none;}
.feeds-toolbar input:focus{border-color:var(--orange);}

.feeds-section-header{padding:6px 14px;background:var(--pnl2);font-size:9px;color:var(--orange);letter-spacing:2px;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:1;}
.feed-item-row{display:grid;grid-template-columns:120px 1fr 60px 80px;align-items:center;padding:7px 14px;border-bottom:1px solid rgba(28,32,48,0.5);font-size:11px;gap:8px;transition:background 0.1s;}
.feed-item-row:hover{background:var(--pnl2);}
.feed-item-row.disabled-feed{opacity:0.4;}
.fi-name{color:var(--white);font-weight:bold;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.fi-url{color:var(--dim);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.fi-status{font-size:9px;}
.fi-actions{display:flex;gap:4px;justify-content:flex-end;}
.fi-btn{background:transparent;border:1px solid var(--border2);color:var(--dim);cursor:pointer;padding:2px 6px;font-size:10px;border-radius:2px;font-family:var(--font-mono);transition:all 0.15s;}
.fi-btn:hover{border-color:var(--orange);color:var(--orange);}
.fi-btn.danger:hover{border-color:var(--red);color:var(--red);}

.add-feed-form{display:flex;flex-direction:column;gap:10px;}
.add-feed-form label{font-size:10px;color:var(--dim);letter-spacing:0.5px;}
.add-feed-form input,.add-feed-form select{background:var(--bg);border:1px solid var(--border2);color:var(--white);padding:6px 8px;font-family:var(--font-mono);font-size:11px;border-radius:2px;outline:none;width:100%;}
.add-feed-form input:focus,.add-feed-form select:focus{border-color:var(--orange);}
.add-feed-title{font-family:var(--font-display);font-size:11px;color:var(--orange);letter-spacing:1px;margin-bottom:12px;}

/* MODAL */
#modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.7);z-index:1000;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(3px);}
#modal-settings{background:var(--pnl);border:1px solid var(--border2);border-top:2px solid var(--orange);width:520px;max-width:95vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,0.6),0 0 30px var(--glow-o);transition:background 0.3s;}
.modal-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--border);}
.modal-title{font-family:var(--font-display);font-size:13px;color:var(--orange);letter-spacing:2px;}
.modal-close{background:transparent;border:1px solid var(--border2);color:var(--dim);cursor:pointer;width:26px;height:26px;border-radius:2px;font-size:12px;display:flex;align-items:center;justify-content:center;}
.modal-close:hover{border-color:var(--red);color:var(--red);}
.modal-tabs{display:flex;border-bottom:1px solid var(--border);}
.mtab{flex:1;padding:8px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--dim);cursor:pointer;font-family:var(--font-mono);font-size:10px;letter-spacing:1px;transition:all 0.15s;}
.mtab:hover{color:var(--white);background:var(--pnl2);}
.mtab.active{color:var(--orange);border-bottom-color:var(--orange);}
.modal-body{flex:1;overflow-y:auto;padding:16px 18px;}
.tab-pane{display:none;}
.tab-pane.active{display:block;}
.form-row{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.form-row.col{flex-direction:column;align-items:flex-start;}
.form-row label{color:var(--dim);font-size:10px;letter-spacing:0.5px;min-width:160px;flex-shrink:0;}
.form-row.col label{min-width:auto;}
.cfg-input{background:var(--bg);border:1px solid var(--border2);color:var(--white);padding:5px 8px;font-family:var(--font-mono);font-size:11px;border-radius:2px;outline:none;flex:1;}
.cfg-input:focus{border-color:var(--orange);}
.cfg-select{cursor:pointer;}
.cfg-textarea{width:100%;background:var(--bg);border:1px solid var(--border2);color:var(--white);padding:8px;font-family:var(--font-mono);font-size:11px;border-radius:2px;outline:none;resize:vertical;}
.cfg-textarea:focus{border-color:var(--orange);}
.toggle-label{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--white);font-size:11px;}
.toggle-label input[type=checkbox]{accent-color:var(--orange);}
.modal-footer{display:flex;align-items:center;gap:12px;padding:12px 18px;border-top:1px solid var(--border);}
.terminal-btn{background:transparent;border:1px solid var(--orange);color:var(--orange);cursor:pointer;padding:6px 14px;font-family:var(--font-mono);font-size:11px;letter-spacing:1px;border-radius:2px;transition:all 0.15s;}
.terminal-btn:hover{background:var(--glow-o);}
#save-status{font-size:10px;color:var(--green);}

/* TOAST */
#toast-container{position:fixed;bottom:20px;right:20px;z-index:2000;display:flex;flex-direction:column;gap:8px;}
.toast{background:var(--pnl);border:1px solid var(--border2);border-left:3px solid var(--orange);padding:10px 14px;font-size:11px;color:var(--white);box-shadow:var(--shadow);animation:toast-in 0.3s ease;min-width:200px;}
.toast.error{border-left-color:var(--red);}
.toast.success{border-left-color:var(--green);}
@keyframes toast-in{from{transform:translateX(100%);opacity:0;}to{transform:translateX(0);opacity:1;}}

body:not(.light-mode)::after{content:'';position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,0.03) 2px,rgba(0,0,0,0.03) 4px);z-index:9999;}


/* ══════════════════════════════════════════════════════════════════════════
   MOBILE RESPONSIVE — Full overhaul for screens under 768px
   ══════════════════════════════════════════════════════════════════════════ */

@media (max-width: 768px) {

  /* Allow page to scroll */
  html, body { overflow-y: auto !important; overflow-x: hidden; font-size: 12px; }

  /* HEADER — compact */
  #main-header { padding: 0 10px; height: 48px; }
  .logo-text { font-size: 13px; letter-spacing: 2px; }
  .logo-version { display: none; }
  .logo-sub { display: none; }
  .clock { font-size: 11px; letter-spacing: 1px; }
  .hd-right { gap: 6px; }
  .hd-btn { padding: 4px 6px; font-size: 12px; }

  /* STAT PILLS — smaller */
  .stat-pill { padding: 2px 6px; min-width: 42px; }
  .sp-val { font-size: 13px; }
  .sp-lbl { font-size: 7px; }
  #sp-saved { display: none; }
  .hd-center { gap: 4px; }

  /* TICKER — hide on very small */
  #ticker-bar { height: 20px; }
  .ticker-label { font-size: 8px; padding: 0 6px; }
  .ticker-track { font-size: 10px; }

  /* FILTER BAR — stack vertically */
  #filter-bar {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    padding: 8px 10px;
  }
  .filter-chips { width: 100%; gap: 4px; }
  .chip { padding: 5px 8px; font-size: 10px; flex: 1; text-align: center; }
  .search-wrap { max-width: 100%; width: 100%; }
  .feed-controls { width: 100%; justify-content: flex-end; }
  .last-fetch { display: block; font-size: 9px; }

  /* NAV TABS — full width */
  #nav-tabs { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .nav-tab { padding: 8px 12px; font-size: 9px; white-space: nowrap; }

  /* MAIN LAYOUT — single column */
  #main-layout {
    flex-direction: column;
    height: auto !important;
    overflow: visible !important;
  }

  /* FEED PANEL — full width */
  #feed-panel {
    border-right: none;
    border-bottom: 1px solid var(--border);
    height: auto !important;
    overflow: visible !important;
    min-height: 50vh;
  }

  /* FEED LIST — allow natural scroll */
  #feed-list { overflow-y: visible !important; }

  /* FEED HEADER — simplified */
  #feed-header {
    grid-template-columns: 36px 44px 1fr;
    font-size: 8px;
  }
  #feed-header .col-type,
  #feed-header .col-actions,
  #feed-header .col-sev { display: none; }

  /* FEED ROW — simplified grid */
  .feed-row {
    grid-template-columns: 36px 44px 1fr;
    padding: 8px 8px;
    min-height: 40px;
    gap: 4px;
  }
  .feed-row .col-type,
  .feed-row .col-sev { display: none; }
  .feed-row .col-actions {
    display: none; /* hidden by default on mobile */
  }

  /* HEADLINE — wrap on mobile */
  .headline-link {
    white-space: normal;
    font-size: 12px;
    line-height: 1.4;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .col-src { font-size: 9px; }
  .col-age { font-size: 9px; }

  /* SEVERITY BADGE on mobile — in title area */
  .sev-badge { font-size: 7px; padding: 1px 3px; }

  /* SIDEBAR — below feed, collapsible */
  #sidebar {
    width: 100% !important;
    max-height: none;
    border-top: 2px solid var(--orange);
    overflow: visible;
  }
  #sidebar.collapsed { display: none !important; }

  /* GEO PAGE */
  #page-geo { height: 70vh; min-height: 400px; }
  #geo-layout { flex-direction: column; height: 100%; }
  #geo-container { flex: 1; min-height: 300px; }
  #geo-sidebar { display: none; }
  #world-map-wrap { min-height: 300px; }

  /* FEEDS PAGE */
  #feeds-layout { flex-direction: column; }
  #feeds-detail-panel { width: 100%; border-left: none; border-top: 1px solid var(--border); }
  .feed-item-row { grid-template-columns: 1fr 60px; }
  .feed-item-row .fi-url, .feed-item-row .fi-status { display: none; }

  /* MODAL — full screen */
  #modal-settings { width: 95vw; max-height: 90vh; }
  .form-row { flex-direction: column; align-items: flex-start; }
  .form-row label { min-width: auto; margin-bottom: 4px; }
  .cfg-input { width: 100%; }

  /* LOAD MORE button */
  #btn-load-more { width: 100%; padding: 12px; font-size: 12px; }

  /* TOAST — full width on mobile */
  #toast-container { left: 10px; right: 10px; bottom: 10px; }
  .toast { min-width: auto; }
}

/* Extra small phones */
@media (max-width: 400px) {
  .logo-text { font-size: 11px; letter-spacing: 1px; }
  .stat-pill { min-width: 36px; padding: 2px 4px; }
  .sp-val { font-size: 11px; }
  #ticker-bar { display: none; }
  .chip { padding: 4px 6px; font-size: 9px; }
}

/* MOBILE GEO MAP FIX */
@media (max-width: 768px) {
  #page-geo { height: 70vh !important; min-height: 400px !important; display: flex !important; flex-direction: column !important; }
  #geo-layout { flex: 1 !important; height: 100% !important; }
  #geo-container { flex: 1 !important; height: 100% !important; min-height: 350px !important; }
  #world-map-wrap { flex: 1 !important; height: 100% !important; min-height: 350px !important; position: relative !important; }
  #world-map { position: absolute !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important; }
}
