*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden}body{color:#e0e0e0;background:#1a1a2e;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex}.header{background:#16213e;border-bottom:1px solid #0f3460;flex-shrink:0;justify-content:space-between;align-items:center;height:48px;padding:0 20px;display:flex}.header h1{align-items:center;gap:8px;font-size:16px;font-weight:600;display:flex}.header h1 span{color:#e94560}.header-nav{align-items:center;gap:6px;margin-left:18px;display:flex}.header-link{color:#b8c4d6;border-radius:6px;align-items:center;gap:7px;height:30px;padding:0 10px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.header-link:hover,.header-link.active{color:#fff;background:#ffffff14}.auth-btn{cursor:pointer;border:none;border-radius:4px;padding:6px 16px;font-size:13px;font-weight:500;transition:background .2s}.btn-login{color:#fff;background:#e94560}.btn-login:hover{background:#d13a55}.btn-logout{color:#aaa;background:#2a2a4a;border:1px solid #3a3a5a}.btn-logout:hover{color:#fff;background:#3a3a5a}.user-info{align-items:center;gap:10px;display:flex}.main{flex:1;display:flex;overflow:hidden}.sidebar{background:#16213e;border-right:1px solid #0f3460;flex-direction:column;flex-shrink:0;width:340px;min-width:240px;display:flex;overflow:hidden}.sidebar-header{text-transform:uppercase;letter-spacing:.5px;color:#e94560;border-bottom:1px solid #0f3460;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:600;display:flex}.sidebar-content{flex:1;padding:6px 4px;overflow-y:auto}.sidebar-search{background:#16213e;border-bottom:1px solid #0f3460;flex-shrink:0;padding:8px}.sidebar-search input{color:#e0e0e0;background:#0a0a1a;border:1px solid #2a2a4a;border-radius:4px;outline:none;width:100%;padding:6px 10px;font-size:13px}.sidebar-search input:focus{border-color:#e94560}.tree-node{margin-left:14px}.tree-node.root{margin-left:0}.tree-item{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:4px;align-items:center;gap:6px;padding:5px 8px;font-size:13px;transition:background .15s;display:flex}.tree-item:hover{background:#e9456014}.tree-item.active{color:#fff;background:#e945602e}.tree-item .toggle{text-align:center;color:#666;flex-shrink:0;width:14px;font-size:9px;transition:transform .15s}.tree-item .toggle.open{transform:rotate(90deg)}.tree-item .toggle.leaf{visibility:hidden}.tree-item .icon{flex-shrink:0;font-size:15px}.tree-item .label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tree-item.viewable{color:#7dd3fc}.tree-item.viewable:hover{background:#7dd3fc1a}.tree-children{display:none}.tree-children.open{display:block}.tree-loading{color:#666;padding:4px 8px 4px 28px;font-size:12px;font-style:italic}.viewer-wrap{background:#0a0a1a;flex:1;position:relative;overflow:hidden}#forgeViewer{width:100%;height:100%;position:relative}.welcome{text-align:center;z-index:2;background:#0a0a1a;flex-direction:column;justify-content:center;align-items:center;padding:40px;display:flex;position:absolute;inset:0}.welcome h2{margin-bottom:8px;font-size:26px}.welcome h2 span{color:#e94560}.welcome p{color:#777;max-width:420px;margin-bottom:24px;font-size:14px;line-height:1.7}.welcome .cta{color:#fff;cursor:pointer;background:#e94560;border:none;border-radius:8px;padding:12px 36px;font-size:15px;font-weight:600;transition:background .2s}.welcome .cta:hover{background:#d13a55}.welcome .features{color:#555;gap:32px;margin-top:36px;font-size:13px;display:flex}.welcome .features div{flex-direction:column;align-items:center;gap:6px;display:flex}.welcome .features .feat-icon{font-size:28px}.toast{color:#e0e0e0;z-index:10000;text-align:center;background:#16213e;border:1px solid #0f3460;border-radius:8px;max-width:90vw;padding:10px 24px;font-size:13px;display:none;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 4px 24px #0006}.toast.error{border-color:#e94560}.resize-handle{cursor:col-resize;background:#0f3460;flex-shrink:0;width:4px;transition:background .2s}.resize-handle:hover,.resize-handle.active{background:#e94560}.sidebar-content::-webkit-scrollbar{width:5px}.sidebar-content::-webkit-scrollbar-track{background:0 0}.sidebar-content::-webkit-scrollbar-thumb{background:#2a2a4a;border-radius:3px}.sidebar-content::-webkit-scrollbar-thumb:hover{background:#3a3a5a}.spinner-overlay{z-index:5;background:#0a0a1ad9;justify-content:center;align-items:center;display:none;position:absolute;inset:0}.spinner{border:3px solid #2a2a4a;border-top-color:#e94560;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.spinner-label{color:#888;margin-top:12px;font-size:13px}.label{color:#fff}:root{--bg:#0d1117;--surface:#151b23;--card:#1c2332;--border:#2a3140;--border-light:#364156;--fg:#e2e8f0;--fg-dim:#94a3b8;--muted:#64748b;--accent:#f0883e;--accent-dim:#f0883e26;--success:#3fb950;--danger:#f85149;--info:#58a6ff;--purple:#d2a8ff;--row-h:30px;--hdr-h:56px;--tbar-h:46px}.gantt-app *,.gantt-app :before,.gantt-app :after{box-sizing:border-box}.gantt-app{background:var(--bg);color:var(--fg);flex-direction:column;width:100%;height:100%;font-family:DM Sans,sans-serif;font-size:13px;line-height:1.4;display:flex;position:relative;overflow:hidden}.gantt-app ::-webkit-scrollbar{width:8px;height:8px}.gantt-app ::-webkit-scrollbar-track{background:var(--surface)}.gantt-app ::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:4px}.gantt-app ::-webkit-scrollbar-thumb:hover{background:var(--muted)}.gantt-app ::-webkit-scrollbar-corner{background:var(--surface)}#dropzone{flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}#dropzone:before{content:"";background:radial-gradient(at 50% 40%,#f0883e0f 0%,#0000 70%);position:absolute;inset:0}#dropzone:after{content:"";background-image:radial-gradient(circle at 1px 1px,#ffffff08 1px,#0000 0);background-size:32px 32px;position:absolute;inset:0}.drop-inner{z-index:1;text-align:center;position:relative}.drop-box{border:2px dashed var(--border-light);background:var(--surface);cursor:pointer;border-radius:16px;width:520px;max-width:90vw;padding:48px 40px;transition:all .25s}.drop-box:hover,.drop-box.drag-over{border-color:var(--accent);background:var(--accent-dim)}.drop-box.drag-over{transform:scale(1.02)}.drop-icon{color:var(--accent);opacity:.8;margin-bottom:16px;font-size:42px}.drop-title{color:var(--fg);margin-bottom:8px;font-size:18px;font-weight:600}.drop-sub{color:var(--muted);margin-bottom:20px;font-size:13px}.drop-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 22px;font-family:inherit;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.drop-btn:hover{filter:brightness(1.15);transform:translateY(-1px)}.drop-formats{color:var(--muted);opacity:.7;margin-top:20px;font-size:11px}#viewer{flex-direction:column;flex:1 1 0;height:100%;min-height:0;display:none;overflow:hidden}#viewer.active{display:flex}#toolbar{height:var(--tbar-h);background:var(--surface);border-bottom:1px solid var(--border);z-index:20;flex-shrink:0;align-items:center;gap:8px;padding:0 12px;display:flex}.tb-file{color:var(--fg);flex-shrink:1;align-items:center;gap:8px;min-width:0;font-size:13px;font-weight:600;display:flex;overflow:hidden}.tb-file i{color:var(--accent);flex-shrink:0}.tb-file span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tb-sep{background:var(--border);flex-shrink:0;width:1px;height:24px;margin:0 4px}.tb-group{flex-shrink:0;align-items:center;gap:4px;display:flex;position:relative}.tb-btn{border:1px solid var(--border);color:var(--fg-dim);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;align-items:center;gap:5px;padding:5px 10px;font-family:inherit;font-size:12px;transition:all .15s;display:flex}.tb-btn:hover{background:var(--card);color:var(--fg);border-color:var(--border-light)}.tb-btn.active{background:var(--accent-dim);color:var(--accent);border-color:var(--accent)}.tb-btn:disabled{opacity:.45;cursor:not-allowed}.tb-btn:disabled:hover{color:var(--fg-dim);border-color:var(--border);background:0 0}.tb-btn i{font-size:11px}.tb-zoom{align-items:center;gap:6px;display:flex}.tb-zoom input[type=range]{width:100px;accent-color:var(--accent);height:4px}.tb-zoom-label{color:var(--muted);text-align:center;min-width:32px;font-family:JetBrains Mono,monospace;font-size:11px}.tb-stats{color:var(--muted);flex-shrink:0;margin-left:auto;font-family:JetBrains Mono,monospace;font-size:11px}.col-picker{background:var(--card);border:1px solid var(--border-light);z-index:100;border-radius:10px;min-width:220px;max-height:360px;margin-top:6px;padding-bottom:6px;display:none;position:absolute;top:100%;left:0;overflow-y:auto;box-shadow:0 12px 32px #0006}.col-picker.open{display:block}.col-picker-title{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;border-bottom:1px solid var(--border);background:var(--card);z-index:1;margin-bottom:2px;padding:8px 16px 6px;font-size:10px;font-weight:700;position:sticky;top:0}.col-pick-item{cursor:pointer;color:var(--fg-dim);align-items:center;gap:10px;padding:5px 16px;font-size:12px;transition:background .1s;display:flex}.col-pick-item:hover{color:var(--fg);background:#ffffff0d}.col-pick-item.disabled{opacity:.4;cursor:default;pointer-events:none}.col-pick-item input[type=checkbox]{accent-color:var(--accent);cursor:pointer;flex-shrink:0;width:14px;height:14px}.col-pick-item label{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.col-pick-item .cf-badge{background:var(--accent-dim);color:var(--accent);border-radius:3px;flex-shrink:0;margin-left:auto;padding:1px 5px;font-size:9px;font-weight:600}#main-gantt{flex:1 1 0;min-height:0;display:flex;position:relative;overflow:hidden}#task-panel{background:var(--surface);border-right:1px solid var(--border);z-index:5;flex-direction:column;flex-shrink:0;width:520px;min-width:200px;max-width:900px;min-height:0;display:flex}#task-header-wrap{height:var(--hdr-h);background:var(--card);border-bottom:1px solid var(--border);flex-shrink:0;overflow:hidden}#task-header{align-items:stretch;height:100%;display:flex}.th-cell{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;border-right:1px solid var(--border);white-space:nowrap;flex-shrink:0;align-items:center;padding:0 8px;font-size:11px;font-weight:600;display:flex;position:relative;overflow:hidden}.th-cell:last-child{border-right:none}.col-resize-handle{cursor:col-resize;z-index:3;width:7px;position:absolute;top:0;bottom:0;right:-3px}.col-resize-handle:after{content:"";background:0 0;width:1px;transition:background .15s;position:absolute;top:25%;bottom:25%;right:3px}.col-resize-handle:hover:after,.col-resize-handle.active:after{background:var(--accent)}#task-body{flex:1 1 0;min-height:0;overflow:auto}.task-row{height:var(--row-h);cursor:pointer;border-bottom:1px solid #2a314080;align-items:stretch;transition:background .1s;display:flex}.task-row:hover{background:#58a6ff0f}.task-row.selected{background:#f0883e1a}.task-row.summary .td-name-text{font-weight:600}.task-row.milestone .td-name-text{font-style:italic}.td-cell{white-space:nowrap;border-right:1px solid #2a31404d;flex-shrink:0;align-items:center;padding:0 8px;font-size:12px;display:flex;overflow:hidden}.td-cell.mono{color:var(--fg-dim);font-family:JetBrains Mono,monospace;font-size:11px}.td-cell.align-center{justify-content:center}.td-cell.align-right{justify-content:flex-end}.td-cell:last-child{border-right:none}.td-indent{flex-shrink:0;align-items:center;display:inline-flex}.td-toggle{width:18px;height:18px;color:var(--muted);cursor:pointer;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;font-size:9px;transition:all .15s;display:inline-flex}.td-toggle:hover{background:var(--border);color:var(--fg)}.td-toggle.collapsed i{transform:rotate(-90deg)}.td-name-text{text-overflow:ellipsis;flex:1;align-items:center;gap:4px;min-width:0;display:inline-flex;overflow:hidden}.pct-bar{background:var(--border);border-radius:3px;flex-shrink:0;width:32px;height:5px;overflow:hidden}.pct-fill{border-radius:3px;height:100%;transition:width .3s}.pct-label{color:var(--muted);flex-shrink:0;min-width:24px;margin-left:4px;font-family:JetBrains Mono,monospace;font-size:10px}#gantt-panel{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}#gantt-header{height:var(--hdr-h);border-bottom:1px solid var(--border);background:var(--card);flex-shrink:0;overflow:hidden}#gantt-header-inner{flex-direction:column;display:flex;position:relative}.gh-row{height:50%;display:flex;position:relative}.gh-cell{color:var(--muted);white-space:nowrap;border-bottom:1px solid #2a314080;border-right:1px solid #2a314080;flex-shrink:0;justify-content:center;align-items:center;padding:0 2px;font-size:10px;font-weight:500;display:flex;position:relative;overflow:hidden}.gh-cell.month{color:var(--fg-dim);font-size:11px;font-weight:600}.gh-cell.today-col{color:var(--accent);background:#f0883e14}.gh-cell.weekend{background:#64748b0f}#gantt-body{flex:1 1 0;min-height:0;position:relative;overflow:auto}#gantt-canvas{min-height:100%;position:relative}.gantt-row{height:var(--row-h);border-bottom:1px solid #2a314040;position:relative}.gantt-row:hover{background:#58a6ff08}.gantt-row.selected{background:#f0883e0f}.gantt-row.even{background:#ffffff02}.weekend-col{pointer-events:none;background:#64748b0b;position:absolute;top:0;bottom:0}.today-line{background:var(--accent);z-index:4;pointer-events:none;opacity:.7;width:2px;position:absolute;top:0;bottom:0}.today-line:before{content:"Today";color:var(--accent);white-space:nowrap;font-size:9px;font-weight:600;position:absolute;top:-18px;left:50%;transform:translate(-50%)}.gantt-bar{cursor:pointer;z-index:2;border-radius:3px;transition:filter .15s;position:absolute;overflow:visible}.gantt-bar:hover{filter:brightness(1.25);z-index:3}.gantt-bar.normal{background:#58a6ff2e;border:1px solid #58a6ff80;border-radius:3px;height:18px}.gantt-bar.normal .bar-fill{background:var(--info);border-radius:2px;transition:width .3s;position:absolute;top:0;bottom:0;left:0}.gantt-bar.normal .bar-fill.complete{background:var(--success)}.gantt-bar.critical{background:#f8514926;border:1px solid #f8514980;border-radius:3px;height:18px}.gantt-bar.critical .bar-fill{background:var(--danger);border-radius:2px;transition:width .3s;position:absolute;top:0;bottom:0;left:0}.gantt-bar.critical .bar-fill.complete{background:var(--success)}.gantt-bar.summary{background:var(--fg-dim);border:none;border-radius:1px;height:6px}.gantt-bar.summary:before,.gantt-bar.summary:after{content:"";border-left:5px solid #0000;border-right:5px solid #0000;border-top:5px solid var(--fg-dim);width:0;height:0;position:absolute;bottom:-5px}.gantt-bar.summary:before{left:-1px}.gantt-bar.summary:after{right:-1px}.gantt-bar.milestone{background:var(--purple);border:1.5px solid #d2a8ff80;border-radius:2px;height:14px;transform:rotate(45deg);width:14px!important}.gantt-bar.milestone:hover{filter:brightness(1.3)drop-shadow(0 0 4px #d2a8ff66)}.bar-label{color:#fff;white-space:nowrap;pointer-events:none;text-shadow:0 1px 3px #0009;z-index:1;text-overflow:ellipsis;max-width:calc(100% - 10px);font-size:10px;font-weight:500;position:absolute;top:50%;left:6px;overflow:hidden;transform:translateY(-50%)}#gantt-svg{pointer-events:none;z-index:1;position:absolute;top:0;left:0}#gantt-svg path{fill:none;stroke:var(--muted);stroke-width:1.2px;opacity:.45;transition:opacity .15s}#gantt-svg path.critical-arrow{stroke:var(--danger);opacity:.6;stroke-width:1.6px}#detail-panel{background:var(--surface);border-top:1px solid var(--border);flex-shrink:0;height:0;transition:height .25s;overflow:hidden}#detail-panel.open{height:170px;overflow-y:auto}#detail-inner{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px 24px;padding:14px 20px;display:grid}.dt-item{flex-direction:column;gap:2px;display:flex}.dt-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:600}.dt-value{color:var(--fg);font-family:JetBrains Mono,monospace;font-size:13px}.dt-value.name-val{font-family:DM Sans,sans-serif;font-size:14px;font-weight:600}.dt-value.notes{color:var(--fg-dim);font-family:DM Sans,sans-serif;font-size:12px;font-style:italic}#divider{background:var(--border);cursor:col-resize;z-index:6;flex-shrink:0;width:5px;transition:background .15s;position:relative}#divider:hover,#divider.active{background:var(--accent)}.gantt-toast{z-index:100;pointer-events:none;border-radius:8px;padding:10px 20px;font-size:13px;font-weight:500;animation:.3s toastIn,.3s 2.7s forwards toastOut;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.gantt-toast.error{background:var(--danger);color:#fff}.gantt-toast.success{background:var(--success);color:#fff}.gantt-toast.info{background:var(--info);color:#fff}@keyframes toastIn{0%{opacity:0;transform:translate(-50%)translateY(10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes toastOut{0%{opacity:1}to{opacity:0}}.timeline-4d{background:var(--surface);border-bottom:1px solid var(--border);z-index:15;flex-shrink:0;align-items:center;gap:12px;height:40px;padding:0 16px;display:flex}.t4d-label{text-transform:uppercase;color:var(--accent);letter-spacing:.5px;font-size:11px;font-weight:700}.t4d-slider{accent-color:var(--accent);cursor:pointer;flex:1;height:4px}.t4d-date{color:var(--fg);text-align:right;min-width:90px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);width:400px;max-width:90vw;color:var(--fg);border-radius:8px;font-family:DM Sans,sans-serif;box-shadow:0 10px 30px #00000080}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-header h3{margin:0;font-size:16px;font-weight:600}.modal-close{color:var(--muted);cursor:pointer;background:0 0;border:none;font-size:20px}.modal-close:hover{color:var(--fg)}.modal-body{padding:20px}.form-group{margin-bottom:16px}.form-group label{color:var(--muted);margin-bottom:6px;font-size:12px;display:block}.form-control{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--fg);border-radius:4px;padding:8px 12px;font-family:inherit;font-size:13px}.form-control:focus{border-color:var(--accent);outline:none}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;padding:16px 20px;display:flex}.btn-primary{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:8px 16px;font-size:13px;font-weight:600;transition:filter .2s}.btn-primary:hover{filter:brightness(1.1)}.tab-bar{background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;display:flex}.tab-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.tab-btn:hover{color:var(--fg)}.tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.tab-pane.active{display:flex}.tab-content,.tab-pane{min-height:0;overflow:hidden}.tab-content{flex:1 1 0}.tab-pane{flex-direction:column;flex:1 1 0}:root{--vinci-blue:#004990;--vinci-red:#ed1b2d;--vinci-bg:#f1f1f1;--white:#fff;--grist-theme-text:#222;--grist-theme-page-bg:#fff;--grist-theme-panel-header-bg:#f7f7f7;--grist-theme-border:#ddd;--grist-theme-hover:#f0f0f0;--grist-theme-selection:#e6f2fa;--col-id2:52px;--col-task:196px;--col-ligne-planning:84px;--col-start:84px;--col-duration-1:64px;--col-end:84px;--col-duration-2:64px;--col-demarrage:100px;--col-indice:60px;--col-realise:92px;--col-retards:64px;--left-pad-x:4px;--left-grid-width:calc(var(--col-id2) + var(--col-task) + var(--col-ligne-planning) + var(--col-start) + var(--col-duration-1) + var(--col-end) + var(--col-duration-2) + var(--col-demarrage) + var(--col-indice) + var(--col-realise) + var(--col-retards));--left-panel-width:calc(var(--left-grid-width) + (var(--left-pad-x) * 2));--planning-row-height:40px;--toolbar-height:45px}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html,body{background:var(--grist-theme-page-bg);height:100vh;color:var(--grist-theme-text);margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow:hidden}body{flex-direction:column;display:flex;overflow:hidden}body *{box-sizing:border-box}html.is-ms-project-drag-cursor,html.is-ms-project-drag-cursor *,body.is-ms-project-drag-cursor,body.is-ms-project-drag-cursor *{cursor:grabbing!important}#toolbar{height:var(--toolbar-height);background-color:var(--grist-theme-panel-header-bg);border-bottom:1px solid var(--grist-theme-border);z-index:120;flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:12px;padding:8px 16px;display:flex;position:sticky;top:0}#toolbar>*{min-width:0}.nav-buttons,.zoom-buttons,.filters,.planning-link-controls{align-items:center;gap:4px;display:flex}.nav-buttons,.zoom-buttons,.planning-link-controls{flex:none}.filters{flex:auto;min-width:0}.toolbar-label{flex:none;margin-right:4px;font-weight:600}#toolbar button{cursor:pointer;min-height:28px;color:var(--grist-theme-text);background-color:#fff;border:1px solid #ccc;border-radius:3px;padding:4px 10px;font-size:13px;line-height:1.1}#toolbar button:hover{background-color:var(--grist-theme-hover)}#toolbar button.active{background-color:var(--grist-theme-selection);border-color:#add6ff;font-weight:600}#toolbar .planning-link-controls button.active{color:#166534;background-color:#e8f7ef;border-color:#86d19f}#toolbar select{width:clamp(132px,15vw,220px);min-width:0;max-width:220px;height:28px;color:var(--grist-theme-text);background-color:#fff;border:1px solid #ccc;border-radius:3px;flex:0 auto;padding:3px 6px;font-size:13px}#toolbar select:hover{background-color:var(--grist-theme-hover)}#toolbar select:disabled{opacity:1;cursor:not-allowed}#current-date-range{white-space:nowrap;text-overflow:ellipsis;text-align:right;color:#444;flex:0 360px;min-width:150px;max-width:min(34vw,440px);margin-left:auto;font-weight:500;overflow:hidden}body.planning-sync-embedded .filters{display:none}body.planning-sync-embedded{--planning-sync-reference-left-width:250px;--left-pad-x:0px;--col-id2:0px;--col-task:250px;--col-ligne-planning:0px;--col-start:0px;--col-duration-1:0px;--col-end:0px;--col-duration-2:0px;--col-demarrage:0px;--col-indice:0px;--col-realise:0px;--col-retards:0px}body.planning-sync-embedded .planning-header-row{grid-template-columns:var(--planning-sync-reference-left-width) 1fr!important}body.planning-sync-embedded .planning-header-left{grid-template-columns:var(--planning-sync-reference-left-width)!important;width:var(--planning-sync-reference-left-width)!important;padding:0!important}body.planning-sync-embedded #planningTimeline .group-row-grid{box-sizing:border-box!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;min-width:100%!important;max-width:100%!important;padding:0!important}body.planning-sync-embedded #planningTimeline .zone-header-band{box-sizing:border-box!important;width:100%!important;min-width:100%!important;max-width:100%!important;padding:0 8px!important}body.planning-sync-embedded #planningTimeline .timeline-axis-left-filler,body.planning-sync-embedded #planningTimeline .vis-panel.vis-left{width:var(--planning-sync-reference-left-width)!important;min-width:var(--planning-sync-reference-left-width)!important;max-width:var(--planning-sync-reference-left-width)!important}body.planning-sync-embedded #planningTimeline .vis-panel.vis-left{left:0!important;overflow:hidden!important}body.planning-sync-embedded #planningTimeline .vis-panel.vis-center,body.planning-sync-embedded #planningTimeline .vis-panel.vis-top,body.planning-sync-embedded #planningTimeline .vis-panel.vis-bottom{left:var(--planning-sync-reference-left-width)!important;width:calc(100% - var(--planning-sync-reference-left-width))!important}body.planning-sync-embedded #toolbar{gap:10px}body.planning-sync-embedded #current-date-range{flex:auto;max-width:none}body.planning-sync-embedded .planning-status{display:none}body.planning-sync-embedded #timelineWrapper{scrollbar-gutter:stable;overflow-anchor:none}body.planning-sync-embedded #planningTimeline .vis-labelset{overflow-anchor:none;width:100%!important;min-width:100%!important;max-width:100%!important;overflow:hidden!important}body.planning-sync-embedded #planningTimeline .vis-labelset .vis-label{overflow-anchor:none;width:var(--planning-sync-reference-left-width)!important;min-width:var(--planning-sync-reference-left-width)!important;max-width:var(--planning-sync-reference-left-width)!important;box-sizing:border-box!important}body.planning-sync-embedded #planningTimeline .vis-labelset .vis-label .vis-inner{overflow-anchor:none;box-sizing:border-box!important;width:100%!important;min-width:100%!important;max-width:100%!important}body.planning-sync-embedded #planningTimeline .group-row-grid,body.planning-sync-embedded #planningTimeline .zone-header-band,body.planning-sync-embedded #planningTimeline .group-row-grid>div,body.planning-sync-embedded #planningTimeline .group-row-grid .cell-task{overflow-anchor:none}body.planning-sync-embedded #planningTimeline .group-row-grid .cell-task{box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:100%!important}body.planning-sync-external-axis #toolbar{display:none!important}body.planning-sync-external-axis .planning-header-row{z-index:60!important;top:0!important}body.planning-sync-external-axis #timelineWrapper{overscroll-behavior:contain;scrollbar-gutter:stable!important;overflow:hidden scroll!important}body.planning-sync-external-axis #planningTimeline .timeline-axis-left-filler,body.planning-sync-external-axis #planningTimeline .vis-panel.vis-top{display:none!important}body.planning-sync-external-axis #planningTimeline .vis-panel.vis-left,body.planning-sync-external-axis #planningTimeline .vis-panel.vis-center,body.planning-sync-external-axis #planningTimeline .vis-panel.vis-bottom{top:0!important}body.planning-sync-axis-only{overflow:hidden!important}body.planning-sync-axis-only #toolbar,body.planning-sync-axis-only .planning-header-row,body.planning-sync-axis-only .planning-status,body.planning-sync-axis-only #addZoneModal{display:none!important}body.planning-sync-axis-only #timelineWrapper{border:0!important;height:72px!important;min-height:72px!important;overflow:hidden!important}body.planning-sync-axis-only #planningTimeline{height:72px!important;min-height:72px!important}body.planning-sync-axis-only #planningTimeline .timeline-axis-left-filler,body.planning-sync-axis-only #planningTimeline .vis-panel.vis-left,body.planning-sync-axis-only #planningTimeline .vis-panel.vis-center,body.planning-sync-axis-only #planningTimeline .vis-panel.vis-bottom{display:none!important}body.planning-sync-axis-only #planningTimeline .vis-panel.vis-top{cursor:grab;z-index:80!important;pointer-events:auto!important;top:0!important;transform:translateY(0)!important}body.planning-sync-axis-only #planningTimeline .vis-panel.vis-top:active{cursor:grabbing}body.planning-sync-header-only{overflow:hidden!important}body.planning-sync-header-only #toolbar,body.planning-sync-header-only .planning-header-row,body.planning-sync-header-only .planning-status,body.planning-sync-header-only #addZoneModal{display:none!important}body.planning-sync-header-only #timelineWrapper{scrollbar-gutter:stable;border:0!important;height:72px!important;min-height:72px!important;overflow:hidden scroll!important}body.planning-sync-header-only #planningTimeline{height:72px!important;min-height:72px!important}body.planning-sync-header-only #planningTimeline .vis-panel.vis-left,body.planning-sync-header-only #planningTimeline .vis-panel.vis-center,body.planning-sync-header-only #planningTimeline .vis-panel.vis-bottom,body.planning-sync-header-only #planningTimeline .timeline-axis-left-filler{opacity:0!important;pointer-events:none!important}body.planning-sync-header-only #planningTimeline .vis-panel.vis-top{cursor:grab;z-index:80!important;pointer-events:auto!important;top:0!important;transform:translateY(0)!important}body.planning-sync-header-only #planningTimeline .vis-panel.vis-top:active{cursor:grabbing}body.planning-sync-embedded .planning-header-left .c-id2,body.planning-sync-embedded .planning-header-left .c-start,body.planning-sync-embedded .planning-header-left .c-duration-1,body.planning-sync-embedded .planning-header-left .c-end,body.planning-sync-embedded .planning-header-left .c-duration-2,body.planning-sync-embedded .planning-header-left .c-demarrage,body.planning-sync-embedded .planning-header-left .c-indice,body.planning-sync-embedded .planning-header-left .c-realise,body.planning-sync-embedded .planning-header-left .c-retards,body.planning-sync-embedded .planning-header-left .c-ligne-planning,body.planning-sync-embedded #planningTimeline .group-row-grid .cell-id2,body.planning-sync-embedded #planningTimeline .group-row-grid .cell-start,body.planning-sync-embedded #planningTimeline .group-row-grid .cell-duration-1,body.planning-sync-embedded #planningTimeline .group-row-grid .cell-end,body.planning-sync-embedded #planningTimeline .group-row-grid .cell-duration-2,body.planning-sync-embedded #planningTimeline .group-row-grid .cell-demarrage,body.planning-sync-embedded #planningTimeline .group-row-grid .cell-indice,body.planning-sync-embedded #planningTimeline .group-row-grid .cell-realise,body.planning-sync-embedded #planningTimeline .group-row-grid .cell-retards,body.planning-sync-embedded #planningTimeline .group-row-grid .cell-ligne-planning{display:none!important}.planning-header-row{grid-template-columns:var(--left-panel-width) 1fr;background:var(--grist-theme-panel-header-bg);border-bottom:1px solid var(--grist-theme-border);top:var(--toolbar-height);z-index:50;flex-shrink:0;align-items:stretch;display:grid;position:sticky}.planning-header-left{grid-template-columns:var(--col-id2) var(--col-task) var(--col-ligne-planning) var(--col-start) var(--col-duration-1) var(--col-end) var(--col-duration-2) var(--col-demarrage) var(--col-indice) var(--col-realise) var(--col-retards);width:var(--left-grid-width);padding:0 var(--left-pad-x);box-sizing:content-box;min-height:var(--planning-row-height);border-right:1px solid var(--grist-theme-border);align-items:center;display:grid}.planning-header-left .hcol{white-space:nowrap;text-overflow:ellipsis;color:var(--grist-theme-text);padding:8px;font-weight:600;overflow:hidden}.planning-header-left .c-start,.planning-header-left .c-end,.planning-header-left .c-demarrage,.planning-header-left .c-id2,.planning-header-left .c-ligne-planning,.planning-header-left .c-task{text-align:left}.planning-header-left .c-duration-1,.planning-header-left .c-duration-2,.planning-header-left .c-indice,.planning-header-left .c-realise,.planning-header-left .c-retards{text-align:center}.planning-header-right{min-height:var(--planning-row-height);color:var(--grist-theme-text);align-items:center;padding:0 12px;font-weight:600;display:flex}#timelineWrapper{border-bottom:1px solid var(--grist-theme-border);overscroll-behavior:contain;background:#fff;flex:1 1 0;min-height:0;max-height:100%;overflow:hidden auto}#planningTimeline{background:#fff;height:100%;min-height:100%;position:relative}.planning-drop-placement-overlay{pointer-events:none;z-index:1000003;background:0 0;display:none;position:fixed;left:0}.planning-drop-placement-overlay.is-visible{display:block}.planning-drop-placement-overlay:before,.planning-drop-placement-overlay:after{content:"";opacity:0;background:#16a34a;border-radius:999px;height:6px;position:absolute;top:50%;left:10px;right:10px;transform:translateY(-50%);box-shadow:0 0 0 2px #fffffff2,0 0 16px #16a34a61}.planning-drop-placement-overlay.is-coffrage:before,.planning-drop-placement-overlay.is-coffrage:after{background:#d97706;box-shadow:0 0 0 2px #fffffff2,0 0 16px #d9770657}.planning-drop-placement-overlay.is-before:before,.planning-drop-placement-overlay.is-after:after{opacity:1}#planningTimeline .timeline-axis-left-filler{width:var(--left-panel-width);border-right:1px solid var(--grist-theme-border);z-index:79;pointer-events:none;will-change:transform, height;background:#fff;border-bottom:1px solid #e0e0e0;height:0;position:absolute;top:0;left:0}#planningTimeline .vis-timeline{background:#fff;font-family:inherit;font-size:13px;border:none!important}#planningTimeline .vis-panel.vis-left{width:var(--left-panel-width)!important;border-right:1px solid var(--grist-theme-border)!important;background:#fafafa!important}#planningTimeline .vis-panel.vis-center,#planningTimeline .vis-panel.vis-top,#planningTimeline .vis-panel.vis-bottom{left:var(--left-panel-width)!important;width:calc(100% - var(--left-panel-width))!important}#planningTimeline .vis-time-axis{background:#fff}#planningTimeline .vis-panel.vis-top{will-change:transform;z-index:60!important;background:#fff!important}#planningTimeline .vis-time-axis .vis-grid.vis-minor{border-color:#f0f0f0!important}#planningTimeline .vis-time-axis .vis-grid.vis-major{border-color:#e0e0e0!important}body.planning-sync-axis-only #planningTimeline .vis-time-axis .vis-grid.vis-major,body.planning-sync-embedded #planningTimeline .vis-time-axis .vis-grid.vis-major{border-color:#bcc9d6!important;border-left-width:2px!important}#planningTimeline .vis-time-axis .vis-text{color:#444}#planningTimeline .vis-labelset .vis-label{height:var(--planning-row-height)!important;min-height:var(--planning-row-height)!important;box-sizing:border-box!important;border-bottom:1px solid var(--grist-theme-border)!important;align-items:center!important;display:flex!important}#planningTimeline .vis-labelset .vis-label.zone-header-group{background:#e8f2ff!important;border-bottom:1px solid #c6dbff!important}#planningTimeline .vis-labelset .vis-label.zone-header-group .vis-inner{background:#e8f2ff!important}#planningTimeline .vis-labelset .vis-label.is-planning-drop-placement-label{box-shadow:inset 0 0 0 2px #0f172a38;background:#f8fafc!important}#planningTimeline .vis-labelset .vis-label.is-planning-drop-placement-label .vis-inner{background:inherit!important}#planningTimeline .vis-labelset .vis-label .vis-inner{box-sizing:border-box!important;align-items:center!important;width:100%!important;height:100%!important;display:flex!important;overflow:hidden!important}#planningTimeline .vis-background .vis-group,#planningTimeline .vis-foreground .vis-group{height:var(--planning-row-height)!important;min-height:var(--planning-row-height)!important;box-sizing:border-box!important;border-bottom:1px solid #f2f2f2!important}#planningTimeline .vis-background .vis-group.zone-header-group,#planningTimeline .vis-foreground .vis-group.zone-header-group,#planningTimeline .vis-background .vis-group.planning-row-group,#planningTimeline .vis-foreground .vis-group.planning-row-group{background:0 0!important;border-bottom:1px solid #f2f2f2!important}#planningTimeline .vis-item.vis-background.zone-header-fill{background:#e8f2ff!important;border:0!important}#planningTimeline .vis-labelset{overflow-x:hidden}#planningTimeline .group-row-grid{grid-template-columns:var(--col-id2) var(--col-task) var(--col-ligne-planning) var(--col-start) var(--col-duration-1) var(--col-end) var(--col-duration-2) var(--col-demarrage) var(--col-indice) var(--col-realise) var(--col-retards)!important;width:var(--left-grid-width)!important;min-height:var(--planning-row-height)!important;padding:0 var(--left-pad-x)!important;box-sizing:content-box!important;color:#222!important;align-items:center!important;font-size:13px!important;display:grid!important}#planningTimeline .group-row-grid.planning-draggable-row,#planningTimeline .group-row-grid.planning-draggable-row>div{cursor:grab!important}#planningTimeline .group-row-grid.planning-draggable-row{-webkit-user-select:none;user-select:none;-webkit-user-drag:element;transition:opacity .12s}#planningTimeline .group-row-grid.planning-draggable-row>div{-webkit-user-drag:element}#planningTimeline .group-row-grid.planning-draggable-row:active,#planningTimeline .group-row-grid.planning-draggable-row:active>div,html.planning-row-dragging,html.planning-row-dragging *,body.planning-row-dragging,body.planning-row-dragging *{cursor:grabbing!important}html.planning-row-dragging,body.planning-row-dragging{-webkit-user-select:none!important;user-select:none!important}#planningTimeline .group-row-grid.planning-draggable-row.is-dragging-row,#planningTimeline .group-row-grid.planning-draggable-row.is-dragging-row>div{opacity:.45!important}.planning-native-drag-row{pointer-events:none;-webkit-user-select:none;user-select:none;z-index:1000002;grid-template-columns:var(--col-id2) var(--col-task) var(--col-ligne-planning) var(--col-start) var(--col-duration-1) var(--col-end) var(--col-duration-2) var(--col-demarrage) var(--col-indice) var(--col-realise) var(--col-retards);min-height:var(--planning-row-height);max-width:min(1120px,100vw - 24px);padding:0 var(--left-pad-x);box-sizing:content-box;color:#0f172a;background:#eef6ff;border:1px solid #93c5fd;border-radius:9px;align-items:center;font-size:12px;line-height:1.25;display:grid;position:fixed;top:-10000px;left:-10000px;box-shadow:0 10px 20px #0f172a38}.planning-native-drag-row>div{white-space:nowrap;text-overflow:ellipsis;min-width:0;padding:6px 8px;overflow:hidden}.planning-native-drag-stack{pointer-events:none;gap:4px;max-width:min(1120px,100vw - 24px);display:grid}.planning-native-drag-row.planning-native-drag-row-linked{opacity:.82;background:#f5f9ff;border-color:#c2d7f5}#planningTimeline.is-planning-row-drop-active{cursor:move!important}#planningTimeline .group-row-grid.is-planning-row-drop-target{--planning-row-drop-line-color:#16a34a;position:relative;box-shadow:inset 0 0 0 2px #16a34a;background:#ecfdf3!important}#planningTimeline .group-row-grid.row-type-coffrage.is-planning-row-drop-target{--planning-row-drop-line-color:#d97706;background:#fff2bf!important}#planningTimeline .group-row-grid.is-planning-drop-placement-row{box-shadow:inset 0 0 0 2px #0f172a38,0 10px 18px #0f172a1a;background:#f8fafc!important}#planningTimeline .group-row-grid.row-type-coffrage.is-planning-drop-placement-row{background:#fff8dc!important}#planningTimeline .group-row-grid.is-planning-drop-placement-row>div{font-weight:700}#planningTimeline .group-row-grid.is-planning-row-drop-target:before,#planningTimeline .group-row-grid.is-planning-row-drop-target:after{content:"";background:var(--planning-row-drop-line-color,#16a34a);opacity:0;pointer-events:none;z-index:3;border-radius:999px;height:4px;position:absolute;left:10px;right:10px;box-shadow:0 0 0 2px #ffffffeb,0 0 12px #0f172a2e}#planningTimeline .group-row-grid.is-planning-row-drop-before:before{opacity:1;top:2px}#planningTimeline .group-row-grid.is-planning-row-drop-after:after{opacity:1;bottom:2px}#planningTimeline .group-row-grid.is-planning-row-drop-committing{box-shadow:inset 0 0 0 2px #15803d;background:#dcfce7!important}#planningTimeline .group-row-grid.is-planning-row-drop-committing:before,#planningTimeline .group-row-grid.is-planning-row-drop-committing:after{background:#15803d}#planningTimeline.is-ms-drop-active{cursor:copy!important}#planningTimeline .group-row-grid.is-ms-drop-target{box-shadow:inset 0 0 0 1px #93c5fd;background:#eef6ff!important}#planningTimeline .group-row-grid.row-type-coffrage.is-ms-drop-target{background:#fff4cf!important}#planningTimeline .group-row-grid .cell-ligne-planning.is-ms-drop-target-cell{background:#dbeafe;border-radius:4px;font-weight:700}#planningTimeline .group-row-grid.is-ms-drop-committing .cell-ligne-planning,#planningTimeline .group-row-grid .cell-ligne-planning.is-ms-drop-committing-cell{background:#dcfce7;border-radius:4px;font-weight:700}#planningTimeline .group-row-grid.row-type-coffrage{background:#fff8dc!important}#planningTimeline .group-row-grid.is-planning-link-highlight{box-shadow:inset 0 0 0 2px #22c55e;background:#e8f7ef!important}#planningTimeline .group-row-grid.is-planning-link-primary{box-shadow:inset 0 0 0 2px #0ea5e9;background:#dff3ff!important}#planningTimeline .vis-item.is-planning-link-highlight,#planningTimeline .vis-item .is-planning-link-highlight{border-color:#16a34a!important;box-shadow:0 0 0 2px #22c55e,0 8px 18px #22c55e3d!important}#planningTimeline .zone-header-band{letter-spacing:.1px;width:var(--left-grid-width)!important;min-height:var(--planning-row-height)!important;box-sizing:content-box!important;color:#1d4f91!important;align-items:center!important;padding:0 10px!important;font-size:13px!important;font-weight:700!important;display:flex!important}#planningTimeline .zone-header-band.is-planning-zone-drop-target{box-shadow:inset 0 0 0 2px #0ea5e9;background:#dbeafe!important}#planningTimeline .zone-header-band.is-planning-zone-drop-committing{box-shadow:inset 0 0 0 2px #0284c7;background:#bfdbfe!important}#planningTimeline .group-row-grid>div{white-space:nowrap!important;text-overflow:ellipsis!important;min-width:0!important;padding:6px 8px!important;overflow:hidden!important}#planningTimeline .group-row-grid .editable-duration-cell{cursor:pointer;transition:background-color .12s}#planningTimeline .group-row-grid .editable-duration-cell:hover{background:#eef6ff}#planningTimeline .group-row-grid .editable-duration-cell.is-editing-duration{background:#eaf3ff;border-radius:4px;padding:2px 6px!important;overflow:visible!important}#planningTimeline .group-row-grid .editable-duration-cell .editable-duration-input{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;width:100%;min-width:0;height:26px;font:inherit;caret-color:#1e3a8a;border:1px solid #93c5fd;border-radius:4px;outline:none;padding:2px 6px;font-weight:600;box-shadow:inset 0 0 0 1px #93c5fd40;color:#1e3a8a!important;background:#fff!important}#planningTimeline .group-row-grid .editable-duration-cell .editable-duration-input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb33}#planningTimeline .group-row-grid .editable-duration-cell.is-saving-duration{opacity:.7}#planningTimeline .group-row-grid .editable-duration-cell.is-saving-duration .editable-duration-input{color:#475569!important;background:#f8fafc!important}#planningTimeline .group-row-grid .cell-id2,#planningTimeline .group-row-grid .cell-task,#planningTimeline .group-row-grid .cell-ligne-planning,#planningTimeline .group-row-grid .cell-start,#planningTimeline .group-row-grid .cell-end,#planningTimeline .group-row-grid .cell-demarrage{font-variant-numeric:tabular-nums;text-align:left!important}#planningTimeline .group-row-grid .cell-duration-1,#planningTimeline .group-row-grid .cell-duration-2{font-variant-numeric:tabular-nums;text-align:center!important}#planningTimeline .group-row-grid .cell-indice,#planningTimeline .group-row-grid .cell-realise{font-weight:600;text-align:center!important}#planningTimeline .group-row-grid .cell-retards{font-variant-numeric:tabular-nums;text-align:center!important}#planningTimeline .group-row-grid .cell-type{font-weight:600}#planningTimeline .vis-item{border:1px solid var(--grist-theme-border);color:#222;box-sizing:border-box;border-radius:2px;font-size:12px;line-height:normal}#planningTimeline .vis-item.vis-range{height:calc(var(--planning-row-height) - 8px)!important;min-height:calc(var(--planning-row-height) - 8px)!important;top:4px!important}#planningTimeline .vis-item .vis-item-content{white-space:nowrap;align-items:center;height:100%;padding:0 4px;display:flex}#planningTimeline .vis-item.vis-selected{z-index:2;background-color:#eff6ff!important;border-color:#3b82f6!important}#planningTimeline .vis-item.phase-limite{color:#1e3a8a!important;background-color:#dbeafe!important;border-color:#bfdbfe!important}#planningTimeline .vis-item.phase-coffrage{color:#92400e!important;background-color:#fef3c7!important;border-color:#fde68a!important}#planningTimeline .vis-item.phase-coffrage.phase-past{color:#7a4b12!important;background-color:#ead7a2!important;border-color:#d6bd74!important}#planningTimeline .vis-item.phase-armature{color:#475569!important;background-color:#f3f4f6!important;border-color:#d1d5db!important}#planningTimeline .vis-item.phase-armature.phase-past{color:#334155!important;background-color:#e5e7eb!important;border-color:#cbd5e1!important}#planningTimeline .vis-item.phase-travaux{color:#166534!important;background-color:#dcfce7!important;border-color:#bbf7d0!important}#planningTimeline .vis-item.phase-demarrage{color:#0000!important;background-color:#dcfce7!important;border-color:#86efac!important}#planningTimeline .vis-item.phase-demarrage .vis-item-content{width:0!important;padding:0!important;overflow:hidden!important}#planningTimeline .vis-current-time{opacity:.9;z-index:5;background-color:#ed1b2d!important;width:2px!important}.planning-status{color:#666;border-top:1px solid var(--grist-theme-border);background:#fff;padding:10px 14px;font-size:13px}body.is-add-zone-modal-open{overflow:hidden}.add-zone-modal{z-index:5000;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.add-zone-modal[hidden]{display:none!important}.add-zone-modal__backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a6b;position:absolute;inset:0}.add-zone-modal__panel{opacity:0;background:linear-gradient(#fff 0%,#f9fbff 100%);border:1px solid #d8e2f0;border-radius:14px;width:min(560px,100vw - 24px);max-height:calc(100vh - 40px);transition:transform .16s,opacity .16s;position:relative;overflow:auto;transform:translateY(8px)scale(.985);box-shadow:0 24px 55px #0f172a4d}.add-zone-modal.is-open .add-zone-modal__panel{opacity:1;transform:translateY(0)scale(1)}.add-zone-modal__header{background:radial-gradient(130% 130% at 0 0,#0049901f 0%,#00499000 65%),#f8fbff;border-bottom:1px solid #e3eaf5;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 12px;display:flex}.add-zone-modal__title-wrap h2{color:#0f294d;margin:0;font-size:20px;line-height:1.2}.add-zone-modal__title-wrap p{color:#4a6283;margin:6px 0 0;font-size:12px}.add-zone-modal__close-btn{color:#24466e;cursor:pointer;background:#fff;border:1px solid #c4d4e8;border-radius:999px;flex:none;width:30px;height:30px;font-size:15px;line-height:1}.add-zone-modal__close-btn:hover{background:#eef5ff}.add-zone-modal__form{gap:9px;padding:16px 18px 18px;display:grid}.add-zone-modal__form label{letter-spacing:.15px;color:#193d67;font-size:12px;font-weight:700}.add-zone-modal__form input,.add-zone-modal__form textarea{color:#1d2e43;width:100%;font:inherit;background:#fff;border:1px solid #bfd0e7;border-radius:8px;outline:none;padding:9px 10px;font-size:13px}.add-zone-modal__form input:focus,.add-zone-modal__form textarea:focus{border-color:#78a6da;box-shadow:0 0 0 3px #578fd12e}.add-zone-modal__form input[readonly]{color:#47638a;background:#f3f7fc}.add-zone-modal__hint{color:#1f4d84;min-height:18px;margin:2px 0 0;font-size:12px}.add-zone-modal__actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.add-zone-modal__actions .btn-secondary,.add-zone-modal__actions .btn-primary{cursor:pointer;border:1px solid #0000;border-radius:8px;min-height:34px;padding:7px 12px;font-size:13px}.add-zone-modal__actions .btn-secondary{color:#244a75;background:#f8fbff;border-color:#bfcfe4}.add-zone-modal__actions .btn-secondary:hover{background:#edf4ff}.add-zone-modal__actions .btn-primary{color:#fff;background:#0b5cb1;border-color:#0a4d93;font-weight:600}.add-zone-modal__actions .btn-primary:hover{background:#0a4f99}@media (width<=1250px){:root{--col-id2:52px;--col-task:172px;--col-ligne-planning:96px;--col-start:88px;--col-duration-1:68px;--col-end:88px;--col-duration-2:68px;--col-demarrage:96px;--col-indice:64px;--col-realise:96px;--col-retards:84px}#toolbar{flex-wrap:nowrap;gap:8px;padding:8px 10px}#current-date-range{flex-basis:240px;width:auto;max-width:240px;margin-left:auto;font-size:12px}#toolbar select{width:clamp(112px,13vw,170px);max-width:170px}}@media (width<=980px){#toolbar{gap:6px;padding:8px}.filters{gap:3px}.toolbar-label{margin-right:2px;font-size:12px}#toolbar button{padding:4px 8px;font-size:12px}#toolbar select{width:clamp(96px,12vw,132px);max-width:132px;font-size:12px}#current-date-range{flex-basis:170px;min-width:120px;max-width:170px;font-size:11px}}.planning-link-modal{z-index:100001;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.planning-link-modal[hidden]{display:none!important}.planning-link-modal__backdrop{background:#0f172a6b;position:absolute;inset:0}.planning-link-modal__panel{width:min(420px,100vw - 32px);color:var(--grist-theme-text);border:1px solid var(--grist-theme-border);opacity:0;background:#fff;border-radius:8px;transition:opacity .14s,transform .14s;position:relative;transform:translateY(8px);box-shadow:0 24px 60px #0f172a47}.planning-link-modal.is-open .planning-link-modal__panel{opacity:1;transform:translateY(0)}.planning-link-modal__header{border-bottom:1px solid var(--grist-theme-border);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.planning-link-modal__header h2{margin:0;font-size:16px;font-weight:700}.planning-link-modal__header button{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:4px;width:28px;height:28px}.planning-link-modal__form{gap:8px;padding:16px;display:grid}.planning-link-modal__form label{color:#4b5563;font-size:12px;font-weight:700}.planning-link-modal__form select,.planning-link-modal__form input{height:32px;font:inherit;color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:4px;padding:4px 8px}.planning-link-modal__hint{color:#6b7280;margin:2px 0 4px;font-size:12px}.planning-link-modal__actions{justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.planning-link-modal__actions button{cursor:pointer;border-radius:4px;min-height:30px;padding:5px 12px;font-weight:600}.planning-link-modal__actions .btn-secondary{color:#374151;background:#fff;border:1px solid #d1d5db}.planning-link-modal__actions .btn-primary{color:#fff;background:#0b63ce;border:1px solid #0b63ce}
