.sf-boot-pending body{background:var(--bg,#f4f7f6)}
.sf-boot-pending #app{visibility:hidden}
.sf-welcome small,.sf-welcome b,.sf-welcome em{display:block}.sf-welcome em{margin-top:5px;color:#428060;font-size:10px;font-style:normal}
.sf-switchboard{align-items:stretch}
.sf-switch-group{position:relative}
.sf-switch-group::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--panel-accent,#287b5c)}
.sf-switch-group[data-group-index="0"]{--panel-accent:#2f80c9;--panel-soft:#e6f2fc}
.sf-switch-group[data-group-index="1"]{--panel-accent:#7b61c9;--panel-soft:#eeeafd}
.sf-switch-group[data-group-index="2"]{--panel-accent:#31a267;--panel-soft:#e4f6eb}
.sf-switch-group[data-group-index="3"]{--panel-accent:#db8a27;--panel-soft:#fff0dd}
.sf-switch-group[data-group-index="4"]{--panel-accent:#68717d;--panel-soft:#eceff2}
.sf-switch-group[data-group-index="5"]{--panel-accent:#68717d;--panel-soft:#eceff2}
.sf-switch-group h2{color:var(--panel-accent,#287b5c);border-bottom-color:color-mix(in srgb,var(--panel-accent,#287b5c) 25%,#e6ece9)}
.sf-switch-icon{background:var(--panel-soft,#e7f3ed);color:var(--panel-accent,#287b5c);font-family:"Segoe UI Emoji","Segoe UI Symbol",sans-serif;font-size:19px;font-weight:400}
.sf-switch-copy{min-width:0}.sf-switch-copy b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sf-live{display:inline-flex!important;align-items:center;width:max-content;max-width:100%;margin-top:5px!important;padding:3px 7px;border-radius:999px;font-size:9px!important;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sf-live.good{background:#e2f3e8;color:#217348}.sf-live.warn{background:#fff0dc;color:#a25b0a}.sf-live.neutral{background:#eef1f3;color:#67717b}
.sf-switch-tile:hover .sf-switch-icon{transform:scale(1.04)}

/* Five purposeful columns on wide corporate displays. */
.shell.sf-workspace-only>.main>header{grid-template-columns:minmax(0,1fr) auto auto}
@media(min-width:1350px){
 .sf-switchboard{grid-template-columns:.8fr 1.1fr 1.1fr 1fr 1.35fr}
 .sf-switch-group:nth-child(n){border-top:0}
 .sf-switch-group:not(:first-child){border-left:1px solid #dce5e0}
 .sf-switch-group{padding:16px 12px}
 .sf-switch-tile{grid-template-columns:34px minmax(0,1fr) 12px;gap:7px;padding:8px 6px}
 .sf-switch-icon{width:34px;height:34px;font-size:17px}
 .sf-switch-copy b{font-size:11px}
}
@media(min-width:1001px) and (max-width:1349px){
 .sf-switchboard{grid-template-columns:repeat(3,minmax(0,1fr))}
}
.sf-switch-subgroup+ .sf-switch-subgroup{margin-top:18px;padding-top:16px;border-top:1px solid #e3e9e6}
.sf-switch-subgroup h3{margin:0 0 8px;color:#64716b;font-size:10px;letter-spacing:.8px;text-transform:uppercase}
.sf-welcome-person{padding:13px;border-radius:10px;background:var(--panel-soft,#e6f2fc)}
.sf-welcome-person small,.sf-welcome-person b,.sf-welcome-person em{display:block}.sf-welcome-person small{font-size:8px;letter-spacing:1px}.sf-welcome-person b{margin-top:6px;font-size:11px;overflow-wrap:anywhere}.sf-welcome-person em{margin-top:6px;color:#567068;font-size:9px;font-style:normal}
.sf-welcome-stats{display:grid;gap:8px;margin-top:12px}.sf-welcome-stats div{padding:10px;border:1px solid #e0e7e3;border-radius:9px;background:#fff}.sf-welcome-stats b,.sf-welcome-stats span{display:block}.sf-welcome-stats b{font:700 19px Georgia}.sf-welcome-stats span{margin-top:3px;color:#6b7772;font-size:9px}.sf-welcome-stats .warn{border-color:#efc891;background:#fff8ec}.sf-welcome-stats .warn b{color:#a25b0a}

/* Preserve each original department as its own colored panel while stacking columns. */
.sf-switchboard{align-items:start;gap:12px;border:0;background:transparent;overflow:visible;box-shadow:none}
.sf-switch-stack{display:grid;gap:12px;align-content:start}
.sf-switchboard .sf-switch-group{min-height:0;border:1px solid #dce5e0!important;border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 4px 14px rgba(21,57,45,.05)}
.sf-switch-group[data-group-key="welcome"]{--panel-accent:#237d78;--panel-soft:#e1f2f0}
.sf-switch-group[data-group-key="overview"]{--panel-accent:#2f80c9;--panel-soft:#e6f2fc}
.sf-switch-group[data-group-key="development"]{--panel-accent:#7b61c9;--panel-soft:#eeeafd}
.sf-switch-group[data-group-key="production"]{--panel-accent:#31a267;--panel-soft:#e4f6eb}
.sf-switch-group[data-group-key="costing"]{--panel-accent:#db8a27;--panel-soft:#fff0dd}
.sf-switch-group[data-group-key="logistics"]{--panel-accent:#d45b50;--panel-soft:#fde9e7}
.sf-switch-group[data-group-key="administration"]{--panel-accent:#68717d;--panel-soft:#eceff2}
.sf-welcome-stats a{position:relative;display:block;padding:10px 25px 10px 10px;border:1px solid #e0e7e3;border-radius:9px;background:#fff;color:inherit;text-decoration:none}
.sf-welcome-stats a:hover,.sf-welcome-stats a:focus-visible{border-color:var(--panel-accent);background:var(--panel-soft);outline:none}
.sf-welcome-stats a b,.sf-welcome-stats a span{display:block}.sf-welcome-stats a b{font:700 19px Georgia}.sf-welcome-stats a span{margin-top:3px;color:#6b7772;font-size:9px}.sf-welcome-stats a em{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--panel-accent);font-style:normal}.sf-welcome-stats a.warn{border-color:#efc891;background:#fff8ec}.sf-welcome-stats a.warn b{color:#a25b0a}

.sf-layout-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.sf-layout-actions button{padding:8px 11px;font-size:10px}.sf-layout-note{margin:-12px 0 16px;padding:10px 13px;border:1px solid #9fc9be;border-radius:9px;background:#edf8f5;color:#285f52;font-size:11px}
.sf-drag-handle{display:none;float:right;color:var(--panel-accent);font-style:normal;letter-spacing:-3px;cursor:grab}.sf-layout-editing .sf-drag-handle{display:inline}.sf-layout-editing .sf-switch-slot{min-height:110px;border:2px dashed #bfd0c8;border-radius:12px;padding:6px;background:rgba(255,255,255,.45)}.sf-layout-editing [data-layout-key]{cursor:grab;user-select:none}.sf-layout-editing [data-layout-key]:active{cursor:grabbing}.sf-layout-editing [data-layout-key].sf-dragging{opacity:.45;box-shadow:0 8px 24px rgba(21,57,45,.18)}.sf-layout-editing [data-layout-key] .sf-switch-tile{pointer-events:none}

/* Switchboard operational text standard: 10px. Keep the page title and KPI totals prominent. */
.sf-on-switchboard .sf-switchboard,
.sf-on-switchboard .sf-switch-group h2,
.sf-on-switchboard .sf-switch-subgroup h3,
.sf-on-switchboard .sf-switch-tile b,
.sf-on-switchboard .sf-switch-tile small,
.sf-on-switchboard .sf-live,
.sf-on-switchboard .sf-welcome-person small,
.sf-on-switchboard .sf-welcome-person b,
.sf-on-switchboard .sf-welcome-person em,
.sf-on-switchboard .sf-welcome-stats span,
.sf-on-switchboard .sf-welcome-stats a span,
.sf-on-switchboard .sf-layout-actions button,
.sf-on-switchboard .sf-layout-note{font-size:10px!important}

/* Switchboard panels follow the user's Appearance primary color. */
.sf-on-switchboard .sf-switch-group{
 --panel-accent:var(--green,#164b3b)!important;
 --panel-soft:color-mix(in srgb,var(--green,#164b3b) 10%,#fff)!important
}
.sf-on-switchboard .sf-switch-tile{
 background:color-mix(in srgb,var(--green,#164b3b) 3%,#fff)
}
.sf-on-switchboard .sf-switch-tile:hover,
.sf-on-switchboard .sf-switch-tile:focus-visible{
 border-color:color-mix(in srgb,var(--green,#164b3b) 55%,#dbe5e0);
 background:color-mix(in srgb,var(--green,#164b3b) 9%,#fff)
}
.sf-on-switchboard .sf-layout-editing .sf-switch-group{
 cursor:grab;
 box-shadow:0 5px 18px color-mix(in srgb,var(--green,#164b3b) 14%,transparent)
}
.sf-on-switchboard .sf-layout-editing .sf-switch-group:active{cursor:grabbing}
.sf-on-switchboard .sf-layout-editing .sf-switch-slot{
 border-color:color-mix(in srgb,var(--green,#164b3b) 38%,#bfd0c8);
 background:color-mix(in srgb,var(--green,#164b3b) 4%,transparent)
}
