/* ==========================================================================
   PROFMOS · AI THEME OVERLAY
   Injected into every app page. Transforms the blue Bootstrap look into the
   JARVIS/TRON HUD aesthetic — dark space, cyan + gold, glowing edges.
   Overlay strategy: override colors, surfaces, type, and class-based chrome.
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@500;600;700;800&family=Rajdhani:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap');

:root{
  --pm-void:#02060d; --pm-deep:#050d18; --pm-panel:#0b1524; --pm-panel2:#111d30;
  --pm-line:rgba(40,224,255,.18); --pm-line2:rgba(40,224,255,.34);
  --pm-cyan:#28e0ff; --pm-cyan-d:#0a7d99; --pm-gold:#ffb63d; --pm-gold-d:#c77d1e;
  --pm-teal:#2effc7; --pm-red:#ff4d6b; --pm-violet:#a98bff;
  --pm-ink:#d6f2fb; --pm-muted:#7fb0c4; --pm-dim:#4a7a90;
  --pm-glow:rgba(40,224,255,.5);
}

/* ---- base canvas ---- */
html,body{
  background:
    radial-gradient(1200px 800px at 50% 0%, rgba(40,224,255,.05), transparent 60%),
    radial-gradient(900px 600px at 90% 10%, rgba(255,182,61,.04), transparent 55%),
    var(--pm-void) !important;
  color:var(--pm-ink) !important;
  font-family:'Rajdhani',system-ui,sans-serif !important;
}
/* ambient grid */
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background-image:linear-gradient(var(--pm-line) 1px,transparent 1px),linear-gradient(90deg,var(--pm-line) 1px,transparent 1px);
  background-size:46px 46px;mask:radial-gradient(circle at 50% 20%,#000,transparent 80%);opacity:.35;
}
body>*{position:relative;z-index:1}

