/* FrameCalc-style skin for separate FEM apps */
:root{
  --fc-blue:#1a6fc4;
  --fc-blue-dark:#155aa0;
  --fc-bg:#eef0f2;
  --fc-bar:#d7d7d7;
  --fc-tab:#dcdcdc;
  --fc-line:#aaa;
  --fc-grid:#d0d8e0;
  --fc-ink:#111;
  --fc-muted:#555;
  --fc-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  --fc-mono:ui-monospace,Menlo,Consolas,monospace;
  --bg:var(--fc-bg); --panel:#fff; --ink:var(--fc-ink); --muted:#555; --line:var(--fc-line); --accent:var(--fc-blue); --accent-soft:#e7f1fd;
}
html,body{font-family:var(--fc-font)!important;font-size:12px!important;background:var(--fc-bg)!important;color:var(--fc-ink)!important;}
.app{background:var(--fc-bg)!important;}
header{height:31px!important;min-height:31px!important;background:linear-gradient(#eeeeee,#d9d9d9)!important;color:#111!important;border-bottom:1px solid #999!important;padding:2px 5px!important;gap:6px!important;box-shadow:none!important;}
header .brand{font-size:12px!important;font-weight:700!important;letter-spacing:0!important;color:#111!important;min-width:0!important;white-space:nowrap!important;}
header .brand span{color:#333!important;font-size:11px!important;font-weight:600!important;}
header button, header select, .tab-pane button, .toolbar button, .file-actions button, .snap-toggles button,
button, select, input[type=button]{height:24px!important;min-height:24px!important;border:1px solid #9fa7b0!important;border-radius:2px!important;background:#f7f7f7!important;color:#111!important;padding:2px 8px!important;font-family:var(--fc-font)!important;font-size:12px!important;font-weight:400!important;box-shadow:none!important;}
header button:hover:not(:disabled), button:hover:not(:disabled){background:#fff!important;border-color:#777!important;}
header button.active, button.active, .snap-toggles button.active{background:var(--fc-blue)!important;border-color:var(--fc-blue-dark)!important;color:#fff!important;}
#btn-save, #btn-run-analysis, .primary{background:var(--fc-blue)!important;border-color:var(--fc-blue-dark)!important;color:#fff!important;font-weight:700!important;}
#btn-send-femcalc{display:none!important;}
.snap-toggles,.file-actions{gap:4px!important;}
.toolname{color:#333!important;font-size:12px!important;}
.tabs-strip{height:28px!important;background:#dcdcdc!important;border-bottom:1px solid #aaa!important;padding:0!important;display:flex!important;align-items:stretch!important;}
.tabs-strip button{height:28px!important;background:#dcdcdc!important;border:0!important;border-right:1px solid #b7b7b7!important;border-bottom:2px solid transparent!important;border-radius:0!important;color:#333!important;padding:5px 14px!important;font-weight:500!important;}
.tabs-strip button:hover{background:#e8e8e8!important;color:#111!important;}
.tabs-strip button.active{background:#fff!important;color:#000!important;border-bottom-color:var(--fc-blue)!important;font-weight:600!important;}
aside{background:#f3f4f5!important;border-right:1px solid #b7b7b7!important;}
.tab-pane .section{padding:7px 8px!important;border-bottom:1px solid #d2d6dc!important;background:#f7f8f9!important;}
.tab-pane .section h3{font-size:11px!important;color:#222!important;font-weight:700!important;letter-spacing:.4px!important;text-transform:uppercase!important;margin-bottom:6px!important;}
input[type=text],input[type=number],select{border:1px solid #bfc7d1!important;border-radius:2px!important;background:#fff!important;color:#111!important;height:24px!important;padding:2px 5px!important;font-family:var(--fc-font)!important;font-size:12px!important;}
input:focus,select:focus{outline:2px solid var(--fc-blue)!important;outline-offset:-2px!important;background:#fffde7!important;}
.vtable,.fc-table{border-collapse:collapse!important;width:100%!important;table-layout:fixed!important;font-family:var(--fc-mono)!important;font-size:11px!important;background:#fff!important;}
.vtable th,.fc-table th{background:var(--fc-grid)!important;border:1px solid #aab!important;color:#222!important;text-align:center!important;font-weight:700!important;font-size:11px!important;padding:3px 5px!important;position:sticky!important;top:0!important;z-index:2!important;}
.vtable td,.fc-table td{border:1px solid #ddd!important;background:#fff!important;height:22px!important;padding:0!important;text-align:center!important;}
.fc-table input,.fc-table select{border:0!important;width:100%!important;height:100%!important;background:transparent!important;font-family:var(--fc-mono)!important;font-size:11px!important;text-align:center!important;padding:2px 4px!important;}
.fc-table .note-cell input{text-align:left!important;}
.statusbar,#status{background:#d7d7d7!important;color:#111!important;border-top:1px solid #aaa!important;font-family:var(--fc-font)!important;}
.poly{border:1px solid #d0d6df!important;background:#fff!important;border-radius:2px!important;margin:3px 0!important;}
.poly:hover{background:#f0f7ff!important;}
.hud{font-family:var(--fc-font)!important;}
.hot{color:inherit!important;opacity:.75!important;}


/* v47.1 title and toolbar ordering patch */
.app-title,
.brand-wrap .app-title,
header .app-title{
  font-family:var(--fc-font)!important;
  font-size:12px!important;
  line-height:24px!important;
  font-weight:800!important;
  letter-spacing:0!important;
  color:#111!important;
  white-space:nowrap!important;
  flex:0 0 auto!important;
}
.brand-wrap{min-width:auto!important;flex:0 0 auto!important;padding-right:5px!important;border-right:0!important;}
.brand-sub{font-size:12px!important;font-weight:800!important;color:#111!important;line-height:24px!important;margin:0!important;}
header .brand{font-size:12px!important;font-weight:800!important;line-height:24px!important;color:#111!important;}
header{overflow:hidden!important;}
header .file-actions{margin-left:0!important;display:flex!important;align-items:center!important;gap:4px!important;flex:0 0 auto!important;}
header .file-actions-right{margin-left:auto!important;}
header .toolname{margin-left:0!important;border-left:0!important;padding:0 6px!important;line-height:24px!important;}
header .snap-toggles{margin-left:0!important;border-left:0!important;border-right:0!important;padding:0!important;display:flex!important;align-items:center!important;gap:4px!important;}
header .header-sep,.menubar .sep{width:1px!important;height:20px!important;background:#aaa!important;margin:0 4px!important;flex:0 0 auto!important;}
.menu-controls{align-items:center!important;}
