/* FSR.ADMIN Theme v2 (override-heavy) */
:root{
  --primary:#ff6c00;
  --accent:#00a3ff;
  --bg-deep:#050509;
  --glass:rgba(16,18,26,.92);
  --glass2:rgba(12,14,20,.92);
  --border:rgba(255,255,255,.10);
  --muted:rgba(255,255,255,.55);
  --shadow:0 18px 50px rgba(0,0,0,.45);
  --glow-o:0 0 22px rgba(255,108,0,.25);
  --glow-b:0 0 22px rgba(0,163,255,.25);
  --radius:16px;
}

/* baseline */
html,body{height:100%;}
body.fsr{
  background: var(--bg-deep) !important;
  color:#fff !important;
  font-family: Rajdhani, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif !important;
  margin:0 !important;
  min-height:100vh;
  overflow-x:hidden;
  padding-top:90px; /* space for navbar */
}

/* starfield canvas */
#starfield{
  position:fixed; inset:0; z-index:-1;
  pointer-events:none;
  opacity:.55;
}

/* Navbar */
.fsr-navbar{
  position:fixed; top:0; left:0; right:0;
  height:70px;
  background: rgba(5,5,10,.88);
  border-bottom:1px solid var(--border);
  backdrop-filter: blur(12px);
  z-index:999;
  display:flex; align-items:center;
}
.fsr-navbar-inner{
  width:100%;
  max-width:1440px;
  padding:0 20px;
  margin:0 auto;
  display:flex; align-items:center; justify-content:space-between;
  gap:12px;
}
.fsr-brand{
  display:flex; align-items:center; gap:10px;
  font-family: Orbitron, sans-serif;
  font-weight:900;
  letter-spacing:2px;
  text-decoration:none;
  color:#fff;
  font-size:1.25rem;
}
.fsr-brand .accent{color:var(--primary);}
.fsr-brand .dot{
  width:22px;height:22px; border-radius:7px;
  background: linear-gradient(135deg, var(--primary), #ff9a00);
  box-shadow: var(--glow-o);
  display:inline-flex; align-items:center; justify-content:center;
  color:#000; font-size:12px; font-weight:900;
}
.fsr-nav-right{display:flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:flex-end;}
.fsr-pill{
  display:inline-flex; align-items:center; gap:8px;
  padding:6px 12px;
  border-radius:999px;
  border:1px solid var(--border);
  background: rgba(255,255,255,.03);
  font-weight:700;
  font-size:.9rem;
  color: rgba(255,255,255,.9);
}
.fsr-pill i{color:var(--accent);}

/* Buttons */
.fsr-btn{
  display:inline-flex; align-items:center; gap:8px;
  padding:9px 14px;
  border-radius:12px;
  border:1px solid var(--border);
  background: rgba(255,255,255,.03);
  color:#fff;
  text-decoration:none;
  font-family: Orbitron, sans-serif;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:1px;
  text-transform:uppercase;
  transition: .18s ease;
  cursor:pointer;
}
.fsr-btn:hover{
  transform: translateY(-2px);
  border-color: rgba(255,108,0,.35);
  box-shadow: var(--glow-o);
}
.fsr-btn-orange{
  border:none;
  color:#000;
  background: linear-gradient(135deg, var(--primary), #ff9a00);
}
.fsr-btn-orange:hover{ box-shadow: 0 0 22px rgba(255,108,0,.35); }
.fsr-btn-ghost:hover{ border-color: rgba(0,163,255,.35); box-shadow: var(--glow-b); }

/* Remove old layouts */
.main-content > .header, .main-content > header.topbar{ display:none !important; }

.dashboard-container{ display:block !important; grid-template-columns: 1fr !important; min-height:auto !important; }
.sidebar{ display:none !important; }
.topbar,.header{ background:transparent !important; border-bottom: 1px solid var(--border) !important; }
.main-content{
  background: transparent !important;
  padding: 22px 20px 40px !important;
}
.content-box{ max-width: 1440px !important; margin: 0 auto !important; }

/* Cards / Panels */
.card, .content-box > .card, .panel, .box, .widget, .quick-info, .stats, .container-card{
  background: var(--glass) !important;
  border:1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  box-shadow: var(--shadow) !important;
  backdrop-filter: blur(10px);
}

.card{ padding:22px !important; position:relative; overflow:hidden; }
.card:before{
  content:"";
  position:absolute; top:0; left:0; right:0; height:4px;
  background: linear-gradient(90deg, var(--primary), var(--accent));
  opacity:.85;
}
.card-header{ border-bottom: 1px solid rgba(255,255,255,.08) !important; }
.card-title, .page-title, h1,h2,h3{
  font-family: Orbitron, sans-serif !important;
  letter-spacing: 1px;
}
.page-title{ color:#fff !important; }
.page-title i{ color: var(--primary) !important; }

/* Tables */
table{
  width:100%;
  border-collapse:separate !important;
  border-spacing:0 !important;
  background: rgba(0,0,0,.25) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-radius: 12px !important;
  overflow:hidden;
}
th, td{ padding: 14px 16px !important; text-align:left !important; }
th{
  background: rgba(255,108,0,.10) !important;
  color: var(--primary) !important;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: .82rem;
  font-family: Orbitron, sans-serif !important;
}
tr{ background: rgba(255,255,255,.03) !important; }
tr:nth-child(even){ background: rgba(255,255,255,.02) !important; }
tr:hover{ background: rgba(0,0,0,.55) !important; }

/* Links / action icons */
a{ color: var(--accent); }
.actions a, .edit, .delete{
  display:inline-flex; align-items:center; justify-content:center;
  width:34px; height:34px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  margin-right: 8px;
  text-decoration:none;
  transition:.15s;
}
.actions a:hover{ transform: translateY(-2px); }
.edit{ color: var(--accent) !important; border-color: rgba(0,163,255,.25) !important; }
.delete{ color: #ff6b6b !important; border-color: rgba(255,107,107,.25) !important; }

/* Forms */
input, textarea, select{
  width:100%;
  background: rgba(0,0,0,.30) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  color:#fff !important;
  border-radius: 12px !important;
  padding: 12px 14px !important;
  outline:none;
}
input:focus, textarea:focus, select:focus{
  border-color: rgba(0,163,255,.45) !important;
  box-shadow: var(--glow-b);
}
label{ color: rgba(255,255,255,.82) !important; font-weight:700; }

/* legacy .btn override */
.btn{
  border-radius: 12px !important;
  border:1px solid var(--border) !important;
  background: rgba(255,255,255,.03) !important;
  color:#fff !important;
  padding: 10px 14px !important;
  font-family: Orbitron, sans-serif !important;
  font-size:.78rem !important;
  letter-spacing:1px;
  text-transform:uppercase;
  font-weight:800 !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
}
.btn:hover{ transform: translateY(-2px); box-shadow: var(--glow-o); border-color: rgba(255,108,0,.35) !important; }
.btn.primary, .btn.orange{ background: linear-gradient(135deg, var(--primary), #ff9a00) !important; border:none !important; color:#000 !important; }
.back, .back-to-dashboard{
  display:inline-flex; align-items:center; gap:10px;
  margin-top:18px;
  text-decoration:none;
  color: rgba(255,255,255,.85) !important;
  padding: 10px 14px;
  border-radius: 12px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
}
.back:hover{ box-shadow: var(--glow-b); border-color: rgba(0,163,255,.35); transform: translateY(-2px); }

/* Treat common wrapper as a card */
.content-box{
  background: var(--glass) !important;
  border:1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  box-shadow: var(--shadow) !important;
  padding: 22px !important;
  position: relative;
  overflow: hidden;
}
.content-box:before{
  content:"";
  position:absolute; top:0; left:0; right:0; height:4px;
  background: linear-gradient(90deg, var(--primary), var(--accent));
  opacity:.85;
}
.page-header{
  position:relative;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap: 14px;
  padding: 6px 0 16px !important;
  margin: 0 0 18px !important;
  border-bottom: 1px solid rgba(255,255,255,.08) !important;
}
.page-header .page-title{ font-size: 1.25rem !important; }

/* Footer */
.fsr-footer{
  text-align:center;
  color: rgba(255,255,255,.50);
  font-size: .85rem;
  padding: 34px 10px 10px;
}

/* Responsiveness */
@media (max-width: 900px){
  body.fsr{ padding-top: 110px; }
  .fsr-navbar{ height:auto; padding: 10px 0; }
  .fsr-nav-right{ gap:8px; }
}


/* --- Forms v3 (solid, non-transparent) --- */
.form-container, .form-card, .editor-wrap{
  background: rgba(10,12,18,.92) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: var(--radius) !important;
  box-shadow: var(--shadow) !important;
}
.form-container{ padding: 22px !important; }
.form-container{ position: relative; overflow: hidden; }
.form-container::before{
  content:"";
  position:absolute; left:0; right:0; top:0; height:4px;
  background: linear-gradient(90deg, var(--primary), var(--accent));
  opacity:.85;
}

.form-section-title{
  font-family: Orbitron, sans-serif !important;
  letter-spacing: 1px;
  font-weight: 900;
  margin: 0 0 12px !important;
  color: rgba(255,255,255,.95) !important;
}
.form-section-title i{ color: var(--accent) !important; }
.form-section{ padding-top: 6px !important; margin-bottom: 20px !important; }
.form-group{ margin-bottom: 14px !important; }
.help-text, .hint, .muted, .small-note{ color: rgba(255,255,255,.55) !important; }

/* inputs more solid */
input, textarea, select{
  background: rgba(3,4,7,.82) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}
textarea{ min-height: 120px; }

/* file upload blocks */
.file-upload, .dropzone, .upload-box{
  background: rgba(3,4,7,.55) !important;
  border: 1px dashed rgba(255,255,255,.18) !important;
  border-radius: 14px !important;
}
.file-upload:hover, .dropzone:hover, .upload-box:hover{
  border-color: rgba(255,108,0,.45) !important;
  box-shadow: var(--glow-o);
}

/* Quill (dark) */
.ql-toolbar.ql-snow{
  background: rgba(3,4,7,.60) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 14px 14px 0 0 !important;
}
.ql-container.ql-snow{
  background: rgba(3,4,7,.55) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-top: none !important;
  border-radius: 0 0 14px 14px !important;
}
.ql-editor{ color:#fff !important; min-height: 280px; }
.ql-snow .ql-stroke{ stroke: rgba(255,255,255,.85) !important; }
.ql-snow .ql-fill{ fill: rgba(255,255,255,.85) !important; }
.ql-snow .ql-picker{ color:#fff !important; }
.ql-snow .ql-picker-options{ background: rgba(10,12,18,.95) !important; border: 1px solid rgba(255,255,255,.12) !important; }
.ql-snow .ql-picker.ql-expanded .ql-picker-label{ border-color: rgba(0,163,255,.45) !important; }

/* Buttons inside form toolbars */
.form-actions, .actions-row{
  display:flex; gap:10px; flex-wrap:wrap;
}



/* v3 forms */
/* Make all cards less transparent + blur */
.card, .content-box, .panel, .box, .widget, .quick-info, .stats, .container-card{
  backdrop-filter: blur(10px) !important;
}

/* Stronger surfaces for edit/add pages */
.form-container, .form-card, .editor-wrap, .edit-card, .add-card{
  background: rgba(10,12,18,.92) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: var(--radius) !important;
  box-shadow: var(--shadow) !important;
}

.form-section-title, .section-title, .form-title{
  font-family: Orbitron, sans-serif !important;
  letter-spacing: 1px;
  font-size: 1.05rem !important;
  color: #fff !important;
  margin: 0 0 12px 0 !important;
}

.form-row{ display:flex !important; gap:14px !important; flex-wrap:wrap !important; }
.form-col{ flex:1 1 220px !important; min-width: 220px !important; }

/* Inputs: more solid, less see-through */
input, textarea, select{
  background: rgba(3,4,7,.82) !important;
}
textarea{ min-height: 140px; }

/* File upload blocks */
.file-upload{
  background: rgba(0,0,0,.55) !important;
  border: 1px dashed rgba(255,255,255,.18) !important;
  border-radius: 14px !important;
}
.file-upload:hover{
  border-color: rgba(255,108,0,.45) !important;
  box-shadow: var(--glow-o);
}
.file-upload-label{ color: rgba(255,255,255,.85) !important; }

/* Quill editor dark mode */
.ql-toolbar.ql-snow{
  background: rgba(0,0,0,.55) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 14px 14px 0 0 !important;
}
.ql-container.ql-snow{
  background: rgba(0,0,0,.55) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-top: none !important;
  border-radius: 0 0 14px 14px !important;
}
.ql-editor{
  color:#fff !important;
  min-height: 280px !important;
}
.ql-snow .ql-stroke{ stroke: rgba(255,255,255,.85) !important; }
.ql-snow .ql-fill{ fill: rgba(255,255,255,.85) !important; }
.ql-snow .ql-picker{ color: rgba(255,255,255,.92) !important; }
.ql-snow .ql-picker-options{ background: rgba(10,12,18,.96) !important; border: 1px solid rgba(255,255,255,.10) !important; }

/* Old bright placeholders in editors */
::placeholder{ color: rgba(255,255,255,.35) !important; }

/* Reduce double-card look: inner form inside content-box */
.content-box .form-container{
  box-shadow: none !important;
}
