@import url('/assets/fonts/signal-fonts.css');
/* Jones IT website-inspired Signal presentation. Screen-only colors keep report printing unchanged. */
@media screen {
  :root { color-scheme: dark; --signal-bg:#101112; --signal-panel:#18232b; --signal-raised:#1d2d37; --signal-line:#31414b; --signal-text:#f1f4f6; --signal-muted:#a9b7c1; --signal-blue:#65b3e2; --signal-action:#287fac; }
  body { background:var(--signal-bg); color:var(--signal-text); font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
  body main { max-width:1400px; padding:0 32px; margin:24px auto 64px; box-sizing:border-box; }
  body main:has(.gauge-grid) { max-width:1800px; padding:0 28px; margin:18px auto 40px; }
  body h1 { font-weight:550; letter-spacing:-.045em; }
  body h2 { font-weight:600; }
  body a, body .work-table summary, body .trend-data summary { color:var(--signal-blue); }
  body small, body .muted, body .other, body .period, body .report-title, body .trend-label, body .trend-value, body .gauge-period, body #capacity-settings small { color:var(--signal-muted); }
  body .eyebrow { color:var(--signal-blue); letter-spacing:.15em; font-size:10px; }
  body input, body select { background:#111b22; color:var(--signal-text); border-color:var(--signal-line); border-radius:7px; }
  body input[type=checkbox], body input[type=radio] { accent-color:var(--signal-blue); }
  body button, body .button { background:var(--signal-action); color:white; border:1px solid #3891bd; border-radius:7px; font-weight:650; }
  body button:hover, body .button:hover { background:#3493c0; }
  body button:disabled { opacity:.5; cursor:not-allowed; }
  body .secondary, body .period-shortcuts a { color:var(--signal-muted); background:#19242c; border:1px solid var(--signal-line); }
  body .secondary:hover, body .period-shortcuts a:hover { color:white; background:#253a47; }
  body :is(input,select,button,a,summary):focus-visible { outline:2px solid #8dcfff; outline-offset:3px; }
  body .app-header { background:transparent; border:0; border-bottom:1px solid #303439; padding:8px 0 18px; border-radius:0; box-shadow:none; gap:16px; margin-bottom:28px; align-items:center; }
  body .app-header nav { padding-top:0; gap:8px; }
  body .app-header .nav-group summary { color:var(--signal-muted); background:transparent; }
  body .app-header .nav-group.selected summary, body .app-header .nav-group[open] summary { background:#203441; color:#9bd6f8; }
  body .app-header .nav-menu { background:#19252e; border:1px solid #3c4e5b; box-shadow:0 16px 32px #0008; }
  body .app-header .nav-menu a { color:var(--signal-text); }
  body .app-header .nav-menu a:hover, body .app-header .nav-menu a[aria-current] { background:#254354; color:#a4d9fa; }
  body .app-header .nav-current { color:var(--signal-muted); }
  body .signal-brand { display:flex; align-items:center; gap:16px; text-decoration:none; color:white; }
  body .signal-brand img { width:76px; height:76px; object-fit:cover; border-radius:13px; border:1px solid #2b3e4c; }
  body .signal-brand strong { display:block; font-size:29px; font-weight:650; letter-spacing:-.05em; color:white; }
  body .signal-brand small { display:block; margin-top:3px; font-size:11px; color:var(--signal-muted); }
  body .signal-brand-divider { height:28px; width:1px; background:#455059; }
  body .signal-brand-by { font-size:12px; color:var(--signal-muted); }
  body .dashboard-heading { margin:24px 0 20px; }
  body .dashboard-heading h1 { font-size:32px; margin-top:7px; }
  body .dashboard-heading button { padding:9px 13px; font-size:12px; }
  body .session-control { color:var(--signal-muted); margin:0 0 12px; }
  body .session-control button { background:transparent; border-color:var(--signal-line); color:var(--signal-muted); }
  body .range-form { gap:12px; }
  body .range-form label { color:var(--signal-muted); font-size:12px; }
  body .range-form input { padding:9px 12px; }
  body .period-shortcuts { gap:7px; }
  body .coverage, body .print-help { color:var(--signal-muted); background:#17232c; border:1px solid #2c414e; padding:12px 14px; border-radius:8px; }
  body .warn { color:#f2d391; background:#30281b; border-color:#a88745; }
  body .panel, body .card, body .metric-card, body .areas, body .team-tile { background:var(--signal-panel); border:1px solid var(--signal-line); border-radius:12px; box-shadow:0 8px 24px #0001; color:var(--signal-text); }
  body .metric-card { border-top:2px solid #448db5; }
  body .metric-card span { color:var(--signal-muted); }
  body .metric-card strong { color:white; }
  body .gauge { background:var(--signal-panel); border:1px solid var(--signal-line); border-radius:11px; box-shadow:0 5px 20px #0002; }
  body .gauge-heading { background:transparent; color:var(--signal-muted); border-bottom:1px solid #2d3c46; padding:11px 15px; }
  body .gauge-heading h2 { font-size:12px; font-weight:550; }
  body .gauge-number { color:white; font-size:37px; font-weight:550; letter-spacing:-.045em; }
  body .gauge .panel { background:transparent; border:0; box-shadow:none; }
  body .gauge-body { scrollbar-color:#486071 #18232b; }
  body .gauge .gauge-period { color:var(--signal-muted); }
  body table { background:var(--signal-panel); color:var(--signal-text); }
  body th { background:#1f303b; color:#aebfca; font-weight:600; }
  body th, body td { border-bottom-color:#2e3e48; }
  body tbody tr:hover { background:#20313c; }
  body .leaderboard { box-shadow:none; }
  body .leaderboard li, body .leaderboard li:first-child, body .leaderboard li:nth-child(2), body .leaderboard li:nth-child(3) { background:var(--signal-panel); border-bottom-color:#30414b; }
  body .leaderboard li:hover { background:#20313c; }
  body .rank { color:var(--signal-blue); }
  body .avatar { background:#29404e; color:#a3cbe2; }
  body .bar-track, body .trend-track, body .client-bar>div { background:#263844; }
  body .bar-track span, body .trend-track span, body .client-bar>div>span { background:#529fc8; }
  body .card-controls { background:#213340; color:var(--signal-muted); }
  body .card-controls button, body .drag-handle { background:#284453; color:#b7dff5; }
  body .resize-handle { background:#294859; color:#b7dff5; }
  body #layout-status { color:#96cdec; }
  body .team-tabs a { background:#182832; border-color:var(--signal-line); color:var(--signal-muted); }
  body .team-tabs a[aria-current=page] { background:#285571; color:white; }
  body .team-tile strong { color:var(--signal-blue); }
  body .team-tile:hover { border-color:var(--signal-blue); }
  body .tag { background:#254151; color:#b0d9ee; }
  body .signal-signin { display:grid; grid-template-columns:minmax(250px,440px) minmax(250px,480px); align-items:center; gap:64px; max-width:1040px; min-height:75vh; margin:0 auto; }
  body .signal-signin-art { width:100%; border-radius:18px; border:1px solid #293d4b; }
  body .signal-signin h1 { font-size:42px; margin-top:12px; }
  body .signal-signin p { color:var(--signal-muted); }
  body .signal-signin .panel { padding:24px; }
  @media(max-width:700px) {
    body main, body main:has(.gauge-grid) { padding:0 14px; margin:14px auto 40px; }
    body .signal-brand img { width:58px; height:58px; }
    body .signal-brand strong { font-size:25px; }
    body .signal-brand { gap:12px; }
    body .app-header .nav-current { display:none; }
    body .dashboard-heading h1 { font-size:28px; }
    body .dashboard-heading>div:last-child { display:flex; gap:8px; flex-wrap:wrap; }
    body .two-col { grid-template-columns:minmax(0,1fr); }
    body .signal-signin { grid-template-columns:1fr; gap:24px; min-height:0; margin:32px auto; max-width:480px; }
    body .signal-signin-art { max-width:240px; justify-self:center; }
    body .signal-signin h1 { font-size:32px; }
    body .session-control { flex-wrap:wrap; }
  }
}
@media screen {
  body .trend-column { min-width:0; }
  body .trend-value { overflow-wrap:anywhere; min-height:26px; display:flex; align-items:end; justify-content:center; font-size:10px; }
}
@media print {
  body { background:white; color:#111; }
  .signal-brand, .signal-signin-art { display:none; }
}
@media screen {
  body .signal-brand { gap:10px; }
  body .signal-brand img { width:44px; height:44px; object-fit:contain; border:0; border-radius:0; background:transparent; }
  body .signal-brand strong { font-size:25px; }
  body .signal-brand small { font-size:10px; }
  body .signal-brand-divider { height:24px; margin:0 3px; }
  body .signal-signin-art { width:100%; max-width:300px; justify-self:center; border:0; border-radius:0; background:transparent; }
  body .signal-appearance { display:flex; justify-content:flex-end; align-items:center; gap:8px; margin:0 0 12px; color:var(--signal-muted); font-size:11px; }
  body .signal-appearance .theme-options { display:flex; border:1px solid var(--signal-line); padding:3px; border-radius:8px; gap:3px; }
  body .signal-appearance button { background:transparent; border:0; color:var(--signal-muted); padding:6px 11px; font-size:11px; }
  body .signal-appearance button[aria-pressed=true] { background:#2b536a; color:#eaf6ff; }
  :root[data-theme=light] { color-scheme:light; --signal-bg:#f6f8fa; --signal-panel:#fff; --signal-raised:#edf3f7; --signal-line:#d7e1e8; --signal-text:#182d3c; --signal-muted:#546b7b; --signal-blue:#166c9f; --signal-action:#237ea9; }
  :root[data-theme=light] body input, :root[data-theme=light] body select { background:white; }
  :root[data-theme=light] body .secondary, :root[data-theme=light] body .period-shortcuts a { background:white; }
  :root[data-theme=light] body .secondary:hover, :root[data-theme=light] body .period-shortcuts a:hover { background:#e8f1f7; color:#165f8a; }
  :root[data-theme=light] body .app-header { border-bottom-color:var(--signal-line); }
  :root[data-theme=light] body .signal-brand, :root[data-theme=light] body .signal-brand strong,
  :root[data-theme=light] body .metric-card strong, :root[data-theme=light] body .gauge-number { color:var(--signal-text); }
  :root[data-theme=light] body .signal-brand-divider { background:#c8d5de; }
  :root[data-theme=light] body .app-header .nav-group.selected summary, :root[data-theme=light] body .app-header .nav-group[open] summary { background:#e1eff8; color:#16658e; }
  :root[data-theme=light] body .app-header .nav-menu { background:white; border-color:var(--signal-line); box-shadow:0 12px 28px #18374b20; }
  :root[data-theme=light] body .app-header .nav-menu a:hover, :root[data-theme=light] body .app-header .nav-menu a[aria-current] { background:#e6f2fa; color:#165f8a; }
  :root[data-theme=light] body .coverage, :root[data-theme=light] body .print-help { background:#edf4f8; border-color:#d2e3ed; }
  :root[data-theme=light] body .warn { background:#fff6df; color:#735719; border-color:#bc9344; }
  :root[data-theme=light] body .gauge-heading { border-bottom-color:#e0e8ed; }
  :root[data-theme=light] body .gauge { box-shadow:0 4px 16px #183b5010; }
  :root[data-theme=light] body .gauge-body { scrollbar-color:#b4c6d2 white; }
  :root[data-theme=light] body th { background:#edf3f7; color:#4d6576; }
  :root[data-theme=light] body th, :root[data-theme=light] body td { border-bottom-color:#e1e9ef; }
  :root[data-theme=light] body tbody tr:hover, :root[data-theme=light] body .leaderboard li:hover { background:#f1f7fb; }
  :root[data-theme=light] body .leaderboard li { border-bottom-color:#e1e9ef; }
  :root[data-theme=light] body .avatar { background:#e0edf5; color:#24698e; }
  :root[data-theme=light] body .bar-track, :root[data-theme=light] body .trend-track, :root[data-theme=light] body .client-bar>div { background:#e6eff5; }
  :root[data-theme=light] body .bar-track span, :root[data-theme=light] body .trend-track span, :root[data-theme=light] body .client-bar>div>span { background:#358fbf; }
  :root[data-theme=light] body .card-controls { background:#edf3f7; }
  :root[data-theme=light] body .card-controls button, :root[data-theme=light] body .drag-handle, :root[data-theme=light] body .resize-handle { background:#dcecf6; color:#215d80; }
  :root[data-theme=light] body #layout-status { color:#246c92; }
  :root[data-theme=light] body .team-tabs a { background:white; }
  :root[data-theme=light] body .team-tabs a[aria-current=page] { background:#237ea9; color:white; }
  :root[data-theme=light] body .tag { background:#e3f0f8; color:#24698e; }
  :root[data-theme=light] body .signal-appearance button[aria-pressed=true] { background:#e1eff8; color:#165f8a; }
}
@media print { .signal-appearance { display:none; } }
/* itjones.com design pass: Poppins / Figtree, blue light, soft cards, pill actions. */
@media screen {
  :root { --signal-bg:#111; --signal-panel:#15232c; --signal-raised:#203440; --signal-line:#2b3c46; --signal-text:#f8fbfd; --signal-muted:#beced8; --signal-blue:#74bce7; --signal-action:#287fae; }
  body { font-family:Figtree,ui-sans-serif,system-ui,sans-serif; background-color:var(--signal-bg); background-image:radial-gradient(ellipse at 80% 0%,#12516c35,transparent 54%),radial-gradient(ellipse at 15% 20%,#287fae0c,transparent 55%); }
  body h1, body h2, body h3, body h4, body button, body .button, body .signal-brand strong { font-family:Poppins,ui-sans-serif,system-ui,sans-serif; }
  body h1 { font-weight:600; letter-spacing:-.04em; }
  body main:has(.gauge-grid) { max-width:1560px; padding:0 36px; margin:22px auto 48px; }
  body .app-header { border-bottom-color:#ffffff16; padding:10px 0 24px; margin-bottom:28px; }
  body .app-header nav { flex:1; width:auto; justify-content:flex-end; gap:12px; }
  body .app-header .nav-current { display:none; }
  body .app-header .nav-group summary { font-weight:500; padding:10px 15px; border-radius:50px; font-size:14px; }
  body .app-header .nav-group.selected summary, body .app-header .nav-group[open] summary { background:#287fae25; color:#b5e0f8; }
  body .app-header .nav-menu { border-radius:16px; padding:8px; }
  body .app-header .nav-menu a { border-radius:9px; }
  body .signal-brand strong { font-size:24px; font-weight:600; }
  body .signal-brand small { letter-spacing:.02em; }
  body button, body .button { border-radius:50px; padding:11px 19px; background:linear-gradient(180deg,#287fae,#4f9fcc); border:1px solid #72afd1; font-weight:600; font-size:12px; }
  body button:hover, body .button:hover { background:linear-gradient(180deg,#348dbb,#63b1df); }
  body .secondary, body .period-shortcuts a { background:#ffffff05; border-color:#ffffff1c; color:var(--signal-muted); }
  body .secondary:hover, body .period-shortcuts a:hover { background:#287fae1a; color:white; border-color:#287fae80; }
  body .session-control button, body .signal-appearance button { background:transparent; }
  body .dashboard-heading { padding:25px 28px; border:1px solid #ffffff12; border-radius:24px; background:radial-gradient(ellipse at 90% 20%,#287fae24,transparent 70%),linear-gradient(110deg,#15232c,#111b22); margin:22px 0; box-shadow:inset 0 1px 1px #c7d3ea14; }
  body .dashboard-heading h1 { font-size:34px; line-height:1.2; margin:7px 0 0; }
  body .dashboard-heading .eyebrow { font-family:Figtree,sans-serif; font-size:10px; font-weight:600; letter-spacing:.13em; }
  body .dashboard-heading button { padding:10px 16px; }
  body .gauge-grid { gap:14px; }
  body .gauge, body .panel, body .card, body .metric-card, body .areas, body .team-tile { border-radius:22px; border-color:#ffffff10; background:linear-gradient(145deg,#ffffff05,transparent 68%),var(--signal-panel); box-shadow:inset 0 22px 40px #c7d3ea06,inset 0 1px 1px #c7d3ea16,0 5px 20px #0001; }
  body .gauge-heading { padding:11px 17px; border-bottom-color:#ffffff10; }
  body .gauge-heading h2 { font-family:Figtree,sans-serif; font-size:13px; font-weight:500; }
  body .gauge-body { padding:10px 17px; }
  body .gauge-number { font-family:Figtree,sans-serif; font-size:38px; font-weight:600; }
  body .gauge .panel { border:0; background:transparent; box-shadow:none; }
  body .coverage, body .print-help { border-radius:13px; background:#287fae10; border-color:#287fae24; }
  body .period-shortcuts a { font-size:12px; padding:7px 13px; }
  body .range-form input { border-radius:10px; }
  body .signal-appearance .theme-options { border-radius:50px; }
  body .signal-appearance button { border-radius:50px; padding:6px 13px; font-size:10px; }
  body .signal-appearance button[aria-pressed=true] { background:#287fae40; }
  body .signal-signin { gap:72px; }
  body .signal-signin h1 { font-size:40px; }
  body .card-controls button, body .drag-handle, body .resize-handle { border-radius:5px; padding:2px 6px; font-size:15px; background:#284453; border:0; }
  :root[data-theme=light] { --signal-bg:#f7fafc; --signal-panel:#fff; --signal-raised:#eaf3f9; --signal-line:#d6e4ed; --signal-text:#031118; --signal-muted:#526a79; --signal-blue:#206f99; --signal-action:#287fae; }
  :root[data-theme=light] body { background-image:radial-gradient(ellipse at 80% 0%,#d4e5efbb,transparent 54%); }
  :root[data-theme=light] body .dashboard-heading { background:radial-gradient(ellipse at 90% 10%,#c5e2f2,transparent 70%),linear-gradient(110deg,#edf5fa,#f9fcfe); border-color:#d4e5ef; box-shadow:inset 0 1px 1px #fff; }
  :root[data-theme=light] body .gauge, :root[data-theme=light] body .panel, :root[data-theme=light] body .card, :root[data-theme=light] body .metric-card, :root[data-theme=light] body .areas, :root[data-theme=light] body .team-tile { background:white; border-color:#dce7ee; box-shadow:0 4px 18px #1e5f8309,inset 0 1px 1px white; }
  :root[data-theme=light] body .gauge .panel { box-shadow:none; border:0; background:transparent; }
  :root[data-theme=light] body .app-header { border-bottom-color:#d4e5ef; }
  :root[data-theme=light] body .app-header .nav-group.selected summary, :root[data-theme=light] body .app-header .nav-group[open] summary { color:#1e5f83; background:#d4e5ef; }
  :root[data-theme=light] body .secondary, :root[data-theme=light] body .period-shortcuts a { background:#ffffffa0; border-color:#c9dce8; color:#1e5f83; }
  :root[data-theme=light] body .secondary:hover, :root[data-theme=light] body .period-shortcuts a:hover { background:#e3f1f9; color:#164967; }
  :root[data-theme=light] body .gauge-heading { border-bottom-color:#e2edf3; }
  :root[data-theme=light] body .coverage, :root[data-theme=light] body .print-help { background:#eaf3f9; border-color:#d4e5ef; }
  :root[data-theme=light] body .signal-appearance button { background:transparent; }
  :root[data-theme=light] body .signal-appearance button[aria-pressed=true] { background:#d4e5ef; color:#1e5f83; }
  @media(max-width:1000px) { body .app-header nav { width:100%; flex:auto; justify-content:flex-start; gap:5px; } }
  @media(max-width:700px) {
    body main:has(.gauge-grid) { padding:0 14px; margin:14px auto 40px; }
    body .app-header { padding-bottom:18px; }
    body .app-header .nav-group summary { font-size:12px; padding:9px 11px; }
    body .dashboard-heading { padding:20px; border-radius:20px; gap:18px; }
    body .dashboard-heading h1 { font-size:26px; }
    body .dashboard-heading button { padding:9px 12px; font-size:10px; }
    body .gauge-grid { gap:14px; }
    body .signal-signin { gap:28px; }
    body .signal-signin h1 { font-size:31px; }
  }
}
@media screen {
  /* Tuck the light fixture beneath the final letter; projection sits beside it. */
  body .signal-brand img { margin-left:-18px; }
}
@media screen {
  body .signal-brand small { font-size:9px; letter-spacing:0; }
}
@media screen {
  body .signal-wordmark-line { display:flex; align-items:center; }
  body .signal-brand .signal-wordmark-line img { width:36px; height:56px; margin-left:-9px; transform:translateY(-1px); flex:none; }
  body .signal-wordmark>small { margin-top:-3px; }
}