/* ---- top bars / toolbars (the blue header becomes the HUD bar) ---- */
.tb,.topbar,.navbar,.app-header,header,
[class*="toolbar"],[class*="topbar"]{
  background:linear-gradient(180deg,rgba(11,21,36,.96),rgba(5,13,24,.96)) !important;
  border-bottom:1px solid var(--pm-line2) !important;
  box-shadow:0 2px 20px rgba(0,0,0,.5), 0 0 30px rgba(40,224,255,.06) inset !important;
  color:var(--pm-ink) !important;
}
.tb-title,.app-title,.brand,.navbar-brand{
  font-family:'Orbitron',sans-serif !important;letter-spacing:2px !important;
  color:var(--pm-ink) !important;text-shadow:0 0 12px var(--pm-glow) !important;
}
.tb-logo,.logo,.brand-mark{
  background:linear-gradient(145deg,#12233a,#0a1626) !important;
  border:1px solid var(--pm-line2) !important;color:var(--pm-cyan) !important;
  font-family:'Orbitron' !important;box-shadow:0 0 16px rgba(40,224,255,.15) !important;
}

/* ---- left sidebar / rail ---- */
.sidebar,.side-rail,[class*="sidebar"],[class*="side-nav"],.rail{
  background:linear-gradient(180deg,rgba(8,16,28,.97),rgba(3,9,18,.97)) !important;
  border-right:1px solid var(--pm-line) !important;
}
.sidebar a,.rail a,.side-rail a{color:var(--pm-muted) !important}
.sidebar a:hover,.sidebar .active,.rail a:hover,.rail .active{
  color:var(--pm-cyan) !important;background:rgba(40,224,255,.08) !important;
}

/* ---- tabs ---- */
.tabs,.nav-tabs,[class*="tabbar"]{border-bottom:1px solid var(--pm-line) !important;background:transparent !important}
.tab,.nav-tabs .nav-link,[role="tab"]{
  color:var(--pm-muted) !important;font-family:'Rajdhani' !important;font-weight:600 !important;
  letter-spacing:.5px !important;background:transparent !important;border:none !important;
}
.tab.active,.tab.on,.nav-tabs .nav-link.active,[role="tab"][aria-selected="true"]{
  color:var(--pm-cyan) !important;border-bottom:2px solid var(--pm-cyan) !important;
  text-shadow:0 0 10px var(--pm-glow) !important;background:rgba(40,224,255,.05) !important;
}
.badge{background:var(--pm-cyan-d) !important;color:#02141b !important;font-family:'JetBrains Mono' !important}

/* ---- panels / cards / boxes ---- */
.card,.panel,.box,.tile,.modal-content,.dropdown-menu,.camp-dd,
[class*="card"],[class*="panel"]{
  background:linear-gradient(160deg,rgba(11,21,36,.92),rgba(5,13,24,.92)) !important;
  border:1px solid var(--pm-line) !important;border-radius:10px !important;
  color:var(--pm-ink) !important;box-shadow:0 8px 30px rgba(0,0,0,.4) !important;
}

/* ---- buttons ---- */
.btn,button,.tb-btn,input[type="submit"],input[type="button"]{
  font-family:'Rajdhani',sans-serif !important;font-weight:600 !important;letter-spacing:.4px !important;
  border-radius:6px !important;transition:filter .15s,transform .15s !important;
}
.btn-primary,.btn.run,.tb-btn.run,.btn-success,.primary{
  background:linear-gradient(150deg,var(--pm-cyan),var(--pm-cyan-d)) !important;
  color:#02141b !important;border:none !important;box-shadow:0 0 16px rgba(40,224,255,.3) !important;
}
.btn-primary:hover,.btn.run:hover,.tb-btn.run:hover{filter:brightness(1.12) !important;transform:translateY(-1px)}
.tb-btn,.btn-secondary,.btn-default,.btn-light{
  background:rgba(40,224,255,.08) !important;color:var(--pm-ink) !important;
  border:1px solid var(--pm-line2) !important;
}
.tb-btn:hover,.btn-secondary:hover{background:rgba(40,224,255,.16) !important;border-color:var(--pm-cyan) !important}
.tb-btn.tst,.btn-warning{background:linear-gradient(150deg,var(--pm-gold),var(--pm-gold-d)) !important;color:#1a1305 !important;border:none !important}
.btn-danger,.btn-delete{background:rgba(255,77,107,.15) !important;color:var(--pm-red) !important;border:1px solid rgba(255,77,107,.3) !important}

/* ---- inputs ---- */
input,textarea,select,.form-control,.search-box{
  background:var(--pm-void) !important;border:1px solid var(--pm-line) !important;
  color:var(--pm-ink) !important;border-radius:6px !important;font-family:'Rajdhani' !important;
}
input:focus,textarea:focus,select:focus,.form-control:focus{
  border-color:var(--pm-cyan) !important;box-shadow:0 0 0 3px rgba(40,224,255,.12) !important;outline:none !important;
}
input::placeholder,textarea::placeholder{color:var(--pm-dim) !important}

/* ---- search bar in header ---- */
.search,.search-box,[class*="search"] input{
  background:rgba(2,12,20,.7) !important;border:1px solid var(--pm-line2) !important;color:var(--pm-ink) !important;
}

/* ---- tables ---- */
table,.table{color:var(--pm-ink) !important}
th,.table th{background:rgba(40,224,255,.06) !important;color:var(--pm-cyan) !important;
  font-family:'Orbitron' !important;font-size:11px !important;letter-spacing:1px !important;text-transform:uppercase !important;
  border-color:var(--pm-line) !important}
td,.table td{border-color:var(--pm-line) !important}
tr:hover td{background:rgba(40,224,255,.04) !important}

/* ---- headings ---- */
h1,h2,h3,h4,h5{font-family:'Orbitron',sans-serif !important;color:var(--pm-ink) !important;letter-spacing:.5px !important}
h1 i,h2 i,h3 i{color:var(--pm-cyan) !important}

/* ---- links ---- */
a{color:var(--pm-cyan) !important}
a:hover{color:var(--pm-gold) !important}

/* ---- dropzones / upload areas ---- */
.dropzone,[class*="drop"],.upload-area{
  border:1px dashed var(--pm-line2) !important;background:rgba(40,224,255,.03) !important;
  color:var(--pm-muted) !important;border-radius:10px !important;
}

/* ---- status pills ---- */
.tb-status,.status,.pill,.tag{font-family:'JetBrains Mono' !important;letter-spacing:.5px !important}
.tb-status.draft{background:rgba(255,182,61,.15) !important;color:var(--pm-gold) !important}

/* ---- scrollbars ---- */
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:var(--pm-void)}
::-webkit-scrollbar-thumb{background:var(--pm-line2);border-radius:5px}
::-webkit-scrollbar-thumb:hover{background:var(--pm-cyan-d)}

/* ---- a subtle home button back to the HUD ---- */
.pm-home-link{
  position:fixed;right:16px;bottom:16px;z-index:9999;
  display:flex;align-items:center;gap:8px;padding:9px 15px;border-radius:8px;
  background:linear-gradient(150deg,rgba(11,21,36,.95),rgba(5,13,24,.95));
  border:1px solid var(--pm-line2);color:var(--pm-cyan);text-decoration:none;
  font-family:'Orbitron';font-size:11px;letter-spacing:1px;
  box-shadow:0 0 20px rgba(40,224,255,.15);transition:all .18s;
}
.pm-home-link:hover{border-color:var(--pm-cyan);box-shadow:0 0 26px var(--pm-glow);color:var(--pm-cyan) !important}
