/* ============================================================================
   Fulcrum theme: MODERN  (P5 Task 17, 2026-07-03)
   Same class names / selectors / DOM as themes/classic — VALUES only differ.
   Functional values (display, float, clear, position, z-index, functional
   widget dimensions) are kept identical to classic so behavior cannot drift.
   Palette: graphite surfaces + indigo accent.
     ink #1f2430 · muted #5b6472 · line #d7dbe2 · surface #f4f5f7 · card #ffffff
     accent #3f51b5 · accent-soft #e8eaf6 · ok #2e7d32 · warn #c62828
   ========================================================================== */

body, table, td, input, ul, select {
  font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size:13px;
  color:#1f2430;
}

body { background-color:#f4f5f7; }

#main br {
  clear:both;
}

div.multicheckbox {
    width:20em;
    height:15em;
    border:solid 1px #d7dbe2;
    border-radius:6px;
    overflow:auto;
}

.multicheckbox label {
    display:block;
}

.multicheckbox-on {
    color:#ffffff;
    background-color:#3f51b5;
}

table.fulcrum {
	border-width: 1px;
	border-spacing: 1px;
	border-style: solid;
	border-color: #d7dbe2;
	border-collapse: separate;
	background-color: #ffffff;
	border-radius: 6px;
}
table.fulcrum th {
	border-width: 1px;
	padding: 3px;
	border-style: solid;
	border-color: #d7dbe2;
	background-color: #e8eaf6;
        text-align: center;
        font-family:inherit;
        font-size:10px;
}
table.fulcrum td {
	border-width: 1px;
	padding: 3px;
	border-style: solid;
	border-color: #e3e6ec;
	background-color: #ffffff;
        font-family:inherit;
        font-size:10px;
}

.fulcrumdiv {
  float:left;
  width:400px;
  border:1px solid #d7dbe2;
  border-radius:8px;
  background-color:#ffffff;
  padding:5px;
  margin:2px;
  font-family:inherit;
  font-size:10px;
  overflow:scroll;
}

.fulcruminfo {
  position:absolute;
  border:1px solid #d7dbe2;
  border-radius:6px;
  background-color:#FFFFFF;
  box-shadow:0 2px 8px rgba(31,36,48,.12);
  width:80px;
  height:16px;
  padding:2px;
  z-index:2000;
}
.fulcruminfo img {
  cursor:pointer;
  margin:1px;
}

.fulcrumtab {
  float:left;
  width:12px;
  height:12px;
  border-radius:3px;
  background-color:#c62828;
  margin:1px;
}

.fulcrum_title {
  float:left;
  width:80px;
  font-family:inherit;
  font-size:10px;
  padding:2px;
  margin-bottom:3px;
  margin-right:5px;
  background-color:#e8eaf6;
  border-radius:4px;
  color:#3949ab;
}

.fulcrum_multigroups {
  font-size:14px;
}

.search_main {
  padding:6px;
  font-family:inherit;
  font-size:10px;
}
.radio_main {
  padding:6px;
  font-family:inherit;
  font-size:10px;
}
.search_main input  {
  font-family:inherit;
  font-size:10px;
}

.box_wider {
 width:400px;
}

.box_wide {
  width:350px;
}
.box_med {
  width:250px;
}

.search_main label {
  float:left;
  width:35%;
  color:#5b6472;
}


.search_main div {
  padding:3px;
  border-bottom:1px solid #edf0f4;
}

p {
padding: 0 0 1em;
}

img {
border: 0px;
}

.editor_main label {
  float:left;
  width:35%;
  color:#5b6472;
}
.editor_main {
  padding:6px;
  font-family:inherit;
  font-size:11px;
}
.editor_main div {
  padding:3px;
  border-bottom:1px solid #edf0f4;
}


.radio_main label {
  float:left;
  width:17%;
  color:#5b6472;
}


.radio_main span {
  float:left;
  width:25%;
}


