/* Factory workspace: retain the approved blue/white language and live diagram. */
.is-factory-home .journey-bar{display:none}.factory-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:8px 0 28px}.factory-heading h1{font-size:40px;margin:0}.factory-kicker{font-size:14px;color:var(--muted);margin:0 0 6px}.factory-overview{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.8fr);gap:24px}.factory-demand-panel,.factory-studies{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:24px 28px}.factory-section-title{display:flex;align-items:center;justify-content:space-between;gap:18px}.factory-section-title h2{font-size:22px;letter-spacing:-.02em;margin:0}.factory-section-title>span{font-size:12px;color:var(--muted)}.factory-metrics{display:flex;gap:40px;margin:26px 0 18px}.factory-metrics span{display:block;font-size:13px;color:var(--muted);margin-bottom:5px}.factory-metrics strong{font-size:26px;font-weight:550;letter-spacing:-.02em}#factory-demand svg{display:block;width:100%;font:12px Figtree,sans-serif;fill:var(--muted)}#factory-map .system-scene{height:100%;padding:10px}#factory-map .energy-map{max-height:none}.factory-studies{margin-top:24px}.empty-studies{padding:34px 0 16px;color:var(--muted);font-size:15px}.study-row{display:flex;align-items:center;gap:18px;padding:22px 0;border-top:1px solid var(--line)}.study-row:first-child{margin-top:20px}.study-row:last-child{padding-bottom:0}.study-row strong{font-weight:550}.study-icon{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;flex-shrink:0;background:var(--blue-wash);border-radius:10px;color:var(--blue)}.study-icon svg,.processing-core svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}.study-outcome{margin-left:auto;text-align:right}.study-row>a{font-size:14px;margin-left:10px}.study-row small{font-size:12px}dialog{border:1px solid var(--line);border-radius:20px;color:var(--ink);background:var(--surface);box-shadow:0 30px 100px #1c243b30;padding:32px;max-height:90vh;overflow:auto;width:min(660px,calc(100vw - 32px))}dialog::backdrop{background:#17213d55;backdrop-filter:blur(5px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.dialog-heading h2{font-size:28px;margin:0}.icon-button{background:none!important;color:var(--muted);border:0;box-shadow:none!important;font-size:26px;padding:0;width:44px}.machine-files{display:flex;gap:14px;align-items:center;margin:22px 0}.machine-files strong{font-size:14px;font-weight:550}.machine-files small{font-size:12px}.machine-files+.button{width:100%}#machine-form>button[type=submit]{width:100%;margin-top:4px}#processing-dialog{width:min(760px,calc(100vw - 32px));padding:34px 40px}#process-mode{font-size:12px;color:var(--muted);margin:0}#process-title{font-size:28px;margin:24px 0 12px}#process-detail{color:var(--muted);font-size:15px;min-height:24px;margin-bottom:22px}.processing-art{display:flex;align-items:center;justify-content:center;padding:26px 0 16px;gap:0}.scan-document{position:relative;width:76px;height:96px;border:1px solid #b7c7f1;border-radius:12px;padding:20px 14px;background:var(--paper);overflow:hidden}.scan-document i{display:block;height:3px;background:#b8c7e7;margin:8px 0;border-radius:2px}.scan-document i:nth-child(2){width:70%}.scan-document b{position:absolute;left:0;right:0;height:2px;top:0;background:var(--blue);box-shadow:0 4px 18px #3859f580;animation:scan 2.7s ease-in-out infinite}.processing-path{width:100px;height:2px;background:#dae2f7;position:relative;overflow:hidden}.processing-path:after{content:'';position:absolute;width:24px;height:2px;background:var(--blue);animation:signal 1.8s linear infinite}.processing-core{display:grid;place-items:center;background:linear-gradient(145deg,#7390ff,#3859f5);width:84px;height:84px;border-radius:22px;color:white;box-shadow:0 6px 25px #3859f524}.processing-core svg{width:42px;height:42px}.process-track{height:4px;background:#e7ecf7;border-radius:4px;overflow:hidden}.process-track i{display:block;height:100%;width:0;background:var(--blue);transition:width .2s linear}#process-steps{list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px 20px}#process-steps li{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--muted)}#process-steps li>span{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--line);border-radius:50%;flex-shrink:0;font-size:11px}#process-steps li.active{color:var(--blue)}#process-steps li.active>span,#process-steps li.done>span{background:var(--blue);color:white;border-color:var(--blue)}#why-schedule{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:26px 30px;margin:24px 0}#why-schedule h3{font-size:24px;max-width:65ch}#why-detail{font-size:15px;color:var(--muted);max-width:85ch}#why-metrics{display:flex;gap:48px;margin:22px 0}#why-metrics span{display:block;color:var(--muted);font-size:13px}#why-metrics strong{display:block;font-size:25px;font-weight:550;margin-top:5px}#why-schedule #graphique-planning{padding:0;border:0;box-shadow:none;margin:18px 0}#why-schedule #graphique-planning>h3,#why-schedule #graphique-planning>p:not(.legende-planning),#why-schedule #graphique-planning>small{display:none}#why-footnote{font-size:12px}.finding-head{display:flex;gap:12px;align-items:center;margin-bottom:18px}.finding-head h3{font-size:24px;margin:0}.finding-tag{font-size:12px;padding:4px 8px;background:var(--red-wash);border:1px solid #eadce0;border-radius:6px;color:var(--red)}.finding-story{font-size:17px;max-width:70ch;margin-bottom:20px}.finding-equation{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:18px}.finding-equation strong{font-size:27px;font-weight:550}.finding-equation small{font-size:12px;margin-top:5px}.finding-equation em{font-style:normal;font-size:22px;color:var(--muted)}.finding-equation .quoted{margin-left:auto;color:var(--red)}.finding-evidence{margin:16px 0}.finding-evidence>summary{font-size:14px;color:var(--blue)}.finding-evidence blockquote{font-size:14px}.finding-evidence .evidence-ref{font-size:12px;color:var(--muted)}.finding-provenance{font-size:12px;color:var(--muted);margin:0 0 16px}.alerte-documentaire .detail-alerte>summary{font-size:14px;min-height:40px}.review-content:has(#faits[hidden]) #demo-tools{position:static;padding-top:16px}.review-content:has(#faits[hidden]){padding-bottom:24px}.alerte-documentaire{background:var(--surface);border:0;padding:0}.finding-head+.finding-story{margin-top:0}@keyframes scan{0%,100%{transform:translateY(10px)}50%{transform:translateY(85px)}}@keyframes signal{from{transform:translateX(-24px)}to{transform:translateX(100px)}}
@media(max-width:1000px){.factory-overview{grid-template-columns:1fr}.factory-metrics{gap:30px}#factory-map .system-scene{max-height:250px}#factory-map .energy-map{max-height:230px}}
@media(max-width:760px){.factory-heading{align-items:flex-start;gap:16px}.factory-heading h1{font-size:30px}.factory-heading button{font-size:13px;padding:10px 12px}.factory-demand-panel,.factory-studies{padding:20px 18px}.factory-section-title{align-items:flex-start;flex-direction:column;gap:6px}.factory-metrics{gap:18px;flex-wrap:wrap}.factory-metrics strong{font-size:22px}.factory-metrics span{font-size:12px}.study-row{flex-wrap:wrap;gap:12px}.study-outcome{margin-left:0;flex:1;text-align:left}.study-row>a{margin-left:auto}.factory-kicker{font-size:12px}dialog,#processing-dialog{padding:24px}.dialog-heading h2,#process-title{font-size:25px}#process-steps{grid-template-columns:1fr;gap:10px}#process-detail{font-size:14px;min-height:44px}.machine-files{align-items:flex-start}.machine-files small{font-size:11px}#why-schedule{padding:20px 16px}#why-schedule h3{font-size:21px}#why-metrics{gap:20px;flex-direction:column}#why-metrics strong{font-size:23px}.finding-head{align-items:flex-start;flex-direction:column;gap:8px}.finding-head h3{font-size:22px}.finding-equation{gap:14px}.finding-equation strong{font-size:23px}.finding-equation .quoted{margin-left:0;flex-basis:100%}.finding-story{font-size:15px}#machine-form .grille{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.scan-document b,.processing-path:after{animation:none}.process-track i{transition:none}}

#mode-demo[hidden]{display:none!important}
.steps{grid-template-columns:repeat(5,minmax(0,1fr))}.factory-heading-actions{display:flex;align-items:center;gap:12px}.factory-heading-actions .secondaire{font-size:14px}.factory-section-title:has(.add-machine-inline){flex-direction:row;align-items:center}.add-machine-inline{font-size:25px;width:40px;height:40px;padding:0;border-radius:10px}.machine-table{margin-top:22px}.machine-table-head,.machine-table-row{display:grid;grid-template-columns:minmax(170px,1.5fr) minmax(110px,.8fr) minmax(110px,.8fr) minmax(170px,1fr);gap:22px;align-items:center}.machine-table-head{color:var(--muted);font-size:12px;padding-bottom:14px}.machine-table-row{border-top:1px solid var(--line);padding:22px 0;font-size:16px}.machine-table-row:last-child{padding-bottom:0}.machine-table-row small{font-size:12px;color:var(--muted);display:block;margin-top:4px}.machine-table-row strong{font-weight:550}.machine-link{background:none!important;border:0!important;box-shadow:none!important;color:var(--blue);padding:0;text-align:left;min-height:28px;font-size:17px}.muted{color:var(--muted);font-size:13px}.schedule-track{height:5px;position:relative;background:#e8edf8;margin-top:10px;border-radius:5px;overflow:hidden}.schedule-track i{position:absolute;height:100%;background:var(--blue);border-radius:5px}.machine-schedule>span{font-size:15px}.document-workspace{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:28px}.document-packs{display:grid;gap:18px}.document-group,.document-upload{border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:24px}.document-group h3,.document-upload h3{font-size:22px;margin:0 0 4px}.document-group>p{font-size:14px;color:var(--muted);margin:0 0 20px}.document-file{display:flex;align-items:flex-start;gap:12px;padding:11px 0;border-top:1px solid var(--line)}.document-file>input{flex-shrink:0;margin-top:3px}.document-file>details{min-width:0;flex:1;font-size:14px;margin:0}.document-file summary{overflow-wrap:anywhere;min-height:28px}.document-file pre{max-height:300px;font-size:12px}.document-upload{align-self:start;position:sticky;top:24px}.file-drop{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;border:1px dashed #bccaf1;border-radius:12px;padding:28px 14px;margin-top:20px;cursor:pointer;text-align:center}.file-drop svg{width:28px;height:28px;fill:none;stroke:var(--blue);stroke-width:1.5}.file-drop strong{font-size:15px;font-weight:550}.file-drop span{font-size:12px;color:var(--muted)}.file-drop input{max-width:100%;font-size:12px}.file-drop.drag-over{background:var(--blue-wash);border-color:var(--blue)}.document-note{margin-top:22px;font-size:14px}.document-note p{font-size:13px;color:var(--muted)}#pending-files>div{display:flex;gap:12px;align-items:center;justify-content:space-between;font-size:13px;margin-top:12px;overflow-wrap:anywhere}#pending-files button{font-size:18px;min-height:32px;padding:2px 8px;background:none;color:var(--muted);box-shadow:none}#document-error{font-size:14px;color:var(--red)}.profile-document>span{font-size:13px;color:var(--muted)}
@media(max-width:900px){.document-workspace{grid-template-columns:1fr}.document-upload{position:static}.machine-table-head,.machine-table-row{grid-template-columns:minmax(140px,1.3fr) .8fr .8fr 1fr;gap:16px}}
@media(max-width:600px){.factory-heading{flex-direction:column}.factory-heading-actions{width:100%;justify-content:space-between}.factory-heading-actions .secondaire{font-size:12px}.machine-table-head{display:none}.machine-table-row{grid-template-columns:1fr 1fr;gap:12px}.machine-table-row>div:first-child{grid-column:1/-1}.machine-table-row>span:nth-child(2):before{content:'Power';display:block;color:var(--muted);font-size:11px}.machine-table-row>span:nth-child(3):before{content:'Energy / day';display:block;color:var(--muted);font-size:11px}.machine-table-row>div:last-child,.machine-table-row>span:last-child{grid-column:1/-1}.machine-table-row>span:nth-child(3){grid-column:auto}.document-group,.document-upload{padding:20px}.document-group h3,.document-upload h3{font-size:21px}.steps>button{padding:12px 7px!important}.steps strong{font-size:11px!important}.steps>button>span{min-width:0}.factory-heading h1{font-size:32px}}

#use-own-documents{margin-bottom:16px;width:100%}.processing-live .process-track i{width:30%!important;animation:analysis-wait 1.8s ease-in-out infinite}.processing-live #process-steps:empty{display:none}@keyframes analysis-wait{0%{transform:translateX(-100%)}100%{transform:translateX(350%)}}@media(prefers-reduced-motion:reduce){.processing-live .process-track i{animation:none}}
.evidence-comparison{display:grid;grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr);align-items:stretch;gap:12px;margin:22px 0}.evidence-card{border:1px solid var(--line);border-radius:12px;padding:20px;background:var(--paper);min-width:0;animation:evidence-appear .35s ease-out both}.evidence-card:last-child{animation-delay:.12s}.evidence-card:only-child{grid-column:1/-1}.evidence-caption{font-size:12px;font-weight:600;color:var(--muted);display:block;margin-bottom:14px}.evidence-card blockquote{margin:0 0 8px;padding:0;border:0;background:none;font-size:17px;color:var(--ink);overflow-wrap:anywhere}.evidence-card small{font-size:12px;margin:0 0 14px;overflow-wrap:anywhere}.evidence-card small:last-child{margin-bottom:0}.evidence-vs{align-self:center;justify-self:center;color:var(--red);font-size:30px}.finding-decision{display:flex;align-items:flex-start;gap:14px;padding:18px 0 8px}.finding-decision svg{width:25px;height:25px;flex:none;fill:none;stroke:var(--blue);stroke-width:1.5}.finding-decision strong{font-size:18px;font-weight:600}.finding-decision p{color:var(--muted);font-size:14px;margin:5px 0 0}.model-finding{padding:0;background:var(--surface)}@keyframes evidence-appear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:760px){.evidence-comparison{grid-template-columns:1fr;gap:8px}.evidence-vs{font-size:24px}.evidence-card{padding:16px}.evidence-card blockquote{font-size:15px}.finding-decision strong{font-size:16px}}@media(prefers-reduced-motion:reduce){.evidence-card{animation:none}}

#process-documents{list-style:none;padding:0;margin:20px 0 0;max-height:190px;overflow:auto;text-align:left;border-top:1px solid var(--line)}
#process-documents:empty{display:none}
#process-documents li{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}
#process-documents li>span{min-width:0;overflow-wrap:anywhere}
#process-documents small{white-space:nowrap;font-size:12px}

/* A paced explanation of the real solver, using the approved factory profile. */
.processing-simulation .processing-art{display:none}
#simulation-visual{position:relative;height:220px;overflow:hidden;border-radius:12px;background:var(--paper);border:1px solid var(--line)}
.simulation-network,.simulation-demand{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:12px;transition:opacity .4s,transform .4s}
.simulation-network .energy-map{width:100%;height:100%;max-height:100%}
.simulation-demand{opacity:0;transform:translateY(10px)}
.simulation-demand svg{width:100%;max-height:100%;fill:var(--muted);font:12px Figtree,sans-serif}
#simulation-visual[data-stage="1"] .simulation-network,#simulation-visual[data-stage="3"] .simulation-network{opacity:0;transform:translateY(-10px)}
#simulation-visual[data-stage="1"] .simulation-demand,#simulation-visual[data-stage="3"] .simulation-demand{opacity:1;transform:none}
.simulation-sweep{position:absolute;top:15%;bottom:20%;left:8%;width:12%;background:linear-gradient(90deg,transparent,#3859f51c);border-right:2px solid #3859f58c;animation:simulation-sweep 2.5s ease-in-out infinite}
@keyframes simulation-sweep{from{left:8%}to{left:84%}}
@media(max-width:600px){#processing-dialog{padding:24px 20px}#simulation-visual{height:190px}.processing-simulation #process-steps{grid-template-columns:1fr 1fr;gap:12px}.processing-simulation #process-title{font-size:25px}}
@media(prefers-reduced-motion:reduce){.simulation-sweep{animation:none;display:none}.simulation-network,.simulation-demand{transition:none}}

#factory-welcome{width:560px;max-width:calc(100vw - 40px);box-sizing:border-box;padding:36px;border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--ink)}
#factory-welcome::backdrop{background:rgba(20,30,55,.36);backdrop-filter:blur(5px)}
#factory-welcome h2{font-size:30px;line-height:1.15;margin:0 0 14px}#factory-welcome p{font-size:16px;line-height:1.5;margin:0;color:var(--muted)}
.welcome-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}.welcome-actions button{font-size:15px;padding:13px 18px}
@media(max-width:600px){#factory-welcome{padding:26px}#factory-welcome h2{font-size:26px}.welcome-actions{flex-direction:column}.welcome-actions button{width:100%}}
