/* Socket Sam 1.1.22 — global black/red application theme.
   Visual overrides only: no sizing, routing, data, or behavior changes. */
:root{color-scheme:dark;--ss-bg:#08090b;--ss-surface:#0e1014;--ss-card:#121419;--ss-card-2:#17191e;--ss-border:#292c33;--ss-border-2:#343840;--ss-text:#f4f5f7;--ss-muted:#9298a3;--ss-red:#e11824;--ss-red-2:#f13a44;--ss-green:#55d887;--ss-amber:#f1c35b}
html,body{background:var(--ss-bg)!important;color:var(--ss-text)!important}
body{accent-color:var(--ss-red)}
.boot{background:radial-gradient(circle at 50% 20%,rgba(225,24,36,.10),transparent 34%),var(--ss-bg)!important;color:var(--ss-text)!important}
.boot p{color:var(--ss-muted)!important}
.boot img{background:transparent!important}

/* Main application shell */
.shell{background:var(--ss-bg)!important;color:var(--ss-text)!important}
.topbar{background:#0b0c0f!important;color:#fff!important;border-bottom-color:var(--ss-red)!important}
.brandmark img{background:transparent!important;border-radius:0!important}
.top-actions button,.iconbtn{background:#17191e!important;border-color:#343840!important;color:#fff!important}
.top-actions button:hover,.iconbtn:hover{background:#20232a!important;border-color:#484d57!important}
.layout{background:var(--ss-bg)!important}
.nav{background:#0d0f12!important;color:#e5e7eb!important;border-right:1px solid #23262c!important}
.nav .section{color:#737985!important}
.nav a{color:#c8cbd1!important}
.nav a:hover{background:#181b20!important;color:#fff!important}
.nav a.active{background:var(--ss-red)!important;color:#fff!important}
.main{background:radial-gradient(circle at 68% 0%,rgba(225,24,36,.065),transparent 32%),var(--ss-bg)!important;color:var(--ss-text)!important}
.pagehead h1,.pagehead h2,.pagehead h3{color:#fff!important}
.pagehead p{color:var(--ss-muted)!important}
.actions{color:var(--ss-text)}

/* Cards, panels, summaries and common content blocks */
.card,.stat,.authcard,.tablewrap,.compact-row,details,fieldset{
  background:linear-gradient(180deg,var(--ss-card),var(--ss-surface))!important;
  border-color:var(--ss-border)!important;
  color:var(--ss-text)!important;
}
.card .card{background:#101217!important;border-color:#25282f!important}
.card h1,.card h2,.card h3,.stat .value,.compact-row strong,legend{color:#fff!important}
.stat .label,.compact-row span,.help,.hint,.kicker,.timelineitem time,.field .hint,.switchtext span{color:var(--ss-muted)!important}
.empty{color:#808793!important}
hr{border:0;border-top:1px solid var(--ss-border)!important}

/* Forms */
.field label,label{color:#e7e9ed}
.field input,.field select,.field textarea,
.authcard input,.authcard select,.authcard textarea,
.statusbar select,
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),select,textarea{
  background:#0c0e12!important;
  border-color:#383c45!important;
  color:#f5f6f8!important;
}
input::placeholder,textarea::placeholder{color:#6f7580!important;opacity:1}
input:focus,select:focus,textarea:focus{border-color:#7f343a!important;outline:2px solid rgba(225,24,36,.18)!important;outline-offset:1px}
input:disabled,select:disabled,textarea:disabled{background:#15171b!important;color:#777e89!important;opacity:1}
option,optgroup{background:#101216!important;color:#f4f5f7!important}
input[type="date"]::-webkit-calendar-picker-indicator,input[type="datetime-local"]::-webkit-calendar-picker-indicator,input[type="time"]::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.8}
input[type="file"]::file-selector-button{background:#1a1d22;color:#f4f5f7;border:1px solid #3b3f48;border-radius:7px;padding:7px 10px;margin-right:10px}

/* Buttons and links */
.btn{background:#17191e!important;color:#f4f5f7!important;border-color:#373b44!important;box-shadow:none!important}
.btn:hover{background:#20232a!important;border-color:#4a4f59!important}
.btn.primary{background:var(--ss-red)!important;border-color:var(--ss-red)!important;color:#fff!important}
.btn.primary:hover{background:#c9141f!important;border-color:#c9141f!important}
.btn.dark{background:#090a0c!important;border-color:#343840!important;color:#fff!important}
.btn.danger{background:#9f1720!important;border-color:#bd202a!important;color:#fff!important}
a,.link{color:#f34a54}
a:hover,.link:hover{color:#ff6c74}

/* Tables */
.tablewrap{box-shadow:none!important}
table{color:var(--ss-text)!important;background:transparent!important}
th{background:#15171c!important;color:#aeb3bd!important;border-bottom-color:#31343b!important}
td{background:transparent!important;color:#e2e4e8!important;border-bottom-color:#24272d!important}
tbody tr:hover td{background:#15181d!important}

/* Badges and statuses */
.badge{background:#252930!important;color:#d4d7dc!important}
.badge.good{background:rgba(35,166,86,.16)!important;color:#67dd92!important}
.badge.warn{background:rgba(204,147,25,.16)!important;color:#f3c965!important}
.badge.bad{background:rgba(225,24,36,.16)!important;color:#ff747c!important}
.readonly{background:#241d0e!important;border-color:#6e561f!important;color:#f3d487!important}

/* Toggles, tabs and list rows */
.switchrow{border-bottom-color:#272a31!important}
.switch span{background:#41464f!important}
.switch span:after{background:#f5f5f5!important}
.switch input:checked+span{background:var(--ss-red)!important}
.tabs button,.sectiontabs button{background:#14161b!important;color:#cfd2d8!important;border-color:#353941!important}
.tabs button.active,.sectiontabs button.active{background:var(--ss-red)!important;color:#fff!important;border-color:var(--ss-red)!important}
.compact-row:hover{background:#181b20!important}
.timelineitem{border-left-color:var(--ss-red)!important}

/* Dialogs / modal workflows */
.modal{background:#101216!important;color:var(--ss-text)!important;border:1px solid #30343b!important;box-shadow:0 22px 70px rgba(0,0,0,.62)!important}
.modal::backdrop{background:rgba(0,0,0,.76)!important}
.modalhead{background:#121419!important;border-bottom-color:#2d3037!important;color:#fff!important}
.modalbody{background:#0f1115!important;color:var(--ss-text)!important}
.modalfoot{background:#121419!important;border-top-color:#2d3037!important}
.closebtn{color:#fff!important}
.toast{background:#17191e!important;color:#fff!important;border:1px solid #343840!important}
.toast.error{background:#7f151d!important;border-color:#bd2630!important}

/* Login, signup and public Socket Sam SPA surfaces */
.loginwrap{background:radial-gradient(circle at 50% 10%,rgba(225,24,36,.12),transparent 34%),var(--ss-bg)!important}
.authcard{box-shadow:0 22px 70px rgba(0,0,0,.34)!important}
.authbrand h1{color:#fff!important}
.authbrand img,.publicbrand img{background:transparent!important}
.publicwrap{color:var(--ss-text)!important}
.publicbrand h1{color:#fff!important}
.publicbrand p{color:var(--ss-muted)!important}

/* Scheduling/calendar structural surfaces. Status-colored job/event cards are intentionally not recolored. */
.shell :is(
  [class*="calendar-grid"],[class*="calendar-head"],[class*="calendar-day"],
  [class*="schedule-grid"],[class*="schedule-head"],[class*="schedule-day"],
  [class*="month-grid"],[class*="month-day"],[class*="week-grid"],[class*="week-day"],
  [class*="time-grid"],[class*="time-gutter"],[class*="time-slot"],
  [class*="unscheduled-tray"],[class*="schedule-toolbar"],[class*="calendar-toolbar"]
){background-color:#101216!important;border-color:#2c3037!important;color:#e5e7eb!important}
.shell :is([class*="time-slot"],[class*="calendar-day"],[class*="schedule-day"],[class*="month-day"],[class*="week-day"]):hover{background-color:#15181d!important}
.shell :is([class*="off-hours"],[class*="closed-day"]){background:#0b0c0f!important;color:#555c66!important}
.shell :is([class*="current-time"],[class*="now-line"]){border-color:var(--ss-red)!important;background:var(--ss-red)!important}

/* Newer module shells commonly use panel/tile/toolbar naming. Theme only neutral container surfaces. */
.shell :is(.panel,.toolbar,.drawer,.tray,.summary,.summary-card,.data-card,.module-card,.inspection-section,.purchasing-card,.vendor-card,.po-card,.inventory-card){background:#111318!important;border-color:#2b2f36!important;color:var(--ss-text)!important}

/* Keep signature pads light so existing black signature ink remains visible. */
.sigcanvas{background:#fff!important;border-color:#565c66!important}

/* Mobile */
.mobile-nav-backdrop,[class*="nav-backdrop"]{background:rgba(0,0,0,.72)!important}
@media(max-width:760px){
  .nav{background:#0d0f12!important;box-shadow:14px 0 36px rgba(0,0,0,.55)!important}
  .main{background:var(--ss-bg)!important}
  .modalfoot{background:#121419!important}
}