.msg_list {
margin: 0px;
padding: 0px;
width: 383px;
}
.msg_head {
font-size:12px;
font-weight:600;
padding: 5px 10px;
cursor: pointer;
position: relative;
background-color:#3f51b5;
color:#ffffff;
border-radius:4px;
margin:1px;
}
.msg_search {
cursor: pointer;
position: relative;
}
.msg_body {
padding: 5px 10px 15px;
background-color:#f7f8fb;
border:1px solid #e3e6ec;
border-radius:0 0 6px 6px;
}

.divover {
  background-color:#e8eaf6;
}

.classselect {
  vertical-align:middle;
  padding-bottom:25px;
}

.strength0 {
        width:150px;
}

.strength1 {
        width:30px;
        background:#c62828;
}

.strength2 {
        width:60px;
        background:#e57373;
}

.strength3 {
        width:90px;
        background:#66bb6a;
}

.strength4 {
        background:#43a047;
        width:120px;
}

.strength5 {
        background:#2e7d32;
        width:150px;
}

#lightbox{
	background-color:#f4f5f7;
	padding: 10px;
	border-bottom: 2px solid #9aa1ac;
	border-right: 2px solid #9aa1ac;
	}
#lightboxDetails{
	font-size: 0.8em;
	padding-top: 0.4em;
	}
#lightboxCaption{ float: left; }
#keyboardMsg{ float: right; }

#lightbox img{ border: none; }
#overlay img{ border: none; }

/* ============================================================================
   P5 classes (same names as classic; modern values)
   ========================================================================== */

