@font-face {
  font-family: 'Bitwise Sans';
  src: url('/custom/fonts/Rexton-Bold.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Bitwise Sans';
  src: url('/custom/fonts/Rexton-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
:root{
  --bw-cyan:#58c7f3;
  --bw-blue:#002cda;
  --bw-light-blue:#007bff;
  --bw-purple:#6d23ff;

  --bw-bg:#0b1020;
  --bw-surface: rgba(255,255,255,.06);
  --bw-surface2: rgba(255,255,255,.10);
  --bw-border: rgba(255,255,255,.12);
  --bw-text: rgba(255,255,255,.92);
  --bw-muted: rgba(255,255,255,.70);
  --bw-font: 'Bitwise Sans', 'Segoe UI', system-ui, -apple-system, Arial, sans-serif;
  --bw-radius: 16px;
  --bw-shadow: 0 16px 48px rgba(0,0,0,.35);
  --bw-font: "Segoe UI", system-ui, -apple-system, Arial, sans-serif;
}

html, body, input, textarea, select, button{
  font-family: var(--bw-font) !important;
  background: radial-gradient(1200px 600px at 20% 0%, rgba(109,35,255,.25), transparent 55%),
              radial-gradient(900px 500px at 90% 10%, rgba(88,199,243,.22), transparent 55%),
              linear-gradient(180deg, #070a14, var(--bw-bg));
  color: var(--bw-text);
}

a{ color: var(--bw-cyan); }
a:hover{ color: #ffffff; }

.bw-container{
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 18px;
}

/* Header */
.bw-header{
  position: sticky;
  top: 0;
  z-index: 50;
  backdrop-filter: blur(10px);
  background: rgba(7,10,20,.65);
  border-bottom: 1px solid var(--bw-border);
}
.bw-header .bw-container{
  display:flex;
  align-items:center;
  justify-content:space-between;
  height: 64px;
}
.bw-brand{
  display:flex; align-items:center; gap:10px;
  text-decoration:none;
  color: var(--bw-text);
}
.bw-logo{ height: 28px; width:auto; }
.bw-brand-text{
  font-weight: 700;
  letter-spacing: .2px;
}
.bw-nav a{
  text-decoration:none;
  color: var(--bw-muted);
  margin-left: 14px;
}
.bw-nav a:hover{ color: var(--bw-text); }

/* “Card” generiche (molte pagine UVDesk usano box/panel) */
.panel, .uv-paper, .kb-paper, .ticket-view, .user-form, .container .content{
  background: var(--bw-surface) !important;
  border: 1px solid var(--bw-border) !important;
  border-radius: var(--bw-radius) !important;
  box-shadow: var(--bw-shadow) !important;
}

/* Inputs + search */
input[type="text"], input[type="email"], input[type="password"], textarea, select{
  background: #0d40d6 !important;
  border: 1px solid var(--bw-border) !important;
  color: var(--bw-text) !important;
  border-radius: 12px !important;
}
input::placeholder, textarea::placeholder{
  color: #0d40d6 ) !important;
}
input:focus, textarea:focus, select:focus{
  outline: none !important;
  border-color: rgba(88,199,243,.7) !important;
  box-shadow: 0 0 0 4px rgba(88,199,243,.15) !important;
}

/* Bottoni */
button, .btn, .btn-primary, input[type="submit"]{
  border-radius: 12px !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  background: linear-gradient(90deg, var(--bw-blue), var(--bw-purple)) !important;
  color: white !important;
  font-weight: 600 !important;
}
button:hover, .btn:hover, .btn-primary:hover, input[type="submit"]:hover{
  filter: brightness(1.08);
  transform: translateY(-1px);
}
.btn-secondary, .btn-default{
  background: rgba(255,255,255,.08) !important;
}

/* Footer */
.bw-footer{
  margin-top: 40px;
  padding: 22px 0;
  border-top: 1px solid var(--bw-border);
  color: var(--bw-muted);
  background: rgba(7,10,20,.55);
}
.bw-footer .bw-container{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.bw-footer a{
  color: var(--bw-muted);
  text-decoration:none;
  margin-left: 14px;
}
.bw-footer a:hover{ color: var(--bw-text); }
/* Select chiusa */
select,
select.form-control,
.ticket-form select {
  background: #0f172a !important;   /* sfondo scuro */
  color: #ffffff !important;        /* testo bianco */
  border: 1px solid rgba(255,255,255,.18) !important;
}

/* Opzioni nel menu */
select option {
  background: #0f172a !important;
  color: #ffffff !important;
}

/* Placeholder/voce vuota iniziale */
select option[value=""] {
  color: rgba(255,255,255,.65) !important;
}