
/* V7.70 — grille strictement calquée sur la maquette validée */
#gov-preview .gp-wrap{max-width:none!important;width:100%!important;padding:0 0 18px!important;font-family:'DM Sans',sans-serif!important}
#gov-preview .gp-head{margin:2px 0 13px!important}
#gov-preview .gp-head h1{font-size:25px!important;line-height:1.18!important;margin:4px 0!important}
#gov-preview .gp-head p{font-size:12px!important}
#gov-preview .gp-gold{padding:12px 18px!important}
#gov-preview .gp-tabs{margin-bottom:12px!important}
#gov-preview .gp-tabs button{padding:12px 5px!important;font-size:11px!important}
#gov-preview .gp-stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;margin-bottom:10px!important}
#gov-preview .gp-stat{min-height:92px!important;height:92px!important;padding:10px!important;gap:11px!important}
#gov-preview .gp-ring{width:58px!important;height:58px!important;font-size:22px!important;border-width:6px!important;border-top-color:#3c536b!important}
#gov-preview .gp-stat strong{font-size:27px!important;line-height:1!important}
#gov-preview .gp-stat small{display:block!important;margin-top:5px!important;font-size:9px!important}
#gov-preview .gp-middle{grid-template-columns:minmax(0,1.27fr) minmax(0,1fr)!important;gap:10px!important;margin-bottom:10px!important}
#gov-preview .gp-middle>.gp-panel{height:276px!important;min-height:0!important;overflow:hidden!important}
#gov-preview .gp-panel{padding:12px!important}
#gov-preview .gp-panel-title{font-size:14px!important;margin-bottom:9px!important}
#gov-preview .gv-tree-scroll{height:226px!important;overflow:auto!important}
#gov-preview .gv-alertscroll{height:225px!important}
#gov-preview .gp-alert{padding:7px 5px!important;gap:8px!important;min-height:40px!important}
#gov-preview .gp-alert b{font-size:11px!important}
#gov-preview .gp-alert small{font-size:10px!important}
#gov-preview .gp-dot{width:25px!important;height:25px!important}
#gov-preview .gv-bottom{display:grid!important;grid-template-columns:minmax(0,1.17fr) minmax(0,1fr) minmax(0,.94fr)!important;gap:10px!important}
#gov-preview .gv-bottom>.gp-panel{height:258px!important;min-height:0!important;min-width:0!important;grid-column:auto!important;overflow:hidden!important}
#gov-preview .gv-table-scroll,#gov-preview .gv-mandates{height:207px!important}
#gov-preview .gp-table{font-size:10px!important}
#gov-preview .gp-table th{font-size:9px!important;padding:7px 5px!important}
#gov-preview .gp-table td{padding:6px 5px!important}
#gov-preview .gp-small{font-size:9px!important;padding:5px 7px!important}
#gov-preview .gv-calhead{margin:0 0 4px!important}
#gov-preview .gv-calendar>b{padding:3px 0!important;font-size:9px!important}
#gov-preview .gv-day{min-height:24px!important;height:24px!important;padding:2px!important;font-size:10px!important}
#gov-preview .gv-markers{margin-top:0!important}
#gov-preview .gv-markers i{width:5px!important;height:5px!important}
#gov-preview .gv-legend{margin:6px 0!important;font-size:9px!important}
#gov-preview .gv-calendarpanel .gp-link{font-size:10px!important}
#gov-preview .gv-tree{min-width:0!important;gap:0!important}
#gov-preview .gv-node{min-width:165px!important;max-width:200px!important;padding:6px 8px!important;font-size:10px!important}
#gov-preview .gv-node small{font-size:9px!important}
#gov-preview .gv-children{padding-top:9px!important;margin-top:8px!important;gap:6px!important;position:relative}
#gov-preview .gv-children>.gv-treebranch{min-width:0!important;flex:1 1 0!important}
#gov-preview .gv-children .gv-node{min-width:0!important;width:100%!important;max-width:135px!important;font-size:9px!important;line-height:1.25!important}
#gov-preview .gv-treebranch:has(>.gv-children){position:relative}
#gov-preview .gv-treebranch:has(>.gv-children)>.gv-node:after{content:'';position:absolute;top:100%;left:50%;height:8px;border-left:1px solid #c9a052}
#gov-preview .gv-tree-scroll .gv-children{border-top:1px solid #c9a052!important}
#gov-preview .gv-tooltip{z-index:200!important}
@media(max-width:1050px){#gov-preview .gp-wrap{min-width:1050px!important}#gov-preview{overflow-x:auto!important}}

/* V7.71: faithful compact chart and colored KPI accents */
#gov-preview .gp-head{min-height:66px!important}
#gov-preview .gp-ring{border-top-color:#438ef0!important;color:#f1be55!important}
#gov-preview .gp-stat:nth-child(2) .gp-ring{border-top-color:#438ef0!important}
#gov-preview .gp-stat:nth-child(3) .gp-ring{border-top-color:#438ef0!important}
#gov-preview .gp-stat:nth-child(4) .gp-ring{border-top-color:#e6a454!important}
#gov-preview .gp-stat small{color:#b6bec4!important}
#gov-preview .gv-tree-scroll .gv-tree{gap:0!important}
#gov-preview .gv-tree-scroll .gv-treebranch{position:relative!important}
#gov-preview .gv-tree-scroll .gv-node{border:1px solid #687981!important;background:#192126!important;min-height:36px!important}
#gov-preview .gv-tree-scroll>.gv-tree>.gv-treebranch>.gv-node{border-left:3px solid #4b9efb!important}
#gov-preview .gv-tree-scroll .gv-treebranch .gv-treebranch>.gv-node{border-color:#c5a052!important}
#gov-preview .gv-tree-scroll .gv-children{border-top:none!important;margin-top:0!important;padding-top:14px!important;position:relative!important}
#gov-preview .gv-tree-scroll .gv-children:before{content:'';position:absolute;top:7px;left:12%;right:12%;border-top:1px solid #d5ad5c}
#gov-preview .gv-tree-scroll .gv-children>.gv-treebranch:before{content:'';position:absolute;top:-7px;left:50%;height:14px;border-left:1px solid #d5ad5c}
#gov-preview .gv-tree-scroll .gv-treebranch:has(>.gv-children)>.gv-node:after{height:7px!important}
#gov-preview .gv-tree-scroll .gv-nodeicon{font-size:15px!important;color:#e6b956!important}
#gov-preview .gv-tree-scroll .gv-children .gv-children .gv-nodeicon{color:#39b77c!important}
#gov-preview .gp-panel-title .gp-small{white-space:nowrap!important}

/* V7.72 : organigramme compact, sans défilement ni lignes transversales */
#gov-preview .gv-tree-scroll{overflow:hidden!important;height:226px!important;max-height:226px!important;display:flex!important;align-items:flex-start!important;justify-content:center!important}
#gov-preview .gv-tree{width:100%!important;min-width:0!important;gap:0!important;transform-origin:top center;}
#gov-preview .gv-treebranch{width:100%!important;min-width:0!important;flex:1 1 0!important}
#gov-preview .gv-tree-scroll .gv-children{border-top:0!important;padding-top:10px!important;margin-top:0!important;gap:5px!important}
#gov-preview .gv-tree-scroll .gv-children:before{display:none!important;content:none!important}
#gov-preview .gv-tree-scroll .gv-children>.gv-treebranch:before{top:-10px!important;height:10px!important}
#gov-preview .gv-tree-scroll .gv-treebranch:has(>.gv-children)>.gv-node:after{height:10px!important}
#gov-preview .gv-tree-scroll .gv-node{min-width:0!important;width:min(100%,185px)!important;max-width:185px!important;min-height:34px!important;padding:4px 5px!important;font-size:10px!important;line-height:1.15!important}
#gov-preview .gv-tree-scroll .gv-node small{font-size:9px!important}
#gov-preview .gv-tree-scroll .gv-children .gv-node{width:100%!important;max-width:155px!important}
#gov-preview .gv-dialog{width:min(100%,650px)!important;padding:26px!important;box-sizing:border-box!important}
#gov-preview .gv-dialoghead{align-items:center!important}
#gov-preview .gv-detail{width:100%!important}
#gov-preview .gv-member{display:grid!important;grid-template-columns:minmax(120px,1fr) minmax(140px,1.2fr) 128px!important;align-items:center!important;gap:12px!important;flex-wrap:nowrap!important;padding:13px 0!important}
#gov-preview .gv-member b,#gov-preview .gv-member span{min-width:0!important;overflow-wrap:anywhere!important}
#gov-preview .gv-member small{text-align:right!important;white-space:nowrap!important;font-size:11px!important}
#gov-preview .gv-dialog label{line-height:1.5!important}
#gov-preview .gv-dialog input,#gov-preview .gv-dialog select,#gov-preview .gv-dialog textarea{box-sizing:border-box!important;min-height:42px!important}
#gov-preview .gv-actions{align-items:center!important;flex-wrap:wrap!important}
@media(max-width:650px){#gov-preview .gv-member{grid-template-columns:1fr 1fr!important}#gov-preview .gv-member small{grid-column:1/-1;text-align:left!important}#gov-preview .gv-tree-scroll .gv-node{font-size:9px!important}}

/* V7.78 : branchements pyramidaux, aucun connecteur sous une feuille */
#gov-preview .gv-tree-scroll .gv-treebranch > .gv-node::after{content:none!important;display:none!important}
#gov-preview .gv-tree-scroll .gv-treebranch:has(> .gv-children) > .gv-node::after{content:''!important;display:block!important;position:absolute!important;top:100%!important;left:50%!important;width:0!important;height:12px!important;border:0!important;border-left:1px solid #d5ad5c!important}
#gov-preview .gv-tree-scroll .gv-children{position:relative!important;padding-top:20px!important;margin-top:0!important;border:0!important;gap:5px!important}
#gov-preview .gv-tree-scroll .gv-children::before{content:''!important;display:block!important;position:absolute!important;top:11px!important;left:calc(50% / var(--gv-count))!important;right:calc(50% / var(--gv-count))!important;height:0!important;border:0!important;border-top:1px solid #d5ad5c!important}
#gov-preview .gv-tree-scroll .gv-children[style*="--gv-count:1"]::before{display:none!important}
#gov-preview .gv-tree-scroll .gv-children > .gv-treebranch::before{content:''!important;display:block!important;position:absolute!important;top:-9px!important;left:50%!important;height:9px!important;width:0!important;border:0!important;border-left:1px solid #d5ad5c!important}
#gov-preview .gv-tree-scroll .gv-children > .gv-treebranch:only-child::before{height:20px!important;top:-20px!important}

/* V7.79 — arborescence : une liaison exacte par relation parent-enfant */
#gov-preview .gv-tree-scroll .gv-treebranch::before,
#gov-preview .gv-tree-scroll .gv-treebranch::after,
#gov-preview .gv-tree-scroll .gv-children::before,
#gov-preview .gv-tree-scroll .gv-children::after,
#gov-preview .gv-tree-scroll .gv-node::after {content:none!important;display:none!important;border:0!important}
#gov-preview .gv-tree-scroll .gv-treebranch{position:relative!important;display:flex!important;flex-direction:column!important;align-items:center!important}
#gov-preview .gv-tree-scroll .gv-node{position:relative!important;z-index:1!important;flex-shrink:0!important}
#gov-preview .gv-tree-scroll .gv-treebranch:has(> .gv-children) > .gv-node::after{content:''!important;display:block!important;position:absolute!important;top:100%!important;left:50%!important;width:0!important;height:12px!important;border-left:1px solid #d5ad5c!important}
#gov-preview .gv-tree-scroll .gv-children{display:flex!important;position:relative!important;align-items:flex-start!important;justify-content:center!important;width:100%!important;gap:6px!important;margin:0!important;padding:22px 0 0!important;border:0!important}
#gov-preview .gv-tree-scroll .gv-children:has(> .gv-treebranch:nth-child(2))::after{content:''!important;display:block!important;position:absolute!important;top:11px!important;left:calc(50% / var(--gv-count, 2))!important;right:calc(50% / var(--gv-count, 2))!important;width:auto!important;height:0!important;border-top:1px solid #d5ad5c!important}
#gov-preview .gv-tree-scroll .gv-children > .gv-treebranch::before{content:''!important;display:block!important;position:absolute!important;top:-11px!important;left:50%!important;width:0!important;height:11px!important;border-left:1px solid #d5ad5c!important}
#gov-preview .gv-tree-scroll .gv-children > .gv-treebranch:only-child::before{top:-22px!important;height:22px!important}
#gov-preview .gv-tree-scroll .gv-children > .gv-treebranch:not(:has(> .gv-children)) > .gv-node::after{content:none!important;display:none!important}

/* V7.80 — continuité des liaisons verticales et défilement en cas d'arbre profond */
#gov-preview .gv-tree-scroll{height:246px!important;max-height:246px!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin!important;scrollbar-color:#a98443 #192125!important;display:block!important;}
#gov-preview .gv-tree-scroll .gv-tree{width:100%!important;min-height:min-content!important;}
/* Le segment du parent atteint la case enfant lorsque celle-ci est unique. */
#gov-preview .gv-tree-scroll .gv-treebranch:has(> .gv-children > .gv-treebranch:only-child) > .gv-node::after{height:22px!important;}
/* Plusieurs enfants : segment central de 11px jusqu'à la traverse, puis branches de 11px. */
#gov-preview .gv-tree-scroll .gv-treebranch:has(> .gv-children > .gv-treebranch:nth-child(2)) > .gv-node::after{height:11px!important;}
#gov-preview .gv-tree-scroll .gv-children > .gv-treebranch:only-child::before{top:-22px!important;height:22px!important;}
#gov-preview .gv-tree-scroll .gv-children > .gv-treebranch:not(:only-child)::before{top:-11px!important;height:11px!important;}
