/* Atelier PDP 2.0 — composition unifiée, sans héritage des anciennes feuilles. */
:root{color-scheme:light;--navy:#102b40;--navy-deep:#0c2334;--navy-panel:#163449;--ink:#142e44;--muted:#718699;--green:#008d82;--green-deep:#00766e;--green-soft:#e7f6f2;--canvas:#f4f7fb;--surface:#fff;--line:#dfe7ef;--radius:10px;--rail:72px;--context:220px;--top:58px;--footer:66px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;color:var(--ink);background:var(--canvas)}*{box-sizing:border-box}body{margin:0;line-height:1.5}button,input,select,textarea{font:inherit}button,a,label,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button,a{touch-action:manipulation}button{border:0;font-weight:600}button:disabled{cursor:not-allowed;opacity:.45}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #50b5a9;outline-offset:3px}h1,h2,h3,p{margin:0}h1{font-size:25px;letter-spacing:-.6px;line-height:1.25;font-weight:700}h2{font-size:15px;font-weight:650;letter-spacing:-.15px}h3{font-size:14px;font-weight:650}p{color:var(--muted);line-height:1.65}small{font-size:11px;color:var(--muted)}strong{font-weight:650}svg{display:block}.icon{width:21px;height:21px;flex-shrink:0;vertical-align:middle}.primary,.secondary,.danger,.bare,.icon-button,.link-button,.small{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:7px;min-height:40px;padding:10px 16px;font-size:12px;font-weight:600;line-height:1.4;white-space:normal}.primary{background:var(--green);color:white;border:1px solid var(--green)}.primary:hover:not(:disabled){background:var(--green-deep);border-color:var(--green-deep)}.secondary{border:1px solid var(--line);background:#fff;color:#405b70}.secondary:hover:not(:disabled){background:#f3f7fa;border-color:#b9cfd8}.danger{background:#fff2ef;color:#ae4f40;border:1px solid #f2d8d1}.bare{background:transparent;color:#70899b}.icon-button{width:38px;min-width:38px;height:38px;min-height:38px;padding:8px}.icon-button .icon{width:20px;height:20px}.small{min-height:34px;font-size:11px;padding:8px 12px}.link-button{background:transparent;color:var(--green);padding:5px;font-size:11px;min-height:32px}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.grow{flex:1;min-width:0}
/* The rail is permanent on desktop; the context is a separate document panel. */
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--rail);z-index:40;display:flex;color:#cfdee6;background:var(--navy);overflow:hidden}.has-dossier .sidebar{width:calc(var(--rail) + var(--context))}.app-rail{background:var(--navy-deep);width:var(--rail);min-width:var(--rail);display:flex;flex-direction:column;align-items:center;padding:19px 10px 12px;border-right:1px solid #284254}.brand{display:flex;align-items:center;gap:11px;color:#fff;min-height:42px;margin-bottom:27px}.logo-mark{display:grid;place-items:center;color:#42c7ba;font-weight:800;font-size:31px;line-height:1;width:40px;height:40px;letter-spacing:-5px;padding-right:4px}.logo-mark>span{display:none}.brand-name{display:none;white-space:nowrap;font-size:17px;letter-spacing:-.4px}.rail-link{display:flex;align-items:center;justify-content:center;gap:12px;background:transparent;color:#b9cedb;min-height:42px;width:44px;border-radius:7px;margin-bottom:10px;padding:10px}.rail-link:hover{background:#1e4358;color:white}.rail-link>span{display:none}.rail-link .icon{width:20px;height:20px}body:not(.atelier).has-dossier #rail-dossier,body:not(.atelier):not(.has-dossier) #home{color:#60d2c2;background:#174b51}.rail-bottom{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:10px}.rail-version{color:#829eaf;font-size:9px;letter-spacing:1px}.rail-bottom .rail-link{margin:0}.context-panel{width:var(--context);min-width:var(--context);overflow-y:auto;overscroll-behavior:contain;display:none;border-right:1px solid #2b4559}.has-dossier .context-panel{display:block}#dossier-context{padding:22px 16px 17px;border-bottom:1px solid #2c4658;display:flex;flex-direction:column;gap:7px}#dossier-context>strong{font-size:12px;color:#eef5fa;overflow-wrap:anywhere}#dossier-context>small{font-size:9px;color:#8ba5b7;overflow-wrap:anywhere}.context-kicker{font-size:8px;letter-spacing:1.4px;color:#7897aa}.nav-label{display:none}.context-panel .badge{align-self:flex-start;font-size:9px;background:#204b5c;color:#b6d5dc;border:0;padding:3px 7px}.context-panel .badge.green{background:#185d51;color:#9ce1ca}#steps{display:flex;flex-direction:column;padding:10px 10px 18px;gap:6px}.step{width:100%;display:flex;align-items:center;gap:10px;background:transparent;color:#b7ccda;border-radius:6px;min-height:36px;text-align:left;font-size:11px;font-weight:450;padding:9px 10px;line-height:1.4}.step:hover:not(:disabled){background:#24475a;color:white}.step.active{background:#1c6065;color:#b1fff0}.step.done .flow-dot{border-color:#30ae96;background:#30ae96;color:#092f2b}.flow-dot{width:14px;height:14px;min-width:14px;border:1px solid #7395a9;border-radius:50%;display:grid;place-items:center;font-size:9px}.step.active .flow-dot{border-color:#5be1c9;box-shadow:0 0 0 2px #3adab316}.step>span:last-child{min-width:0}.nav-document{padding-top:11px;margin-top:5px;border-top:1px solid #2b475a}.nav-document-heading{display:flex;align-items:center;padding:2px 8px 9px;gap:7px;color:#e3edf3;font-size:11px}.nav-document-heading strong{font-weight:550}.section-chevron{color:#8da9ba}.nav-document-heading small{margin-left:auto;font-size:10px;color:#9ebdce}.nav-document-items{display:flex;flex-direction:column;gap:2px}.secondary-step{margin-top:11px;border-top:1px solid #2b475a;border-radius:0;color:#809eaf;font-size:10px;padding-top:16px}.secondary-step .icon{width:15px;height:15px}.menu-close{display:none}.menu-backdrop{display:none}.menu-collapsed.has-dossier .sidebar{width:var(--rail)}.menu-collapsed .context-panel{display:none}.workspace{margin-left:var(--rail);min-width:0;min-height:100dvh;display:flex;flex-direction:column}.has-dossier .workspace{margin-left:calc(var(--rail) + var(--context))}.menu-collapsed .workspace{margin-left:var(--rail)}body:not(.has-dossier):not(.menu-collapsed) .sidebar{width:210px}body:not(.has-dossier):not(.menu-collapsed) .app-rail{width:210px;align-items:stretch;padding-inline:20px}body:not(.has-dossier):not(.menu-collapsed) .brand-name{display:inline}body:not(.has-dossier):not(.menu-collapsed) .rail-link{width:100%;justify-content:flex-start}body:not(.has-dossier):not(.menu-collapsed) .rail-link>span{display:block;font-size:11px}body:not(.has-dossier):not(.menu-collapsed) .workspace{margin-left:210px}body:not(.has-dossier) .rail-bottom{align-items:stretch}
.topbar{min-height:var(--top);height:var(--top);display:flex;align-items:center;gap:12px;background:#fbfdff;border-bottom:1px solid var(--line);padding:0 23px;flex-shrink:0}.topbar .bare{width:31px;min-width:31px;padding:5px;min-height:31px}#breadcrumb{font-size:11px;display:flex;gap:11px;align-items:center;min-width:0;flex:1;color:#7890a2}#breadcrumb>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:290px}#breadcrumb strong{font-weight:500;color:#28485f;white-space:nowrap}.breadcrumb-separator{color:#b5c4d0}.top-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}#save-status{font-size:10px;color:#75968c;display:flex;align-items:center;gap:6px}#save-status:before{content:'';background:#56b9a2;width:6px;height:6px;border-radius:50%}.workspace-badge{font-size:8px;letter-spacing:1px;color:#9cafbb;border-left:1px solid var(--line);padding-left:14px}.top-actions #save{min-height:30px;padding:5px 11px;font-size:10px}main{padding:25px 28px 28px;flex:1;min-width:0;max-width:1560px;width:100%;margin:0 auto}main:focus{outline:none}.page-heading{display:flex;justify-content:space-between;gap:18px;align-items:center;margin:0 0 21px;min-width:0}.page-heading-main{display:flex;gap:13px;align-items:center;min-width:0}.page-symbol{color:#4b728a;display:grid;place-items:center;flex-shrink:0;width:30px;height:36px}.page-symbol .icon{width:29px;height:29px;stroke-width:1.4}.lead{font-size:11px;line-height:1.5;margin-top:4px;color:#8093a4}.badge{font-size:10px;display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:20px;font-weight:500;white-space:nowrap;background:#edf3f8;color:#598098}.badge.green{background:#e5f6ee;color:#278b71}.badge.amber{background:#fff4d9;color:#a07b2c}.badge.red{background:#ffebe5;color:#ae5646}.badge.neutral{background:#e8f3f9;color:#548aab}.card,.visit-board,.planning-overview{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:21px;min-width:0}.card+.card{margin-top:17px}.card h2{margin-bottom:16px}.form-top{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:15px}.form-top h2,.form-top h3{margin:0}.grid{display:grid;gap:20px;min-width:0}.cols-main{grid-template-columns:minmax(0,1fr) minmax(250px,.38fr)}.cols-main>aside.card{margin-top:0;align-self:start}.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 21px}.field{display:flex;flex-direction:column;gap:8px;min-width:0}.field.full{grid-column:1/-1}label,.field-caption{font-size:11px;font-weight:600;color:#314e64}input,select,textarea{width:100%;min-width:0;color:#355368;background:#fcfdff;border:1px solid #d8e3ec;border-radius:6px;padding:10px 12px;font-size:12px;min-height:39px;line-height:1.5}textarea{resize:vertical;min-height:93px}input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 3px #008d8210;border-color:#46a69b;background:#fff}input:disabled,textarea:disabled,select:disabled{background:#f3f6f8;color:#8a9eaa;cursor:not-allowed}input[type=checkbox]{min-height:0;width:17px;height:17px;accent-color:var(--green);flex-shrink:0;margin:2px 0 0}.note{font-size:10px;line-height:1.8;color:#90a1ae;padding-top:13px;margin-top:16px;border-top:1px solid #edf2f6}.notice{display:flex;flex-wrap:wrap;align-items:center;gap:9px;background:#eef8f4;border:1px solid #d7ece3;border-radius:7px;padding:13px 15px;font-size:11px;line-height:1.65;color:#4b7d6d;margin:0 0 17px}.notice.amber{background:#fffbef;color:#9a8248;border-color:#efe4c3}.notice p{font-size:11px}.notice>strong{width:100%}.lock-notice{gap:14px;border-left:3px solid #d7ae4f}.lock-notice>div{flex:1;min-width:180px}.lock-notice .icon{width:18px;height:18px}.lock-notice p{color:#78998b;font-size:10px}.checkline{display:flex;align-items:flex-start;gap:10px;font-size:12px;font-weight:450;color:#516f80;line-height:1.6}.inline-notice{display:flex;align-items:flex-start;gap:9px;padding:11px 14px;background:#f1f9f7;color:#46816e;font-size:11px;border-radius:6px;line-height:1.6;margin-top:14px}.inline-notice .icon{width:15px;height:15px}.water-warning{background:#fff2ee;color:#bb4c40;border-left:3px solid #cc5e50;border-radius:4px;padding:11px 14px;font-size:11px;font-weight:700;margin-top:13px}.disabled{opacity:.45;pointer-events:none}
/* Dossier overview: compact horizontal cards, not tall stacked tiles. */
.home-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:21px}.home-heading h1{font-size:27px}.home-heading p{font-size:11px;margin-top:3px}.home-heading .primary{white-space:nowrap;min-height:38px}.dossier-controls{display:flex;gap:18px;align-items:center;margin-bottom:21px;flex-wrap:wrap}.search-field{background:#fff;border:1px solid var(--line);border-radius:7px;display:flex;align-items:center;gap:10px;padding:0 13px;flex:1;max-width:450px;min-width:240px;color:#87a0b1}.search-field input{padding-inline:0;border:0;box-shadow:none;background:transparent;font-size:11px}.search-field .icon{width:16px;height:16px}.filter-group{display:flex;gap:8px}.filter-group button{font-size:11px;background:#f6f9fc;border:1px solid #dce6ed;color:#7790a3;border-radius:16px;padding:7px 16px;min-height:34px;font-weight:450}.filter-group button[aria-pressed=true]{background:#e6f5f2;border-color:#239e91;color:#127e74}.dossier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,370px),1fr));gap:17px;align-items:stretch}.dossier-card{position:relative;display:flex;gap:16px;text-align:left;align-items:stretch;min-height:190px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:19px;color:var(--ink);transition:box-shadow .15s,border-color .15s}.dossier-card:hover{box-shadow:0 5px 20px #213e500b;border-color:#8fbeb6}.dossier-illustration{display:grid;place-items:center;width:66px;min-width:66px;background:#eaf3fb;border-radius:7px;color:#548aad;align-self:flex-start;height:80px}.dossier-illustration .icon{width:36px;height:36px;stroke-width:1.1}.dossier-information{flex:1;min-width:0}.dossier-card-heading{display:flex;gap:10px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.dossier-card h3{font-size:15px;letter-spacing:-.2px}.dossier-operation{font-size:10px;margin:4px 0 16px;color:#8297a7;min-height:30px;line-height:1.5}.milestone-track{display:flex;gap:2px;height:5px;max-width:100%;margin-bottom:6px;border-radius:4px;overflow:hidden}.milestone-track i{display:block;flex:1;background:#e7eef4}.milestone-track i.complete{background:#18a492}.milestone-caption{font-size:10px;color:#708a9d}.dossier-meta{display:flex;justify-content:space-between;gap:7px;flex-wrap:wrap;border-top:1px solid #edf2f6;margin-top:15px;padding-top:10px;color:#93a5b3;font-size:8px;line-height:1.5}.dossier-meta>span{overflow-wrap:anywhere;display:flex;gap:5px;align-items:center}.dossier-meta .icon{width:12px;height:12px}.dossier-arrow{position:absolute;bottom:17px;right:13px;color:#8ca5b5;display:none}.home-empty{padding:70px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}.home-empty p{font-size:12px}.empty{text-align:center;padding:28px}.workspace-overview{display:none}
/* ICP: one continuous board, a compact first row and real choice cards. */
.visit-board{padding:0;overflow:hidden}.visit-primary{display:grid;grid-template-columns:.95fr 1fr 1fr;gap:0;padding:21px 24px}.visit-primary>div{padding:0 23px;min-width:0;border-left:1px solid #e5edf3}.visit-primary>div:first-child{padding-left:0;border-left:0}.visit-primary>div:last-child{padding-right:0}.date-control .field>label{display:none}.field-caption{display:block;margin-bottom:8px}.date-control .field{gap:0}.choice-group{display:flex;padding:2px;border:1px solid #d8e3ec;border-radius:7px;background:#f4f7fa;gap:2px;min-height:39px}.choice-button{background:transparent;border:1px solid transparent;border-radius:5px;color:#668397;flex:1;padding:6px 14px;min-height:32px;font-size:11px;font-weight:450}.choice-button[aria-pressed=true]{background:var(--green);color:#fff;border-color:var(--green);box-shadow:0 2px 5px #00695e15}.choice-indicator{display:none}.visit-followup{padding:0 24px 20px}.visit-followup textarea{min-height:65px}.visit-board>.inline-notice{margin:0 24px 18px}.visit-facilities,.visit-instructions{border-top:1px solid #e7eef4;padding:21px 24px}.section-intro{margin-bottom:15px}.section-intro h2{font-size:13px;margin-bottom:3px}.section-intro p{font-size:10px;line-height:1.5}.facilities-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.facility-group{min-width:0;border:0;padding:0;margin:0}.facility-group legend{font-size:10px;color:#8297a6;margin-bottom:8px;padding:0}.facility-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.facility-card{position:relative;display:flex;align-items:center;gap:11px;border:1px solid #dfe8ef;background:#fff;border-radius:6px;text-align:left;padding:14px 12px;min-height:83px;color:#7592a4}.facility-card>.icon{width:25px;height:25px;stroke-width:1.4}.facility-card>span{display:flex;flex-direction:column;gap:4px;min-width:0}.facility-card strong{font-size:11px;font-weight:600;color:#34586e}.facility-card small{font-size:9px;line-height:1.45;color:#9babb6}.facility-card[aria-pressed=true]{background:#f0faf6;border-color:#27a291;color:#228f81}.radio-indicator{width:12px;height:12px;min-width:12px;border:1px solid #b8cbd5;border-radius:50%;margin-left:auto;align-self:flex-start}.facility-card[aria-pressed=true] .radio-indicator{border:4px solid #159f8b}.visit-instructions .field label{font-size:10px;color:#87a0af}.visit-instructions textarea{min-height:76px}.dpi-control{display:flex;align-items:flex-start;gap:10px;margin-top:15px;padding-top:14px;border-top:1px solid #edf2f6}.dpi-control>span{display:flex;flex-direction:column;gap:2px}.dpi-control strong{font-size:11px;font-weight:550}.dpi-control small{font-size:9px;font-weight:400}
/* Planning, risks and attachments. */
.board-heading{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--line)}.board-heading h2{font-size:13px;margin:0}.board-heading>span{color:#8da3b3;font-size:10px}.risk-board{padding:0;overflow:hidden}.table-wrap{overflow-x:auto;min-width:0;max-width:100%}table{border-collapse:collapse;width:100%;font-size:11px}th{text-align:left;font-weight:550;background:#f7fafe;color:#8a9faf;font-size:9px;letter-spacing:.4px;padding:12px 15px;border-bottom:1px solid #e5edf3;white-space:nowrap}td{padding:14px 15px;border-bottom:1px solid #e9eff5;vertical-align:top;color:#5e7b90;line-height:1.6}td strong{color:#365c73;font-size:11px}tr:last-child td{border-bottom:0}td:nth-child(1){color:#a0b0bc;font-size:10px}td .icon-button{width:30px;min-width:30px;height:30px;min-height:30px;padding:6px;background:#f8fbfd;border-color:#e5edf2}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:270px}.risk-row:hover,tr:has([data-risk]):hover{background:#f6faf9}.planning-overview{display:grid;grid-template-columns:1fr 1.5fr;gap:25px;padding:0;margin-bottom:20px;overflow:hidden}.planning-overview>.card{margin:0;border:0;border-radius:0;padding:19px}.planning-overview>.card+ .card{border-left:1px solid var(--line)}.planning-overview h2{font-size:13px}.planning-overview p{font-size:10px;overflow-wrap:anywhere}.planning-overview .note{margin:8px 0 0;padding:7px 0 0;font-size:9px}.planning-overview .form-top{margin-bottom:10px}.pgo-task{position:relative;padding:19px 20px 19px 49px;margin:12px 0!important}.pgo-task:before{content:attr(data-intervention);position:absolute;top:18px;left:15px;background:#e9f6f1;color:#3b9c83;display:grid;place-items:center;width:23px;height:23px;border-radius:50%;font-size:10px}.pgo-task h3{font-size:12px}.pgo-task .form-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:13px}.pgo-task .field:nth-child(1),.pgo-task .field:nth-child(2){grid-column:span 3}.pgo-task .field:nth-child(3),.pgo-task .field:nth-child(4){grid-column:span 2}.pgo-task .field label{font-size:10px}.pgo-task input{font-size:11px}.pgo-task .danger{background:transparent;border:0;font-size:9px;padding:4px 8px;min-height:28px}.file-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #edf2f6}.file-row:last-child{border:0}.file-row b{display:block;font-size:11px;overflow-wrap:anywhere}.file-row small{display:block;font-size:9px;margin-top:3px}.file-icon{width:34px;height:39px;display:grid;place-items:center;flex-shrink:0;border-radius:6px;background:#eaf6ef;color:#3c9775;font-size:8px;font-weight:650}.file-icon.pdf{background:#fff0eb;color:#b87965}.file-list{margin-top:15px}.annex-card{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid var(--line);padding:14px;border-radius:8px;margin:12px 0}.annex-card>img{width:86px;height:62px;object-fit:contain;background:#f7fafc;border:1px solid #e7eef3;border-radius:5px}.annex-card input{font-size:11px;background:transparent;border-color:transparent;padding:5px 7px;min-height:29px;font-weight:600}.annex-card input:focus{border-color:#b3d5c9}.annex-card small{display:block;margin:3px 7px;font-size:9px}.asset-actions,.annex-card .actions{display:flex;gap:4px;flex-wrap:wrap}.asset-actions .icon-button{width:31px;min-width:31px;height:31px;min-height:31px;padding:6px}.attachments-workspace>.card>p{font-size:11px;margin-bottom:15px}.attachments-workspace>.card:first-of-type{border-left:3px solid #2aa590}
/* Plan: one actual studio occupying the remaining viewport. */
body[data-view=plan] main{max-width:none;padding:0;display:flex;flex-direction:column;min-height:0;flex:1;height:calc(100dvh - var(--top) - var(--footer));overflow:hidden}body[data-view=plan] main>.lock-notice{margin:10px 15px 0;flex-shrink:0}.plan-studio{min-height:0;flex:1;display:grid;grid-template-rows:auto minmax(0,1fr) 29px;overflow:hidden}.plan-commandbar{display:flex;align-items:center;gap:15px;padding:11px 19px;background:#fbfdff;border-bottom:1px solid var(--line);flex-wrap:wrap}.plan-commandbar h1{font-size:16px;display:flex;align-items:center;gap:9px;white-space:nowrap;margin-right:auto;letter-spacing:-.35px}.plan-commandbar h1 .icon{width:22px;height:22px;color:#56788d}.toolbox{display:flex;align-items:center;gap:7px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:7px;padding:4px 6px;box-shadow:0 3px 12px #17344b05}.tool-icon-grid{display:flex;gap:2px}.toolbox .icon-button{background:transparent;color:#6d8799;border:0;border-radius:5px;width:31px;min-width:31px;height:31px;min-height:31px;padding:6px}.toolbox .icon-button.active,.toolbox .icon-button[aria-pressed=true]{background:#e6f5f1;color:#078e80}.history-tools{border-left:1px solid #e4ecf3;padding-left:6px}.toolbox .icon-button:hover:not(:disabled){background:#f0f6f9}.color-row{display:flex;gap:6px;align-items:center;border-left:1px solid #e4ecf3;padding-left:10px;margin:0 5px 0 0}.color-swatch{width:15px;min-width:15px;height:15px;padding:0;border-radius:50%;box-shadow:0 0 0 2px #fff;border:0;min-height:15px}.swatch-blue{background:#338bb6}.swatch-green{background:#259e74}.swatch-red{background:#cf6556}.swatch-amber{background:#d6a444}.plan-view-controls{display:flex;align-items:center;gap:2px;border-left:1px solid #e4ecf3;padding-left:6px}.zoom-label{background:transparent;border:0;color:#6b879b;font-size:9px;width:43px;min-height:31px;padding:5px}.plan-file-actions{display:flex;gap:7px;align-items:center}.plan-file-actions .primary{min-height:37px;padding:8px 12px;font-size:10px}.plan-file-actions>.icon-button{width:35px;min-width:35px;height:35px;min-height:35px}.plan-file-actions .icon{width:17px;height:17px}.canvas-wrap{position:relative;overflow:auto;min-height:0;min-width:0;background-color:#e9eff4;background-image:radial-gradient(#c8d6e0 .7px,transparent .7px);background-size:17px 17px;overscroll-behavior:contain;scrollbar-width:thin}.canvas-wrap canvas{width:100%;height:auto;display:block;background:white;max-width:none;touch-action:none}.canvas-wrap canvas.is-panning{cursor:grab}.canvas-wrap canvas.is-panning:active{cursor:grabbing}.canvas-hint{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:25px}.canvas-hint h2{font-size:19px;color:#5f8196;font-weight:550}.canvas-hint p{font-size:11px;max-width:370px;line-height:1.7}.canvas-hint small{font-size:9px;color:#97adbc}.canvas-hint .primary{margin:6px 0;min-height:39px;font-size:11px}.plan-empty-icon{width:66px;height:66px;border:1px solid #d4e2ec;border-radius:15px;background:#f5f9fccc;display:grid;place-items:center;color:#89a9bc;margin-bottom:3px}.plan-empty-icon .icon{width:35px;height:35px;stroke-width:1.1}.plan-statusbar{display:flex;align-items:center;gap:15px;background:#f9fcfe;border-top:1px solid var(--line);padding:4px 18px;color:#8da4b4;font-size:8px}.plan-statusbar small{font-size:8px;margin-left:auto}.plan-page-choice{font-size:9px;display:flex;gap:7px;align-items:center}.plan-page-choice select{width:auto;font-size:9px;padding:0 7px;min-height:20px;border:0;background:transparent}
/* Signature: a genuine document reader beside a compact capture panel. */
.signature-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(285px,1fr);gap:20px;align-items:start}.signature-layout .card{margin-top:0;padding:17px}.preview-card{min-width:0}.preview-card h2{font-size:12px}.preview-navigation{display:flex;align-items:center;gap:6px;padding:6px 8px;background:#f5f9fc;border:1px solid #e6eef4;border-radius:6px;margin-bottom:12px}.preview-navigation .icon-button{width:27px;min-width:27px;height:27px;min-height:27px;padding:5px;background:transparent;border:0}.preview-navigation span{font-size:10px;color:#6c8b9e;margin-right:auto;white-space:nowrap}.preview-navigation .link-button{font-size:9px}.pdf-scroll{height:calc(100dvh - 288px);min-height:350px;overflow:auto;background:#e8eef3;border:1px solid #dce7ee;border-radius:5px;overscroll-behavior:contain}.pdf-page{position:relative;width:100%;line-height:0}.pdf-page img{display:block;width:100%;height:auto}.signature-target{position:absolute;border:2px solid #1ba489;background:#1ba48915;box-shadow:0 0 0 1px #fff8;pointer-events:none}.preview-position{font-size:9px;display:block;margin-top:9px}.preview-placeholder{min-height:350px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;text-align:center;padding:20px}.preview-placeholder p{font-size:11px}.signature-panel{position:sticky;top:15px}.signature-panel h2{font-size:13px}.signature-panel .field{margin-bottom:13px}.signature-panel .field label{font-size:10px}.signature-panel select,.signature-panel input{min-height:36px;font-size:11px}.signature-panel .form-top{margin-bottom:14px}.signature-panel>label{display:block;font-size:10px;margin-bottom:7px}.signature-pad{width:100%;height:auto;background:#fbfdfd;border:1px dashed #b8cfd9;border-radius:6px;touch-action:none;display:block}.signature-panel .checkline{font-size:10px}.signature-panel .primary{width:100%;font-size:11px;min-height:39px}.signature-panel .note{font-size:9px;margin-top:12px}.signature-panel h3{font-size:10px;margin:17px 0 3px;color:#7794a6;letter-spacing:.3px}.signature-panel small{font-size:9px}.signed-person{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#64859b;border-bottom:1px solid #edf2f6;padding:10px 0;gap:8px}.signed-person .badge{font-size:8px}.signature-panel .link-button{font-size:9px}
/* Imports, reference details, export library and dialogs. */
.dropzone{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;padding:36px 20px;min-height:280px;border:1px dashed #adcdbf;border-radius:8px;background:#f5fbf8;text-align:center;cursor:pointer}.dropzone.dragging{background:#e2f5ed;border-color:#2a9f7c}.dropzone input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.upload-icon{width:51px;height:51px;border-radius:12px;background:#e6f5ec;display:grid;place-items:center;color:#399b78;margin-bottom:7px}.upload-icon .icon{width:26px;height:26px}.dropzone strong{font-size:13px;font-weight:550}.dropzone p{font-size:11px}.dropzone small{font-size:10px}.flow-list{padding-left:17px;color:#648195;font-size:12px;line-height:2.5;margin:0 0 20px}.flow-list+p{font-size:11px;line-height:1.8}.imported-group{padding:0!important;overflow:hidden}.imported-group summary{padding:16px 20px;font-size:12px;cursor:pointer;list-style-position:inside;color:#4f7086}.imported-group summary small{font-size:9px;margin-left:12px;font-weight:400;color:#a1b3bf}.imported-group .form-grid{padding:20px;border-top:1px solid #e9f0f5}.card>summary{cursor:pointer;font-size:12px;font-weight:550}.card>summary~p{font-size:11px;margin-top:13px}.download-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.export-row{border:1px solid #e2ebf1;border-radius:7px;padding:14px;display:flex;align-items:center;gap:11px;flex-wrap:wrap}.export-row .grow{flex-basis:calc(100% - 48px)}.export-row b{display:block;font-size:11px;font-weight:550}.export-row>small{font-size:9px}.export-row .secondary{margin-left:auto;min-height:28px;font-size:9px;padding:6px 10px}.export-row .file-icon{width:31px;height:35px;font-size:7px}.task{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #edf2f6}.task:last-child{border:0}.task .grow{flex:1}.task strong,.task b{font-size:11px;display:block}.task p{font-size:10px}.task .link-button{font-size:9px}.task-icon{display:grid;place-items:center;min-width:28px;width:28px;height:28px;background:#f5f9fb;border-radius:6px;color:#809bab}.error{color:#b14f42;font-size:11px}#generation-status{margin-top:0;min-height:45px}.loading{padding:55px;text-align:center;color:#879fac}.spinner{display:inline-block;width:17px;height:17px;border:2px solid #cfe5db;border-top-color:#189a7b;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}footer{height:var(--footer);min-height:var(--footer);display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 28px;background:#fbfdff;border-top:1px solid var(--line);flex-shrink:0}footer .actions{margin-left:auto;flex-wrap:nowrap}footer .actions .primary{min-width:130px;min-height:37px;font-size:11px}footer .actions .secondary{min-height:37px;font-size:11px}footer small,.footer-hint{font-size:9px;color:#94a9b7;line-height:1.6}body[data-view=home] footer{height:43px;min-height:43px;background:transparent;border:0}body[data-view=home] footer .footer-hint{font-size:9px}#toast{position:fixed;bottom:85px;left:50%;transform:translateX(-50%);z-index:90;max-width:min(640px,calc(100vw - 26px));background:#17483e;color:#fff;border-radius:8px;padding:13px 19px;font-size:11px;line-height:1.6;box-shadow:0 9px 30px #16374b25}#toast.error{background:#8a4238;color:#fff}dialog{width:630px;max-width:calc(100vw - 28px);max-height:90dvh;overflow-y:auto;border:1px solid #e0eaf1;border-radius:12px;padding:26px;color:var(--ink);box-shadow:0 22px 90px #0d2d4530}dialog::backdrop{background:#09223688;backdrop-filter:blur(3px)}dialog h2{font-size:17px;margin-bottom:10px}dialog p{font-size:12px;margin-bottom:15px}dialog .form-grid{margin-top:18px}dialog .actions{margin-top:22px;justify-content:flex-end}.login-body{min-height:100dvh;background:var(--canvas);display:grid;place-items:center;padding:25px}.login-card{display:grid;grid-template-columns:.9fr 1fr;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;max-width:860px;width:100%;margin:0;box-shadow:0 15px 60px #193d5110;padding:0}.login-identity{background:var(--navy);color:white;padding:50px 38px;display:flex;flex-direction:column;justify-content:space-between;gap:60px}.login-identity .brand{margin:0;font-size:22px}.login-identity .brand-name{display:block}.login-identity h1{font-size:29px;color:#f2fbff;max-width:250px;line-height:1.3;letter-spacing:-.8px}.login-identity p{font-size:11px;color:#8fb0c1;margin-top:13px}.login-identity small{color:#6f93a8;font-size:9px}.login-access{padding:50px 38px;display:flex;flex-direction:column;justify-content:center}.login-access .eyebrow{color:#2a9a81;font-size:9px;letter-spacing:1.4px;margin-bottom:10px}.login-access h2{font-size:24px;letter-spacing:-.6px;margin-bottom:10px}.login-access>p{font-size:11px}.login-access form{margin-top:27px}.login-access label{display:block;margin-bottom:9px}.login-access button{width:100%;margin-top:16px;justify-content:space-between}.login-access small{margin-top:25px;font-size:9px;line-height:1.8;color:#91a6b4}.login-access .error{margin-top:8px;font-size:11px}
/* Adaptive composition, preserving the same controls on each device. */
@media(min-width:1700px){main{padding-top:30px}.dossier-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.visit-primary{padding-block:25px}.visit-facilities,.visit-instructions{padding-block:25px}}
@media(max-width:1200px){:root{--context:200px}main{padding:23px}.visit-primary{padding:19px}.visit-primary>div{padding-inline:14px}.visit-facilities,.visit-instructions{padding:20px}.facilities-grid{gap:17px}.facility-options{grid-template-columns:1fr}.facility-card{min-height:61px}.signature-layout{grid-template-columns:minmax(0,1.5fr) minmax(270px,1fr)}.plan-commandbar{gap:10px;padding:10px 13px}.plan-commandbar h1{font-size:14px}.toolbox{order:3;width:100%;justify-content:center}.plan-file-actions{margin-left:auto}.cols-main{grid-template-columns:minmax(0,1fr)}.cols-main>aside.card{margin:0}.dossier-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr))}}
@media(max-width:950px){.signature-layout{grid-template-columns:minmax(0,1fr)}.signature-panel{position:static}.pdf-scroll{height:55dvh;min-height:310px}.planning-overview{grid-template-columns:1fr}.planning-overview>.card+.card{border-left:0;border-top:1px solid var(--line)}.visit-primary{grid-template-columns:1fr 1fr;gap:18px}.visit-primary>.date-control{grid-column:1/-1;border:0;padding:0;max-width:250px}.visit-primary>.decision-control{padding:0;border:0}.facilities-grid{grid-template-columns:1fr;gap:18px}.facility-options{grid-template-columns:1fr 1fr}.pgo-task .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pgo-task .field:nth-child(n){grid-column:auto}}
@media(max-width:800px){:root{--rail:62px;--top:54px;--footer:63px}.sidebar,.has-dossier .sidebar,body:not(.has-dossier):not(.menu-collapsed) .sidebar{width:min(315px,90vw);z-index:60;transform:none;box-shadow:15px 0 40px #09223622}.app-rail,body:not(.has-dossier):not(.menu-collapsed) .app-rail{width:var(--rail);min-width:var(--rail);padding:18px 8px 10px;align-items:center}.has-dossier .context-panel{display:block;width:calc(min(315px,90vw) - var(--rail));min-width:0;flex:1}.menu-collapsed .sidebar,.menu-collapsed.has-dossier .sidebar{transform:translateX(-100%);width:min(315px,90vw);box-shadow:none}.menu-collapsed .context-panel{display:block}.menu-backdrop{display:block;position:fixed;inset:0;border:0;border-radius:0;width:100%;height:100%;background:#0c253b66;z-index:55}.menu-close{display:block;margin:10px 12px 0 auto;background:transparent;color:#92b1c2;font-size:11px;padding:8px;min-height:35px}.brand{margin-bottom:25px}.rail-link{width:41px;padding:9px}.brand-name,body:not(.has-dossier):not(.menu-collapsed) .brand-name{display:none}body:not(.has-dossier):not(.menu-collapsed) .rail-link{justify-content:center;width:41px}body:not(.has-dossier):not(.menu-collapsed) .rail-link>span{display:none}.workspace,.has-dossier .workspace,.menu-collapsed .workspace,body:not(.has-dossier):not(.menu-collapsed) .workspace{margin-left:0}.topbar{padding:0 14px;gap:8px;position:sticky;top:0;z-index:30}#breadcrumb{gap:7px;font-size:10px}#breadcrumb>span:first-child{max-width:200px}#breadcrumb strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.workspace-badge{display:none}#save-status{display:none}.top-actions{gap:5px}.top-actions #save{font-size:10px}main{padding:20px 16px}.page-heading{margin-bottom:18px;gap:12px;align-items:flex-start}.page-heading-main{gap:9px}.page-heading h1{font-size:22px}.page-symbol{width:25px;height:31px}.page-symbol .icon{width:24px;height:24px}.lead{font-size:10px}.home-heading{gap:14px}.home-heading h1{font-size:25px}.home-heading .primary{font-size:10px;gap:6px;padding-inline:11px}.home-heading .primary .icon{width:16px;height:16px}.search-field{width:100%;min-width:0;max-width:none}.dossier-controls{gap:12px}.search-field{flex-basis:100%}.filter-group{gap:7px}.filter-group button{font-size:10px;padding:7px 15px;min-height:33px}.dossier-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.dossier-card{min-height:177px;padding:17px;gap:13px}.dossier-illustration{width:58px;min-width:58px;height:69px}.dossier-card h3{font-size:14px}.card{padding:18px}.form-grid{gap:17px}.cols-2{grid-template-columns:minmax(0,1fr)}input,select,textarea{font-size:16px}.field>label{font-size:11px}.visit-primary input,.visit-board input,.visit-board select,.visit-board textarea{font-size:16px}.visit-primary .date-control{max-width:none}.visit-primary>.date-control{grid-column:1/-1}.visit-primary{gap:16px}.choice-button{min-height:38px;font-size:12px}.choice-group{min-height:44px}.facility-card{min-height:72px}.facility-card strong{font-size:11px}.facility-card small{font-size:9px}.visit-instructions textarea{min-height:90px}.section-intro p{font-size:10px}.plan-commandbar{padding:9px 11px;gap:8px}.plan-commandbar h1{font-size:14px}.plan-commandbar h1 .icon{width:20px;height:20px}.toolbox{padding:4px;gap:5px;justify-content:flex-start;order:3}.toolbox .icon-button{width:35px;min-width:35px;height:35px;min-height:35px}.color-row{padding-left:8px;gap:6px}.color-swatch{width:17px;min-width:17px;height:17px}.plan-view-controls{margin-left:auto}.plan-file-actions .primary{min-height:35px;font-size:10px}.plan-file-actions>.icon-button{width:33px;min-width:33px}.canvas-hint{padding:23px;gap:10px}.canvas-hint h2{font-size:18px}.canvas-hint p{font-size:11px}.plan-statusbar{padding-inline:11px}.plan-statusbar small{font-size:8px}.preview-navigation .link-button{font-size:9px;max-width:140px}.signature-panel .field input,.signature-panel .field select{font-size:16px}.signature-panel .checkline{font-size:11px}.signature-panel .primary{min-height:44px}.signed-person{font-size:11px}.pgo-task .form-grid input{font-size:16px}.pgo-task .form-grid .field label{font-size:10px}.planning-overview .form-grid{grid-template-columns:1fr 1fr}.annex-card>img{width:66px;height:57px}.annex-card .grow{flex-basis:calc(100% - 100px)}.annex-card{flex-wrap:wrap}.asset-actions{margin-left:auto}.export-row .secondary{min-height:35px}.file-row b{font-size:10px}.file-row .badge{font-size:8px}.file-row{gap:9px}footer{padding:12px 16px}footer>small{display:none}footer .actions{width:100%;justify-content:flex-end}footer .actions .primary{min-width:120px;min-height:39px}.footer-hint{font-size:9px}.task p{font-size:10px}.task{gap:8px}.checkline{font-size:11px}.login-card{max-width:630px;grid-template-columns:.8fr 1fr}.login-identity{padding:35px 26px;gap:35px}.login-identity h1{font-size:24px}.login-access{padding:35px 26px}.login-access h2{font-size:22px}.login-access input{font-size:16px}.menu-collapsed .app-rail{pointer-events:none}}
@media(max-width:480px){main{padding:18px 13px}.topbar{padding-inline:10px}#breadcrumb>span:first-child{max-width:100px;font-size:9px}#breadcrumb strong{font-size:10px}.home-heading{align-items:flex-start}.home-heading .primary{max-width:135px;font-size:10px}.home-heading p{font-size:10px}.dossier-grid{grid-template-columns:1fr}.dossier-card{min-height:178px}.dossier-card-heading{gap:6px}.dossier-card h3{font-size:13px}.dossier-card .badge{font-size:8px}.dossier-operation{font-size:10px}.dossier-meta{font-size:8px}.page-heading .badge{font-size:8px}.visit-primary{display:flex;flex-direction:column;padding:18px;gap:17px}.visit-primary>div{padding:0;width:100%}.visit-facilities,.visit-instructions{padding:18px}.facility-options{gap:8px}.facility-card{padding:12px 10px;gap:8px;flex-wrap:wrap}.facility-card>.icon{width:22px;height:22px}.facility-card .radio-indicator{position:absolute;top:10px;right:8px}.facility-card>span{flex-basis:100%;gap:2px}.facility-card small{font-size:8px}.visit-board>.inline-notice{margin-inline:18px}.card{padding:16px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.plan-commandbar h1{font-size:13px}.plan-file-actions .primary{padding:8px}.plan-file-actions .primary>span{font-size:9px}.toolbox{gap:4px;width:100%}.toolbox .icon-button{width:31px;min-width:31px;height:34px;min-height:34px;padding:6px}.history-tools{padding-left:3px}.color-row{gap:6px;padding-left:6px;margin-right:0}.plan-view-controls{border-left:0;padding-left:0;justify-content:flex-end;border-top:1px solid #e5edf3;padding-top:4px;flex-basis:100%}.canvas-hint h2{font-size:16px}.canvas-hint p{font-size:10px}.canvas-hint .primary{font-size:10px}.plan-statusbar small{display:none}.plan-statusbar span{font-size:8px}.pgo-task{padding:16px 15px 16px 42px}.pgo-task:before{left:11px;width:21px;height:21px}.pgo-task .form-grid{grid-template-columns:1fr}.planning-overview .form-grid{grid-template-columns:1fr}.signature-layout .card{padding:14px}.preview-navigation{flex-wrap:wrap}.preview-navigation .link-button{max-width:none;flex-basis:100%;min-height:22px;font-size:9px}.pdf-scroll{height:48dvh;min-height:280px}.download-grid{grid-template-columns:1fr}.card h2{font-size:14px}.annex-card .asset-actions{width:100%;justify-content:flex-end}.imported-group summary{padding:14px;font-size:11px}.imported-group summary small{display:block;padding-left:15px;margin:3px 0 0}.imported-group .form-grid{padding:16px}.dropzone{min-height:235px;padding:25px 16px}.dropzone strong{font-size:12px}.dropzone p{font-size:10px}.dropzone small{font-size:9px}dialog{padding:20px}.login-body{padding:17px}.login-card{grid-template-columns:1fr;max-width:400px}.login-identity{padding:25px 27px;gap:0}.login-identity .brand{min-height:30px;margin:0}.login-identity .brand-name{font-size:19px}.login-identity h1,.login-identity p,.login-identity small{display:none}.login-access{padding:28px 27px}.login-access h2{font-size:23px}.login-access small{margin-top:20px}.login-access form{margin-top:22px}.login-access .primary{min-height:44px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition:none!important}}
[hidden]{display:none!important}


@media(max-width:800px){body:not(.has-dossier) .context-panel{display:block;flex:1;min-width:0;width:auto}}

@media(max-width:800px){.rail-link{min-height:44px}.step{min-height:42px}.toolbox .icon-button{width:36px;min-width:36px;height:38px;min-height:38px}.facility-card{min-height:78px}.filter-group button{min-height:38px}.choice-button{min-height:40px}}
/* Prévéo 3.0: same visual identity, clear exports and account tools. */
.brand-name small{display:block;font-size:8px;letter-spacing:.1px;font-weight:400;color:#89aebf;margin-top:3px}.account-button{display:flex;align-items:center;gap:7px;font-size:10px;color:#597b8e;background:transparent;border-left:1px solid var(--line);border-radius:0;padding:5px 0 5px 13px}.account-button .icon{width:18px;height:18px}.scope-switch{display:flex;gap:4px;margin:0 0 19px;border-bottom:1px solid var(--line)}.scope-switch button{padding:10px 15px;border-radius:0;background:transparent;color:#8ba0af;font-size:12px;font-weight:500;border-bottom:2px solid transparent}.scope-switch button[aria-pressed=true]{border-bottom-color:var(--green);color:var(--green)}.dossier-owner{display:flex;gap:5px;align-items:center;font-size:9px;color:#829bad;margin-top:12px}.dossier-owner .icon{width:12px;height:12px}.exports-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(245px,.43fr);gap:20px;align-items:start}.export-sections{display:flex;flex-direction:column;gap:17px}.export-section{border:1px solid var(--line);border-radius:9px;background:#fff;overflow:hidden}.export-section>h2{display:flex;align-items:center;gap:10px;padding:15px 19px;font-size:13px;background:#fafcfe;border-bottom:1px solid #e7eef3;color:#365b70}.export-section>h2 .icon{width:19px;height:19px;color:#528b97;stroke-width:1.4}.complete-section{border-color:#b9ddd3}.complete-section>h2{background:#f4faf7;color:#2a8b74}.document-export-row{display:flex;align-items:center;gap:15px;justify-content:space-between;margin:0 19px;padding:15px 0;border-bottom:1px solid #edf2f6;min-height:80px}.document-export-row:last-child{border:0}.document-export-row>div:first-child{min-width:0}.document-export-row strong{display:block;color:#44677e;font-size:12px;font-weight:550}.document-export-row small{display:block;font-size:9px;margin-top:4px;color:#96a8b6}.format-actions{display:flex;gap:17px;align-items:center;flex-shrink:0}.format-action{width:44px;min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#6b8b9e;border-radius:6px;padding:3px}.format-action svg{width:25px;height:27px}.format-action>span{font-size:7px;font-weight:600;letter-spacing:.6px}.format-action.format-pdf{color:#b16e66}.format-action.format-excel{color:#428f77}.format-action.format-zip{color:#3a8f96}.format-action:hover{background:#f1f7f8}.format-unavailable{opacity:.35;cursor:not-allowed}.format-unavailable svg{color:#8197a7}.format-unavailable small{font-size:7px;white-space:nowrap;letter-spacing:0;margin:0}.email-export{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 19px;border-top:1px solid #e2eee9;background:#fbfefc}.email-export strong{font-size:11px;font-weight:550;display:block;color:#5a7c86}.email-export small{display:block;font-size:9px;margin-top:4px;overflow-wrap:anywhere}.email-export .secondary{font-size:10px;white-space:nowrap;padding:8px 11px;min-height:35px}.email-export .icon{width:16px;height:16px}.remaining-points{margin:0!important;padding:18px;position:sticky;top:14px}.remaining-points h2{font-size:12px;margin-bottom:3px}.remaining-point{display:flex;gap:9px;padding:13px 0;border-bottom:1px solid #edf2f6}.remaining-point:last-child{border:0}.remaining-point strong{font-size:10px;line-height:1.6;color:#698496;display:block;font-weight:500}.remaining-point .link-button{font-size:9px;justify-content:flex-start;padding:3px 0;min-height:25px;gap:4px}.remaining-point .icon{width:12px;height:12px}.point-dot{width:6px;height:6px;min-width:6px;background:#d6af62;border-radius:50%;margin-top:5px}.point-dot.signature{background:#7f9eb4}.toolbox .clear-annotations{background:transparent;color:#8ca2b2;font-size:9px;padding:5px 8px;min-height:31px;font-weight:450}.toolbox .clear-annotations:hover{background:#fff1ed;color:#b5796b}.plan-statusbar #plan-save-state{font-size:9px;color:#5a9c86}.plan-statusbar #plan-save-state.error{color:#b55d50}.plan-statusbar #plan-retry{min-height:20px;font-size:9px;padding:1px 5px}.toolbox [data-tool=delete].active{color:#ba665a;background:#fff0ea}.account-card{max-width:780px;margin-bottom:20px}.account-card .actions{justify-content:space-between;margin-top:19px}.users-board{padding:0}.users-board small{display:block;font-size:9px;margin-top:2px}.users-board .actions{flex-wrap:wrap}.inactive-user{opacity:.5}.login-access label{margin-top:12px}.login-access label:first-child{margin-top:0}
@media(max-width:1100px){.exports-layout{grid-template-columns:minmax(0,1fr)}.remaining-points{position:static}.remaining-point{display:inline-flex;width:calc(50% - 10px);margin-right:10px;vertical-align:top}.plan-statusbar small{display:none}}
@media(max-width:800px){.account-button #account-name-label{display:none}.account-button{padding-left:8px;min-height:36px}.format-action{width:46px;min-height:48px}.format-actions{gap:12px}.document-export-row{margin-inline:16px;padding:13px 0}.document-export-row strong{font-size:12px}.export-section>h2{padding:14px 16px}.email-export{padding:14px 16px;flex-wrap:wrap}.email-export .secondary{min-height:40px}.plan-statusbar #plan-save-state{max-width:65%;font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scope-switch button{min-height:42px}.toolbox .clear-annotations{font-size:9px;min-height:38px}.users-board td{font-size:11px}.users-board .small{min-height:36px}}
@media(max-width:480px){.remaining-point{display:flex;width:100%;margin:0}.format-actions{gap:9px}.document-export-row{gap:8px;margin-inline:14px}.document-export-row strong{font-size:11px}.document-export-row small{font-size:8px}.email-export .secondary{width:100%;justify-content:center}.email-export>div{width:100%}.exports-layout{gap:17px}.export-section>h2{font-size:12px}.account-card .actions{flex-direction:column;align-items:stretch}.account-card .actions>*{width:100%}.plan-commandbar .toolbox{gap:3px}.history-tools{flex-wrap:wrap}.plan-view-controls{justify-content:flex-end}}

/* 3.1: real progress, compact interventions and mobile reading cards. */
.mobile-risk-list,.mobile-user-list{display:none}
.generation-progress{padding:17px 19px;border:1px solid #cde5de;border-radius:9px;background:#fff;margin-bottom:18px}
.generation-progress>div{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:11px;min-width:0}
.generation-progress strong{font-size:12px;font-weight:550;overflow-wrap:anywhere;min-width:0}
.generation-progress span{font-size:11px;color:var(--green);white-space:nowrap}
.generation-progress progress{appearance:none;-webkit-appearance:none;display:block;width:100%;height:8px;border:0;border-radius:8px;overflow:hidden;background:#e5eeeb;accent-color:var(--green)}
.generation-progress progress::-webkit-progress-bar{background:#e5eeeb;border-radius:8px}
.generation-progress progress::-webkit-progress-value{background:var(--green);border-radius:8px;transition:width .35s ease}
.generation-progress progress::-moz-progress-bar{background:var(--green);border-radius:8px}
.generation-error{border-color:#e8c4b9;background:#fff9f7}.generation-error strong{color:#a45846}
.generation-done{background:#f2fbf6}.is-generating{opacity:.85!important;cursor:progress!important}
.is-generating .spinner{width:16px;height:16px;flex-shrink:0;border-color:#ffffff66;border-top-color:white}
.pgo-task-heading{min-width:0;flex:1}.pgo-task-heading p{font-size:12px;color:#47697b;white-space:pre-wrap;margin:5px 0;overflow-wrap:anywhere}
.pgo-task-heading small{display:block;overflow-wrap:anywhere}.pgo-task.is-compact .form-top{margin-bottom:0}
.pgo-task.is-compact .form-top>.actions{align-self:flex-start}.task-validation{justify-content:flex-end;margin-top:18px}
.task-error{color:#a45846;background:#fff4ef;border-radius:6px;padding:10px 12px;margin-top:12px;font-size:12px;overflow-wrap:anywhere}
.risk-mobile-card,.user-mobile-card{padding:18px;border-bottom:1px solid var(--line);min-width:0}
.risk-mobile-card:last-child,.user-mobile-card:last-child{border-bottom:0}
.risk-mobile-card header,.user-mobile-card header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;min-width:0}
.risk-mobile-card header>div,.user-mobile-card header>div{min-width:0;flex:1}
.risk-mobile-card h3,.user-mobile-card h3{overflow-wrap:anywhere;line-height:1.5}
.risk-mobile-card header small,.user-mobile-card header small{display:block;margin-bottom:5px}
.risk-mobile-card dl,.user-mobile-card dl{margin:16px 0 0;display:grid;gap:14px}
.risk-mobile-card dt,.user-mobile-card dt{font-size:10px;color:#8399a8;margin:0 0 4px}
.risk-mobile-card dd,.user-mobile-card dd{margin:0;color:#395a6f;font-size:13px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}
.user-mobile-card>.actions{margin-top:18px}

/* Do not hide horizontal overflow on the page: fix the sizing at its source. */
@media(max-width:950px){
  .workspace,main,section,article,aside,form,details,fieldset{min-inline-size:0}
  .page-heading,.home-heading,.board-heading{flex-wrap:wrap}
  .page-heading-main>div,.home-heading>div{min-width:0}
  h1,h2,h3,p,label,legend,summary,.note,.notice,.checkline,.signed-person,.task,.dossier-owner,.error{overflow-wrap:anywhere}
  input:not([type=checkbox]):not([type=radio]),select,textarea{display:block;inline-size:100%;max-inline-size:100%;min-inline-size:0;font-size:16px!important}
  input[type=date],input[type=time]{-webkit-appearance:none;appearance:none;min-width:0;-webkit-min-logical-width:0;max-width:100%;text-align:left}
  input::-webkit-date-and-time-value{min-height:1.5em;text-align:left}
  input::-webkit-datetime-edit{padding:0;min-width:0}
  select{overflow:hidden;text-overflow:ellipsis}
  textarea{overflow-wrap:anywhere}
  .field,.field>label,.form-grid>*,.form-top>*,.actions>*,.checkline>span,.dpi-control>span,.signed-person>span,.remaining-point>div,.notice>*,.plan-statusbar>*{min-width:0;max-width:100%}
  .form-grid,.planning-overview .form-grid,.pgo-task .form-grid,.cols-2,.planning-overview{grid-template-columns:minmax(0,1fr)}
  .form-grid .field,.pgo-task .field:nth-child(n){grid-column:auto}
  .form-top{gap:12px}.form-top>.actions{flex-wrap:wrap}
  .primary,.secondary,.danger,.bare,.link-button{max-width:100%;overflow-wrap:anywhere}
  .desktop-risk-table,.desktop-users-table{display:none}
  .mobile-risk-list,.mobile-user-list{display:block}
  .risk-board,.users-board{padding:0!important}
  .risk-mobile-card .icon-button{width:44px;height:44px;min-width:44px;min-height:44px}
  .user-mobile-card .actions button{min-height:44px;flex:1 1 120px}
  .pgo-task{padding:18px!important}
  .pgo-task:before{display:none}
  .pgo-task .form-top{align-items:flex-start;flex-wrap:wrap}
  .pgo-task .form-top>.actions{margin-left:auto}
  .pgo-task-heading{flex-basis:100%}
  .pgo-task .task-validation button{width:100%;min-height:44px}
  .planning-overview>.card{min-width:0}
  .planning-overview .form-top>label{white-space:normal;text-align:center}
  .signature-layout{grid-template-columns:minmax(0,1fr)!important}
  .signature-panel,.preview-card,.signature-layout .card{min-width:0;max-width:100%}
  .signature-panel select,.signature-panel input{width:100%;max-width:100%}
  .preview-navigation{flex-wrap:wrap}.preview-navigation span{white-space:normal;overflow-wrap:anywhere;min-width:0}
  .signature-pad{max-width:100%}
  .signed-person{flex-wrap:wrap}.signed-person>span:first-child{flex:1 1 120px}
  .file-row{min-width:0;align-items:flex-start}.file-row .grow{min-width:0}
  .annex-card{min-width:0;max-width:100%;flex-wrap:wrap}.annex-card strong,.annex-card small{overflow-wrap:anywhere}
  .annex-card .grow{min-width:0;flex:1 1 140px}
  .annex-card .asset-actions{width:100%;justify-content:flex-end}
  .document-export-row{flex-wrap:wrap}.document-export-row>div:first-child{flex:1 1 140px;overflow-wrap:anywhere}
  .format-actions{margin-left:auto;max-width:100%}.format-action{min-width:44px;min-height:48px}
  .email-export>div{min-width:0;max-width:100%}.email-export small{overflow-wrap:anywhere}
  .remaining-point{min-width:0}.remaining-point strong{overflow-wrap:anywhere}
  .topbar{min-width:0}.top-actions{min-width:0}#breadcrumb{overflow:hidden}
  .filter-group,.scope-switch{flex-wrap:wrap;max-width:100%}
  .dossier-card{max-width:100%;min-width:0}.dossier-operation{overflow-wrap:anywhere}
  footer{height:auto;min-height:var(--footer);flex-wrap:wrap;padding-bottom:max(12px,env(safe-area-inset-bottom))}
  footer .actions{min-width:0;max-width:100%;flex-wrap:wrap;gap:8px}
  footer .actions .primary{min-width:0;flex:1 1 160px;min-height:44px}
  footer .actions .secondary{min-width:0;min-height:44px;flex:0 1 auto}
  footer #import-action{margin-left:auto;min-width:0;max-width:100%;min-height:44px}
  dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:20px;margin:auto}
  dialog h2,dialog p{overflow-wrap:anywhere}
  dialog .form-grid{grid-template-columns:minmax(0,1fr)}
  dialog .field.full{grid-column:auto}
  dialog .actions{flex-wrap:wrap;gap:8px}
  dialog .actions>button{min-height:44px;flex:1 1 120px}
  .login-body{padding:12px}.login-card{grid-template-columns:minmax(0,1fr);width:100%;max-width:440px}
  .login-identity{padding:22px 24px;gap:0}.login-identity h1,.login-identity p,.login-identity>small{display:none}
  .login-access{padding:25px 22px;min-width:0}.login-access .primary{min-height:44px}
  .login-access h2{overflow-wrap:anywhere}.login-access form{min-width:0}
  .toolbox{max-width:100%;min-width:0;gap:6px!important}
  .tool-icon-grid,.history-tools,.color-row,.plan-view-controls{max-width:100%;flex-wrap:wrap}
  .toolbox .icon-button{min-width:44px;width:44px;min-height:44px;height:44px}
  .tool-icon-grid{gap:2px}.toolbox .clear-annotations{max-width:100%;min-height:44px;white-space:normal}
  .plan-commandbar{min-width:0}.plan-commandbar h1{min-width:0;max-width:100%;white-space:normal}
  .plan-statusbar{height:auto;min-height:35px;flex-wrap:wrap;gap:3px 10px}
  .plan-statusbar #plan-save-state{max-width:100%;white-space:normal;overflow:visible;text-overflow:clip}
  .plan-studio{grid-template-rows:auto minmax(0,1fr) auto}
  .plan-page-choice select{width:auto;max-width:100%;font-size:16px!important}
  .generation-progress{padding:15px}.generation-progress>div{gap:8px}
  .generation-progress strong{font-size:12px}.generation-progress span{flex-shrink:0}
}


/* Keep even panoramic or very tall source plans inside the application's viewport. */
body[data-view=plan] .workspace{height:100dvh;min-height:0;overflow:hidden}
body[data-view=plan] main{height:auto;flex:1 1 0;min-height:0}
body[data-view=plan] .topbar{flex-shrink:0}
body[data-view=plan] .plan-studio{flex:1 1 0;min-height:0;grid-template-rows:auto minmax(0,1fr) auto}
.canvas-wrap canvas{margin:0 auto}

.plan-view-controls .zoom-label{width:auto;min-width:66px;white-space:nowrap}
