.ws-top{display:flex;gap:16px;align-items:flex-start;margin-bottom:18px}.ws-top>a{font-size:13px;white-space:nowrap;color:#087e87}.ws-top h1{font-size:25px;margin:0}.ws-top p{font-size:12px;color:#62788a;margin:6px 0 0}.ws-tabs{display:flex;gap:8px;flex-wrap:wrap;position:sticky;top:76px;z-index:30;padding:10px 0;background:#f2f6f8}.ws-tabs button{background:#dfeaec;color:#214b5e}.ws-tabs button.active{background:#153f64;color:white}.ws-tabs #wsRun{margin-left:auto;background:#087e87;color:white}.ws-toolbar{padding:12px}.ws-tools{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px}.ws-tools button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:9px 4px;background:#edf4f7;color:#31566b;border:1px solid #c4d6df;min-height:64px;font-size:11px}.ws-tools button b{font-size:24px;line-height:1}.ws-tools button[aria-pressed=true]{background:#087e87;color:white;border-color:#087e87}.ws-controls{display:flex;align-items:end;gap:8px;flex-wrap:wrap;margin-top:12px}.ws-controls>label{font-size:11px}.ws-controls select{font-size:12px;padding:8px}.ws-controls button{font-size:12px;padding:10px 12px}.ws-draw-grid{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(260px,1fr);gap:16px;align-items:start}.ws-canvas-box{border:1px solid #c6d8e0;border-radius:12px;overflow:hidden;background:white;position:sticky;top:145px}.ws-canvas-box svg{display:block;width:100%;height:auto;touch-action:none;user-select:none;min-height:280px;max-height:75vh}.ws-canvas-legend{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px;padding:10px;font-size:10px;color:#426173;border-top:1px solid #d8e4e9}.ws-canvas-legend span{display:block;width:100%;text-align:center}.ws-dot{height:8px;width:8px;border-radius:50%;display:inline-block}.ws-dot.blue{background:#153f64}.ws-dot.teal{background:#367c92}.ws-dot.brown{background:#a36739}.ws-object{cursor:pointer}.ws-object.ws-selected{filter:drop-shadow(0 0 .06px #ff7400)}.ws-object.ws-selected>rect,.ws-object.ws-selected>circle{stroke:#e77b21;stroke-width:.08}.ws-side{padding:15px;min-width:0}.ws-side details+details{margin-top:20px}.ws-side summary,.ws-settings summary,.ws-files h2,details.panel>summary{font-size:16px;font-weight:700;cursor:pointer;margin-bottom:14px}.ws-side h3{font-size:15px}.ws-side label,.ws-settings label,.ws-grid-form label{font-size:11px;line-height:1.5}.ws-side input,.ws-settings input,.ws-grid-form input{width:100%;min-width:0;background:white;color:#16324b;border:1px solid #bdced8;border-radius:7px;padding:9px;font:inherit;margin:4px 0 10px;font-size:13px}.ws-side .fields{gap:10px}.ws-side select{padding:8px;margin:4px 0 10px;font-size:12px}.ws-side input[type=checkbox]{width:auto;margin:0}.ws-layers{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.ws-layers label{display:flex;align-items:center;gap:3px}.ws-side .actions{gap:6px}.ws-side .actions button{font-size:12px;padding:9px}.ws-side #wsObjects{max-height:300px;overflow:auto}#wsObjects button{display:block;width:100%;text-align:left;background:#edf4f7;color:#16324b;border:1px solid transparent;padding:9px 11px;margin:4px 0;font-size:12px}#wsObjects button span{font-size:10px;display:inline-block;min-width:58px;color:#637d8e}#wsObjects button.active{border-color:#087e87;background:#e1efef}.ws-settings{margin-top:18px}.ws-settings .fields{grid-template-columns:repeat(3,minmax(0,1fr))}.ws-wide{display:block}.ws-grid-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end}.ws-grid-form button{grid-column:1/-1}.ws-table-scroll{overflow-x:auto;margin:14px 0}.ws-table-scroll table{min-width:700px;font-size:12px}.ws-table-scroll table th{white-space:normal;color:#355b6f;text-align:left}.ws-table-scroll td{vertical-align:top;white-space:normal}.ws-table-scroll td:not(:first-child){text-align:right}.ws-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.ws-totals>div{border:1px solid #c7dbe3;background:#edf5f7;border-radius:10px;padding:16px}.ws-totals span{font-size:12px;display:block;line-height:1.5}.ws-totals strong{display:block;margin-top:8px;font-size:23px;color:#087e87}.ws-issues{padding-left:20px}.ws-issues li{margin:12px 0}.ws-issues button{background:#fff1e9;color:#8a481f;text-align:left;font-size:13px;font-weight:500;line-height:1.5}.ws-diagram{margin:20px 0;padding:12px;border:1px solid #d4e2e8;border-radius:9px;background:white}.ws-diagram figcaption{font-size:13px;font-weight:700;color:#16324b}.ws-diagram svg{display:block;width:100%;max-width:600px}#wsReport h2{font-size:22px;margin-bottom:14px}#wsReport p,#wsReport li{font-size:13px;line-height:1.7}#wsReport select{margin:8px 0}#wsAnalysis[hidden],#wsDrawing[hidden]{display:none!important}.ws-files{margin-top:20px}.ws-files button{font-size:12px}html[data-hkl-theme=dark] .ws-tabs{background:#101d28}html[data-hkl-theme=dark] .ws-top p{color:#acc0d0}html[data-hkl-theme=dark] .ws-totals>div{background:#203747;border-color:#385064}html[data-hkl-theme=dark] .ws-totals strong{color:#63cfcc}html[data-hkl-theme=dark] .ws-table-scroll th{color:#b4d4e5}html[data-hkl-theme=dark] .ws-side input,html[data-hkl-theme=dark] .ws-settings input,html[data-hkl-theme=dark] .ws-grid-form input{background:#142534;color:#e0eaf1}html[data-hkl-theme=dark] .ws-top>a{color:#63cfcc}html[data-hkl-theme=dark] .ws-layers{color:#dae6ee}@media(max-width:850px){.ws-draw-grid{grid-template-columns:1fr}.ws-canvas-box{position:relative;top:auto}.ws-canvas-box svg{min-height:300px}.ws-side .fields{grid-template-columns:repeat(2,minmax(0,1fr))}.ws-tools{grid-template-columns:repeat(4,minmax(0,1fr))}.ws-settings .fields{grid-template-columns:repeat(2,minmax(0,1fr))}.ws-tabs{top:69px}.ws-top h1{font-size:23px}.ws-tabs button{font-size:12px;padding:11px 10px}.ws-tabs #wsRun{margin-left:0;flex:1}.ws-totals strong{font-size:20px}.ws-totals>div{padding:12px}.ws-grid-form{grid-template-columns:repeat(2,minmax(0,1fr))}.ws-controls{gap:6px}.ws-controls>label:first-child{max-width:110px}.ws-side #wsObjects{max-height:230px}}@media print{.ws-top>a,.ws-tabs,.ws-toolbar,.ws-side,.ws-controls,.ws-files,#wsStatus,.ws-settings,#wsDrawing>details,.ws-top p,.ws-canvas-legend{display:none!important}.ws-canvas-box{position:static;border:0}.ws-draw-grid{display:block}.ws-canvas-box svg{max-height:none;min-height:0}.ws-totals>div{background:white}.ws-table-scroll{overflow:visible}.ws-table-scroll table{min-width:0;font-size:9px;table-layout:fixed}.ws-table-scroll td,.ws-table-scroll th{overflow-wrap:anywhere}.ws-diagram{break-inside:avoid}.ws-totals{break-inside:avoid}#wsReport .panel{break-inside:auto;margin:20px 0}#wsReport h2{break-after:avoid}}

.ws-help{margin-top:20px}.ws-help li{font-size:13px;line-height:1.7;margin:10px 0}.ws-help ol{padding-left:22px}@media print{.ws-help{display:none!important}}
.ws3-stage{background:#edf3f7;border:1px solid #abc3d1;border-radius:16px;overflow:hidden;position:relative}.ws3-stage svg{display:block;width:100%;height:auto;max-height:75vh;aspect-ratio:1;min-height:0;touch-action:none;user-select:none}.ws3-stage p{margin:0;padding:8px 16px;color:#244b62;font-size:.85rem}.ws3-controls .actions{margin:10px 0;flex-wrap:wrap}.ws3-controls [aria-pressed=true]{outline:3px solid #22b1c1;outline-offset:1px}.ws3-controls button{min-height:44px}.ws3-controls input[type=checkbox]{width:auto}.ws3-controls #ws3Status button{display:block;margin-top:8px}.ws-edit-tools form{margin-top:16px}.ws-tabs{flex-wrap:wrap}.ws-tabs #wsRun{margin-left:auto}@media(max-width:600px){.ws-tabs button{flex:1;font-size:.88rem}.ws-tabs #wsRun{flex-basis:100%;margin-left:0}.ws3-controls .actions button{flex:1 1 42%;font-size:.85rem}.ws3-stage svg{min-height:0;max-height:none}}@media print{.ws3-controls{display:none}.ws3-stage svg{height:650px}.ws-edit-tools{display:none}}
.ws-stage-panel .actions{margin:12px 0;flex-wrap:wrap}.ws-stage-panel details{margin-top:12px}.ws-stage-panel summary{font-weight:650;cursor:pointer}.ws-stage-panel form{margin-top:12px}.ws-stage-panel input[type=checkbox]{width:auto}.ws-stage-panel>label{display:block;margin:10px 0}.ws-stage-panel .ws-layers{margin-top:12px}@media print{.ws-stage-panel{display:none}}
.ws-tools button[hidden]{display:none}
.ws-workbar{display:flex;align-items:center;gap:8px;margin:0 0 16px;flex-wrap:wrap}.ws-workbar button{min-height:44px}.ws-quick-stage{display:none}#wsFocusDrawer[hidden]{display:none!important}.ws-focus{overflow:hidden!important}.ws-focus>header,.ws-focus>#nav,.ws-focus>#toast{display:none!important}.ws-focus #app{position:fixed;inset:0;z-index:1000;max-width:none!important;width:100%;height:100%;margin:0!important;padding:8px!important;background:#f2f6f8;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box}.ws-focus .ws-top,.ws-focus .ws-help,.ws-focus .ws-files,.ws-focus .ws-canvas-legend{display:none!important}.ws-focus .ws-tabs{position:static;top:auto;margin:0;padding:0 0 6px;flex-shrink:0;background:transparent;gap:5px}.ws-focus .ws-tabs button{padding:9px;font-size:12px;min-height:40px}.ws-focus .ws-workbar{margin:0 0 6px;flex-shrink:0;gap:6px}.ws-focus .ws-workbar button{font-size:12px;padding:9px;min-height:40px}.ws-focus .ws-quick-stage{display:flex;gap:5px;align-items:center;font-size:11px;margin-left:auto}.ws-focus .ws-quick-stage select{font-size:12px;padding:7px;max-width:190px}.ws-focus #wsStatus{position:absolute;bottom:0;left:8px;right:8px;z-index:15;background:#153f64ed;color:white;margin:0;padding:5px 9px;max-height:38px;font-size:11px;overflow:auto;border-radius:4px}.ws-focus #wsDrawing,.ws-focus #ws3D{position:relative;display:flex;flex:1;min-height:0;flex-direction:column;padding-bottom:25px}.ws-focus #wsDrawing[hidden],.ws-focus #ws3D[hidden],.ws-focus #wsAnalysis[hidden]{display:none!important}.ws-focus .ws-draw-grid{display:block;flex:1;position:relative;min-height:0}.ws-focus .ws-canvas-box{position:absolute;inset:0;display:flex;flex-direction:column;border-radius:6px;max-height:none;top:0}.ws-focus #wsCanvas{width:100%;height:100%!important;max-height:none!important;min-height:0!important;aspect-ratio:auto!important;flex:1}.ws-focus .ws3-stage{position:absolute;inset:0 0 25px;border-radius:6px;display:flex;flex-direction:column}.ws-focus #ws3Canvas{width:100%;height:100%!important;max-height:none!important;min-height:0!important;aspect-ratio:auto!important;flex:1}.ws-focus .ws3-stage p{display:none}.ws-focus #ws3D>p{display:none}.ws-focus #wsFocusDrawer{position:absolute;z-index:50;right:8px;top:105px;bottom:36px;width:min(390px,94%);overflow:auto;background:#edf4f7;border:1px solid #86b5c6;border-radius:10px;padding:10px;box-shadow:0 4px 20px #153f6430;box-sizing:border-box}.ws-focus #wsFocusDrawer>.panel{margin-bottom:10px}.ws-focus .ws-side{display:block}.ws-focus #wsFocusDrawer .ws-tools{grid-template-columns:repeat(4,minmax(0,1fr))}.ws-focus #wsFocusDrawer .ws-controls{align-items:center}.ws-focus #wsFocusDrawer .ws-tools button[hidden]{display:none!important}#app:has(.ws-workbar){max-width:1680px}@media(max-width:600px){.ws-focus .ws-tabs #wsRun{flex-basis:auto;flex:1;font-size:11px}.ws-focus .ws-tabs button{flex:1;white-space:nowrap;font-size:11px}.ws-focus .ws-workbar button{font-size:11px}.ws-focus .ws-quick-stage{width:100%;margin:0}.ws-focus .ws-quick-stage select{max-width:none;flex:1}.ws-focus #wsFocusDrawer{top:150px}}@media print{.ws-workbar,#wsFocusDrawer{display:none!important}.ws-focus #app{position:static;height:auto;overflow:visible}.ws-focus #wsDrawing,.ws-focus #ws3D{min-height:700px}}
#wsFocusZoom{display:none}.ws-focus #wsFocusZoom{display:flex;gap:5px;position:absolute;bottom:45px;right:18px;z-index:20;background:#f2f6f8dc;padding:4px;border-radius:8px;box-shadow:0 2px 8px #153f6420}.ws-focus #wsFocusZoom button{min-width:44px;min-height:44px;padding:8px 12px;font-size:16px}

/* Commandes permanentes du dessin agrandi, sans duplication des outils. */
#wsFocusTools{display:none}#wsFocusTools[hidden]{display:none!important}.ws-focus #wsFocusTools{display:block;flex-shrink:0;margin-bottom:6px;padding:5px;border:1px solid #c4d6df;border-radius:8px;background:#e5eff3}.ws-focus #wsFocusTools .ws-tools{grid-template-columns:repeat(9,minmax(0,1fr));gap:4px}.ws-focus #wsFocusTools .ws-tools button{min-height:48px;font-size:10px;line-height:1.15;padding:4px 2px;gap:3px;border-radius:6px}.ws-focus #wsFocusTools .ws-tools button b{font-size:19px}.ws-focus #wsFocusTools .ws-tools button[hidden]{display:none!important}.ws-focus #wsFocusTools .ws-tools:has(button[data-tool=column][hidden]){grid-template-columns:repeat(5,minmax(0,1fr))}.ws-focus .ws-quick-actions{display:flex;gap:5px;margin-top:4px}.ws-focus .ws-quick-actions button{min-height:34px;padding:5px 9px;font-size:11px;flex:1}.ws-focus .ws-quick-actions button:disabled{opacity:.45}.ws-focus #wsFocusTools~#wsFocusDrawer{max-height:calc(100% - 80px)}@media(max-width:600px){.ws-focus #wsFocusTools .ws-tools{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-height:500px) and (min-width:601px){.ws-focus #wsFocusTools{padding:3px}.ws-focus #wsFocusTools .ws-tools button{min-height:42px}.ws-focus .ws-quick-actions{margin-top:2px}.ws-focus .ws-quick-actions button{min-height:28px;padding:3px}.ws-focus .ws-quick-stage{width:auto}.ws-focus .ws-workbar{flex-wrap:nowrap}.ws-focus .ws-tabs button,.ws-focus .ws-workbar button{min-height:32px;padding:5px}}@media print{#wsFocusTools{display:none!important}}

.ws-calculation-state{font-size:12px;background:#fff4dd;color:#6a4913;border:1px solid #e7d2aa;border-radius:6px;padding:8px 12px;margin:0 0 10px}.ws-calculation-state[data-state=current]{background:#e7f3ef;color:#245748;border-color:#a5cdbf}.ws-focus .ws-calculation-state{font-size:10px;padding:4px 8px;margin:0 0 4px;flex-shrink:0}.ws-parametric{margin-top:18px;padding-top:10px;border-top:1px solid #bdced7}.ws-parametric form{margin-bottom:12px}.ws-parametric button{margin-top:6px}.ws-selection-actions{display:flex;gap:4px;align-items:center;margin-top:4px}.ws-selection-actions span{font-size:11px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-selection-actions button{font-size:11px;padding:6px 9px;min-height:32px}.ws-selection-actions button:disabled{opacity:.4}@media print{.ws-calculation-state{display:none}}
@media(max-height:500px) and (min-width:601px){.ws-focus .ws-quick-actions{display:inline-flex;width:44%;vertical-align:middle}.ws-focus .ws-selection-actions{display:inline-flex;width:55%;vertical-align:middle;margin-top:2px;padding-left:5px;box-sizing:border-box}.ws-focus .ws-selection-actions button{min-height:28px;padding:3px 6px}.ws-focus .ws-calculation-state{padding:2px 7px;margin-bottom:3px;font-size:9px}}