/* ---- shell / header ---- */
.fc-shell { overflow:auto; }
.fc-header { padding:10px 12px; margin-bottom:6px; overflow:auto; background-color:#1f2430; color:#e8eaf0; border-radius:0 0 8px 8px; }
.fc-headitem { font-size:14px; color:#e8eaf0; float:left; }
.fc-header a, .fc-headright a { color:#aebaf5; text-decoration:none; }
.fc-header a:hover, .fc-headright a:hover { color:#c5cdfa; text-decoration:underline; }
/* Header pulldowns (Go To / Utilities): dark controls matching the slate bar.
   Options stay ink-on-white so the opened list is legible in every browser. */
.fc-header select { background-color:#2d3648; color:#e8eaf0; border:1px solid #4a5468; border-radius:5px; padding:2px 6px; }
.fc-header select:hover, .fc-header select:focus { border-color:#7986cb; outline:none; }
.fc-header select option { background-color:#ffffff; color:#1f2430; }
/* Optional instance badge (config $sysconf['instance_label']; replaces the old
   header_color inline background) */
.fc-instance-badge { margin-right:10px; padding:1px 9px; border-radius:10px; background-color:#3f51b5; color:#ffffff; font-size:12px; font-weight:600; line-height:19px; }
.fc-tabs { float:left; margin-left:10px; border:1px solid #3a4152; border-radius:4px; width:120px; height:16px; padding:0px; }
.fc-headright { width:100%; text-align:right; padding:0px; font-size:12px; }
.fc-main { width:0px; border:1px solid #d7dbe2; }
.fc-topnav-body { background-color:#1f2430; color:#e8eaf0; padding:0px; margin:0; }
.fc-wa-connect { display:inline-block; float:right; margin-right:6px; line-height:18px; }
.fulcrumtab-on { background-color:#43a047; }
.fulcrumtab-off { background-color:#9aa1ac; }

/* ---- login page ---- */
.fc-login-body { background:linear-gradient(160deg,#1f2430 0%,#2d3648 60%,#3f51b5 140%); min-height:100vh; margin:0; }
.fc-login-box { width:280px; margin:auto; margin-top:12vh; padding:28px 28px 20px 28px; border:none; border-radius:12px; background:#ffffff; box-shadow:0 18px 50px rgba(15,18,28,.45); }
.fc-login-error { font-size:12px; color:#c62828; }
.fc-login-form { font-size:13px; }
.fc-login-form input[type=text], .fc-login-form input[type=password] { width:95%; padding:7px 8px; border:1px solid #d7dbe2; border-radius:6px; font-size:13px; }
.fc-login-form input[type=submit] { background:#3f51b5; color:#fff; border:none; border-radius:6px; padding:7px 18px; font-weight:600; cursor:pointer; }
.fc-login-form input[type=button] { background:#eef0f4; color:#1f2430; border:1px solid #d7dbe2; border-radius:6px; padding:6px 14px; cursor:pointer; }
.fc-center { text-align:center; }

/* ---- generic utilities (functional: identical to classic) ---- */
.fc-click { cursor:pointer; }
.fc-clear { clear:both; }
.fc-left { float:left; }
.fc-hidden { display:none; }
.fc-block { display:block; }
.fc-noborder { border:none; }
.fc-nobb { border-bottom:0px; }
.fc-border0 { border:0px; }
.fc-bordergrey { border:1px solid #d7dbe2; }
.fc-indent30 { margin-left:30px; }

/* ---- pane chrome ---- */
.fc-panehead { font-size:13px; font-weight:700; padding:0px; letter-spacing:.02em; }
.fc-editid { float:right; font-size:12px; font-weight:600; color:#5b6472; }
.fc-editor-table { border:1px solid #d7dbe2; border-radius:6px; }
.fc-pagenav-wrap { padding:5px; }

/* ---- pagination ---- */
.fc-pagenav { cursor:pointer; background:#eef0f4; border-radius:4px; padding:1px 4px; }
.fc-pagenav-active { cursor:pointer; background:#3f51b5; color:#ffffff; border-radius:4px; padding:1px 4px; }
.fc-pagenav-cur { cursor:pointer; background:#3f51b5; color:#ffffff; border-radius:4px; padding:1px 4px; }

/* ---- selection / row state ---- */
.fc-input-sel { background:#e8eaf6; }
.fc-input-selrow { background:#d6dbf3; }
.fc-input-mfd { border:1px solid #c62828; background:#fde3e3; }
.fc-row-sel { background:#e8eaf6; }
.fc-row-hist { background:#f1f2f5; color:#5b6472; }
.fc-note9 { font-size:9px; }
.fc-sorted { color:#3f51b5; }

/* ---- history menu / functions pane ---- */
.fc-histmenu { background-color:#f7f8fb; border:1px solid #e3e6ec; border-radius:6px; width:400px; margin-bottom:4px; }
.fc-histmenu-head { background-color:#2d3648; padding:4px 6px; font-size:10px; color:#dfe4f5; border-radius:5px 5px 0 0; }

/* ---- alarm / reminder / checkbox buttons ---- */
.fc-alarm-due { background:#c62828; color:#ffffff; }
.fc-alarm-grey { background:#9aa1ac; }
.fc-alarm-off { background:#9aa1ac; }

/* ---- module selector ---- */
.fc-modsel { width:220px; cursor:pointer; }
.fc-modsel-static { float:left; width:220px; }

/* ---- misc engine inputs (functional dims identical) ---- */
.fc-json-indent { padding-left:100px; }
.fc-bitflags { width:140px; border:none; float:left; }
.fc-bitflag-row { }
.fc-strengthbar { border-bottom:0px; height:2px; }
.fulcrum_text_tooltip { border-bottom:0px; display:none; position:absolute; left:auto; top:auto; width:200px; color:#1f2430; background:#fff8d6; border:1px solid #e6d98a; border-radius:4px; z-index:1000; }

/* ---- overlay popups (functional: identical) ---- */
.overlaytable { position:absolute; z-index:2000; }
.overlaytable-hi { z-index:2001; }
.fc-overlay-td { background-color:#f4f5f7; }
.fc-cal-close { width:60px; height:12px; }
.fc-cal-cell { height:auto; }
.fc-appt-add { border:1px solid #c62828; color:#e8a0a0; background-color:#fde3e3; }

/* ---- select-all popup ---- */
.fc-selall { color:#fff; padding:0px; border:1px solid #2d3648; border-radius:6px; background-color:#2d3648; box-shadow:0 4px 14px rgba(15,18,28,.35); }
.fc-selall-item { width:86px; color:#1f2430; padding:3px; background-color:#f4f5f7; cursor:pointer; }
.fc-selall-item.fc-selall-hot { background-color:#e8eaf6; }

/* ---- reports ---- */
.fc-report-teamhead { background-color:#e8eaf6; }

/* ---- properties list thumbnail ---- */
.prop-thumb img { width:92px; height:62px; object-fit:cover; border-radius:6px; }

/* ---- buyer_requirements pipeline / events chips ---- */
.fc-grade-chip { width:14px; height:14px; border-radius:3px; }
.fc-due-dot { width:12px; height:12px; border-radius:50%; margin:auto; }
.evlist-none, .evlist-active, .evlist-done { cursor:pointer; padding:2px 8px; border-radius:10px; font-size:11px; }
.evlist-none { background:#eef0f4; color:#5b6472; }
.evlist-active { white-space:nowrap; }
.evlist-done { background:#e6f4ea; color:#2e7d32; border:1px solid #b5dfc0; }

/* ---- whatsapp module panes ---- */
.wa-msgbox { font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size:13px; line-height:1.6; padding:10px; background:#f7f8fb; border:1px solid #e3e6ec; border-radius:8px; max-height:400px; overflow-y:auto; }
.wa-msgbox-tall { max-height:500px; }
.wa-procbox { font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size:12px; padding:10px; background:#f7f8fb; border:1px solid #e3e6ec; border-radius:8px; max-height:300px; overflow-y:auto; }
.wa-muted { color:#9aa1ac; }
.wa-muted-sm { color:#9aa1ac; font-size:11px; }
.wa-time { font-size:9px; color:#b6bcc6; line-height:1; }
.wa-item { margin-bottom:4px; }
.wa-line { color:#1f2430; line-height:1.4; }
.wa-line-ok { color:#2e7d32; line-height:1.4; }
.wa-line-err { color:#c62828; line-height:1.4; }
.wa-line-ai { color:#8a6d3b; line-height:1.4; }
.wa-line-info { color:#31708f; line-height:1.4; }
.wa-line-seller { color:#a0522d; line-height:1.4; }
.wa-sent { color:#2e7d32; }
.wa-recv { color:#3f51b5; }
.wa-en { color:#5b6472; margin-left:20px; font-style:italic; }
.wa-stats { font-family:inherit; font-size:13px; max-width:700px; }
.wa-stats-h { margin:0 0 10px; color:#1f2430; }
.wa-stats-sub { color:#5b6472; margin:0 0 15px; }
.wa-table { border-collapse:collapse; width:100%; margin-bottom:15px; }
.wa-table-tight { border-collapse:collapse; width:100%; margin-bottom:10px; }
.wa-thead { background:#2d3648; color:#fff; }
.wa-th-l { padding:6px 10px; text-align:left; }
.wa-cell { padding:4px 10px; }
.wa-cell-r { padding:4px 10px; text-align:right; font-weight:600; }
.wa-th { padding:6px 8px; text-align:right; }
.wa-th-first { padding:6px 8px; text-align:left; }
.wa-td { padding:4px 8px; text-align:right; }
.wa-td-first { padding:4px 8px; font-weight:600; }
.wa-row { background:#ffffff; }
.wa-row-alt { background:#f4f5f7; }
.wa-fail { color:#c62828; }

/* ============================================================================
   Restrained jQuery-UI overrides (same jquery-ui.css is loaded for both
   themes; these tune it to the modern palette without touching behavior).
   ========================================================================== */
.ui-widget { font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
.ui-widget-header { background:#2d3648; color:#e8eaf0; border-color:#2d3648; }
.ui-widget-content { border-color:#d7dbe2; color:#1f2430; }
.ui-state-default, .ui-widget-content .ui-state-default { background:#eef0f4; border-color:#d7dbe2; color:#1f2430; }
.ui-state-hover, .ui-widget-content .ui-state-hover { background:#e8eaf6; border-color:#c3cbf0; color:#1f2430; }
.ui-state-active, .ui-widget-content .ui-state-active { background:#3f51b5; border-color:#3f51b5; color:#ffffff; }
.ui-dialog { border-radius:10px; box-shadow:0 18px 50px rgba(15,18,28,.35); }
.ui-corner-all { border-radius:6px; }
