/* FLEGO 4.6 -- visual layer, applies only to foreman screens. */
#app.f46-home{max-width:1180px;margin:0 auto;padding:24px 20px 88px;box-sizing:border-box;display:block}
.f46-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0 0 24px}.f46-head h1{font-size:clamp(26px,3vw,36px);margin:8px 0}.f46-head p{color:var(--muted);margin:0}.f46-eyebrow{font-size:12px;color:#9c7600;letter-spacing:.065em;font-weight:700}.f46-head .f46-create{flex-shrink:0;text-decoration:none}
.f46-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:22px}.f46-kpi{border:1px solid var(--line);border-radius:12px;padding:20px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:10px}.f46-kpi strong{font-size:32px;line-height:1;font-weight:700;font-family:var(--f-display,var(--f-body))}.f46-kpi span{color:var(--muted);font-size:14px}.f46-kpi:hover,.f46-kpi:focus-visible{border-color:#b48b15;outline-offset:2px}.f46-kpi-neutral{cursor:default}
.f46-controls{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.f46-segments{display:flex;gap:5px;flex-wrap:wrap}.f46-segments button{border:1px solid var(--line);border-radius:8px;padding:9px 13px;background:var(--surface);color:var(--ink);font:600 14px var(--f-body);cursor:pointer}.f46-segments button.is-active{background:#f7e8b6;border-color:#cfad45;color:#292217}.f46-controls input{max-width:300px;min-height:40px}.f46-projects{display:grid;gap:12px}.f46-project{min-width:0;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:14px;display:grid;gap:14px}.f46-cardhead{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.f46-cardhead h2{font-size:21px;margin:0 0 7px;overflow-wrap:anywhere}.f46-cardhead h2 a{color:inherit;text-decoration:none}.f46-cardhead h2 a:hover{text-decoration:underline}.f46-cardhead p{font-size:14px;color:var(--muted);margin:0}.f46-pill{font-size:13px;display:inline-block;padding:7px 11px;border-radius:20px;font-weight:600;line-height:1.2;white-space:normal;max-width:100%;background:#f2f3f1;color:#596166}.f46-pill.f46-act{background:#fbebd9;color:#a14b0a}.f46-pill.f46-wait{background:#fff2d4;color:#946104}.f46-pill.f46-done{background:#e6f1e8;color:#276a38}.f46-pill.f46-work{background:#edf0f4;color:#405671}.f46-current{font-size:15px;margin:0;color:var(--ink)}.f46-current span,.f46-muted,.f46-deadline{color:var(--muted)}.f46-muted{margin:0;font-size:14px}.f46-task{display:flex;align-items:center;gap:9px;padding:12px;background:var(--sunk,#f5f6f3);border-radius:9px;text-decoration:none;color:var(--ink)}.f46-task span:first-child{font-size:13px;color:#a14b0a}.f46-task strong{font-size:14px;min-width:0}.f46-arrow{margin-left:auto}.f46-wait-note{font-size:14px;background:var(--sunk,#f6f6f3);padding:13px;border-radius:9px}.f46-wait-note a{color:inherit;display:inline-block;margin-top:6px}.f46-cardfoot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.f46-cardfoot>.btn{min-height:42px;display:inline-flex;align-items:center;text-decoration:none}.f46-cardfoot details{max-width:100%}.f46-cardfoot summary{cursor:pointer;color:var(--muted);font-size:14px}.f46-cardfoot dl{margin:12px 0 0;display:grid;gap:8px}.f46-cardfoot dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px}.f46-cardfoot dt{color:var(--muted)}.f46-cardfoot dd{margin:0;overflow-wrap:anywhere}.f46-invite{border-top:1px solid var(--line);padding-top:12px}.f46-empty{border:1px dashed var(--line);border-radius:12px;padding:26px;color:var(--muted);text-align:center}.f46-paging{display:flex;gap:12px;margin-top:12px}
#app.f46-project-page{box-sizing:border-box;width:100%;max-width:1250px;margin:0 auto;padding:24px 20px 80px;display:grid;grid-template-columns:218px minmax(0,1fr);align-items:start;gap:20px}.f46-sidebar{padding:14px 10px;background:var(--surface);border:1px solid var(--line);border-radius:13px;position:sticky;top:12px;min-width:0}.f46-back{display:block;color:var(--muted);text-decoration:none;margin:0 7px 16px;font-size:13px}.f46-property{padding:2px 8px 16px;border-bottom:1px solid var(--line);margin-bottom:12px;display:grid;gap:4px;overflow-wrap:anywhere}.f46-property strong{font-size:16px}.f46-property small{color:var(--muted)}.f46-sidebar .ptabs{border:0;position:static!important;padding:0!important;background:transparent;display:grid;gap:3px;overflow:visible}.f46-sidebar .ptabs a{padding:11px 12px;display:block;border:0;border-radius:9px;color:var(--ink);font-size:14px;text-align:left;text-decoration:none;white-space:normal;background:transparent}.f46-sidebar .ptabs a[aria-current="page"]{background:#f8edcb;color:#513c0a;font-weight:700}.f46-sidebar .ptabs a:hover{background:var(--sunk,#f2f3f1)}.f46-workspace{min-width:0;display:grid;gap:15px}.f46-workspace>.panel{margin:0}.f46-objectinfo{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px 15px}.f46-objectinfo summary{cursor:pointer;font-weight:600}.f46-objectinfo>div{margin-top:16px}.f46-stage{padding:24px;gap:12px}.f46-stage h1{font-size:clamp(22px,2.3vw,31px);margin:0;overflow-wrap:anywhere}.f46-stage-action{margin:12px 0}.f46-stage-action .btn{min-height:45px;max-width:100%;white-space:normal}.f46-info{background:var(--sunk,#f3f4f1);padding:16px;border-radius:8px;margin:0}.f46-quick{display:flex;flex-wrap:wrap;gap:8px}.f46-quick a{display:inline-block;border:1px solid var(--line);padding:10px 13px;text-decoration:none;border-radius:8px;color:var(--ink);font-size:14px}.f46-quick a:hover{border-color:#b08b13}.f46-small{font-size:12px;line-height:1.5;color:var(--muted);margin:0}.f46-stage-work{padding:0;border-top:1px solid var(--line);margin-top:6px}.f46-stage-work>summary{padding:15px 0;cursor:pointer;font-weight:600}.f46-stage-work>.b-stage{padding:12px;border:0;background:transparent}.f46-advanced{margin:0}.f46-advanced>summary{font-weight:600;cursor:pointer}.f46-advanced>*:not(summary){margin-top:12px}.f46-advanced .panel{max-width:100%}
@media(max-width:800px){#app.f46-project-page{display:block;padding:18px 14px 65px}.f46-sidebar{position:static;margin:0 0 14px}.f46-sidebar .ptabs{display:flex;overflow-x:auto;flex-wrap:nowrap;gap:6px}.f46-sidebar .ptabs a{white-space:nowrap;padding:9px 11px}.f46-property{margin-bottom:8px}.f46-stage{padding:18px}}
@media(max-width:610px){#app.f46-home{padding:18px 14px 70px}.f46-head{align-items:flex-start;flex-direction:column;gap:12px}.f46-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.f46-kpi{padding:14px;min-height:93px}.f46-kpi strong{font-size:27px}.f46-kpi-neutral{grid-column:span 2;min-height:0}.f46-cardhead{flex-direction:column;gap:10px}.f46-project{padding:17px}.f46-controls input{max-width:none;width:100%}.f46-task{align-items:flex-start;flex-direction:column}.f46-stage .f46-quick a{flex:1;text-align:center}.f46-cardfoot dl>div{grid-template-columns:1fr;gap:2px}}

/* FLEGO 4.6.1 -- one real shared shell and compact property details. */
.customer409-identity .f47-side-facts{display:grid;gap:9px;margin:13px 0 0;padding-top:11px;border-top:1px solid var(--line)}
.customer409-identity .f47-fact{display:grid;gap:2px;min-width:0}
.customer409-identity .f47-fact dt{font:500 11px/1.3 var(--f-body);color:var(--muted)}
.customer409-identity .f47-fact dd{margin:0;font:600 12px/1.45 var(--f-body);color:var(--ink);overflow-wrap:anywhere}
#app.f47-foreman-page .customer409-sidebar{min-width:0}
#app.f47-foreman-page .customer409-workspace>.c42-deck{width:100%;max-width:none;margin:0}
#app.f47-foreman-page .c43-stage-shell{min-width:0}
.f47-deck .c43-stage-info .c43-stage-actions{margin-top:9px}
.f47-stage-plan{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--sunk);font-size:14px;font-weight:600;flex-wrap:wrap}
.f47-stage-plan a{color:var(--ink);text-decoration:none;font-size:13px}
.f47-stage-plan a:hover{text-decoration:underline}
.f47-advanced{margin:0!important;padding:18px!important;min-width:0;max-width:100%}
.f47-advanced>summary{cursor:pointer;font-weight:650}
.f47-advanced>summary~*{margin-top:15px}
.f47-advanced .panel{max-width:100%}
.f47-stage-detail{padding:20px}
.f47-stage-detail .c43-stage-hero{margin:0}
@media(max-width:820px){.f47-stage-detail{padding:15px}.f47-advanced{padding:14px!important}}

/* FLEGO 4.6.3 -- visual role cue only. One shared design system. */
body.flego-foreman47-project,body.flego-foreman47-home{background:#eaf0f4!important}
body.flego-foreman47-project .customer409-workspace{min-width:0}
.f463-readonly-stage .c42-stage-status{background:#e8edf2;color:#566576}
.f463-noaccess{color:#667786;font-size:13px;font-weight:500}

/* FLEGO 4.6.3 -- task-focused foreman overview, original tools retained. */
.f463-overview{display:grid;gap:16px}
.f463-overview-title h1{font-family:var(--f-display,var(--f-body));font-size:clamp(24px,2.6vw,34px);margin:8px 0 5px}
.f463-overview-title p{color:var(--muted);margin:0}
.f463-overview-focus{background:#fff;border:1px solid var(--line);border-left:4px solid #e7aa00;border-radius:14px;padding:22px;display:grid;gap:14px}
.f463-overview-focus-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}
.f463-overview-focus-head strong{font-size:18px;overflow-wrap:anywhere}
.f463-overview-focus>p{margin:0;color:#56636b}
.f463-overview-focus>.btn{justify-self:start;text-decoration:none}
.f463-overview-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.f463-overview-metrics a{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;color:var(--ink);text-decoration:none;display:grid;gap:7px}
.f463-overview-metrics b{font-size:26px}
.f463-overview-metrics span,.f463-overview-hint{font-size:13px;color:var(--muted)}
.f463-overview-hint{margin:0}
@media(max-width:650px){.f463-overview-metrics{gap:8px}.f463-overview-metrics a{padding:12px}.f463-overview-metrics b{font-size:22px}}

/* BUG-047: the shared customer rule stretches the sidebar to the full stage
   journal height. Override it ONLY for the foreman, including when tools open. */
@media (min-width:821px) {
  #app.customer409-page.f47-foreman-page:has(.c43-stage-shell) {
    align-items:start!important;
  }
  #app.customer409-page.f47-foreman-page:has(.c43-stage-shell) > .customer409-sidebar {
    position:sticky!important;
    top:18px!important;
    align-self:start!important;
    height:auto!important;
    max-height:calc(100vh - 36px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  #app.customer409-page.f47-foreman-page:has(.c43-stage-shell) > .customer409-workspace {
    align-self:start!important;
    display:block!important;
  }
  #app.customer409-page.f47-foreman-page:has(.c43-stage-shell) .c43-journey {
    height:auto!important;
    flex:none!important;
  }
  #app.customer409-page.f47-foreman-page:has(.c43-stage-shell) .c43-stage-shell {
    height:auto!important;
    min-height:0!important;
  }
}
#app.f47-foreman-page .customer409-workspace > .f47-stage-detail {
  margin:0 0 14px!important;
  height:auto!important;
  min-height:0!important;
}
#app.f47-foreman-page .f47-detail-tools { margin:0!important; }
#app.f47-foreman-page .f47-detail-tools:not([open]) { padding-bottom:18px!important; }
#app.f47-foreman-page .f47-detail-shortcuts {
  display:flex;flex-wrap:wrap;gap:9px;margin:0 0 14px;min-width:0;
}
#app.f47-foreman-page .f47-detail-shortcuts a {
  display:inline-flex;align-items:center;min-height:39px;padding:8px 12px;
  border:1px solid var(--line);border-radius:9px;background:var(--surface);
  color:var(--ink);font-size:13px;font-weight:600;text-decoration:none;
}
#app.f47-foreman-page .f47-detail-shortcuts a:hover {border-color:#b89330;}
@media(max-width:820px){
 #app.f47-foreman-page .f47-detail-shortcuts {gap:6px;}
 #app.f47-foreman-page .f47-detail-shortcuts a {font-size:12px;padding:7px 9px;}
}

/* BUG-049: one stage view at a time. Opening the real working journal hides
   the redundant photo hero and remains stable through timed refreshes. */
#app.f47-foreman-page .customer409-workspace.f47-journal-active > .f47-stage-detail,
#app.f47-foreman-page .customer409-workspace > .f47-stage-detail[hidden]{
  display:none!important;
}
#app.f47-foreman-page .customer409-workspace.f47-journal-active > .f47-detail-tools{
  margin-top:0!important;
}

/* FLEGO 4.6.4 -- one direct working page, no secondary copy of the stage. */
#app.f47-foreman-page .f464-work-screen{display:grid;gap:14px;min-height:0;width:100%;background:transparent;border:0;padding:0;margin:0}
#app.f47-foreman-page .f464-head{display:grid;justify-items:start;gap:11px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;min-width:0}
#app.f47-foreman-page .f464-head h1{font-family:var(--f-display,var(--f-body));font-size:clamp(22px,3vw,32px);line-height:1.35;margin:0;overflow-wrap:anywhere}
#app.f47-foreman-page .f464-stage-status{display:inline-flex;border-radius:100px;background:#f2f4f4;color:#58636a;padding:7px 12px;font-weight:600;font-size:13px}
#app.f47-foreman-page .f464-stage-facts{display:flex;gap:10px 20px;flex-wrap:wrap;align-items:center;color:#59666c;font-size:13px;margin-top:5px}
#app.f47-foreman-page .f464-stage-facts>b{color:var(--ink)}
#app.f47-foreman-page .f464-stage-message{color:#56636b;margin:0;font-size:14px;line-height:1.6}
#app.f47-foreman-page .f464-primary-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
#app.f47-foreman-page .f464-primary-actions:empty{display:none}
#app.f47-foreman-page .f464-stage-content{display:grid;gap:14px;min-width:0}
#app.f47-foreman-page .f464-stage-content > .panel, #app.f47-foreman-page .f464-stage-content > .card{margin:0!important;max-width:100%;min-width:0}
#app.f47-foreman-page .f464-stage-content .f464-record{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;display:grid;gap:12px}
#app.f47-foreman-page .f464-stage-content .f464-technical{margin-top:0;max-width:100%}
#app.f47-foreman-page .f464-stage-content .f464-technical>summary{font-weight:650;cursor:pointer}
#app.f47-foreman-page .f464-stage-content .f464-technical>.b-stage{border:0;background:transparent;padding:10px 0 0;margin:0}
#app.f47-foreman-page .f464-work-screen[data-f464-accepted="1"] .f464-record :disabled{cursor:not-allowed;opacity:.6}
@media(max-width:650px){#app.f47-foreman-page .f464-head{padding:17px}#app.f47-foreman-page .f464-stage-facts{gap:8px 14px}}

#app.f47-foreman-page .f464-work-screen[data-f464-accepted="1"] .f464-record .addph:has(input:disabled){display:none!important}
