@font-face{font-family:LocalSans;src:local("Inter"),local("Inter Regular"),local("Arial");font-display:swap}
:root{color-scheme:dark;--bg:#101714;--surface:#171f1b;--surface-2:#1e2822;--line:#2a352e;--muted:#8d9d91;--text:#edf3ee;--green:#b7e4ba;--green-deep:#19392e;--amber:#e7bb83;--danger:#f4a19a;--radius:12px;font-family:LocalSans,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{color:inherit}a{color:inherit;text-decoration:none}button:disabled{cursor:default;opacity:.3}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--green);outline-offset:4px}input,select,textarea{color:var(--text);background:#111a15;border:1px solid #354238;border-radius:8px;min-height:43px;padding:10px 12px;outline:none;width:100%}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #b7e4ba12}input::placeholder,textarea::placeholder{color:#647468}textarea{resize:vertical}label{display:block;font-size:12px;font-weight:550;margin:20px 0 8px;color:#c4d1c7}input[type=number]{appearance:textfield}h1,h2,p{margin-top:0}h1,h2{letter-spacing:-1.1px}svg.icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}[hidden]{display:none!important}
.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;white-space:nowrap;min-height:39px;padding:9px 14px;border-radius:8px;border:1px solid #354239;background:#1b251f;color:#d8e4db;font-size:12px;font-weight:550;transition:background .16s,border-color .16s}.button:hover{background:#29382e;border-color:#506456}.button.primary{background:var(--green);border-color:var(--green);color:#173921;font-weight:650}.button.primary:hover{background:#c9f0cc;border-color:#c9f0cc}.button.danger{background:#e5776d12;border-color:#97554c66;color:var(--danger)}.button.danger:hover{background:#e5776d25}.icon-button{display:inline-flex;justify-content:center;align-items:center;width:35px;height:35px;border:1px solid transparent;border-radius:7px;background:transparent;color:#99ad9e;flex-shrink:0;font-size:21px;transition:background .15s,color .15s}.icon-button:hover:not(:disabled){background:#ffffff0b;color:var(--text)}.icon-button.is-active{background:var(--green-deep);color:var(--green);border-color:#48795c}.text-button{display:inline-flex;align-items:center;gap:9px;padding:0;background:transparent;border:0;color:var(--green);font-size:12px;font-weight:550}.text-button:hover{color:#e4ffe6}.text-button span{font-size:17px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:600;color:#97b39e}.small-dot,.live-dot,.workspace-status{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;flex-shrink:0}.live-dot{width:7px;height:7px;box-shadow:0 0 0 4px #b7e4ba0b}.brand{display:flex;align-items:center;flex-shrink:0;font-size:30px;font-weight:700;letter-spacing:-1.5px;line-height:1.1}.brand-name{display:flex;flex-direction:column;gap:1px;white-space:nowrap}.brand-prefix{font-size:11px;font-weight:550;letter-spacing:2.4px;line-height:1.1;color:#a8c9b1}.brand-word{display:block}.brand-mark{width:37px;height:37px;margin-right:10px;background:var(--green);color:#214d31;border-radius:11px;display:grid;place-items:center}.brand-mark .icon{width:24px;height:24px}.brand-dot{color:var(--green)}
.app-view{display:grid;grid-template-columns:259px minmax(0,1fr);height:100dvh;min-height:640px}.sidebar{display:flex;flex-direction:column;background:#141d17;border-right:1px solid var(--line);padding:31px 23px 0;min-height:0}.brand-caption{font-size:11px;color:#839b8a;margin:11px 0 31px 2px;letter-spacing:.2px}.sidebar-workspace{display:flex;align-items:center;gap:10px;border:1px solid #303f33;background:#1c2820;border-radius:9px;padding:12px 11px;margin-bottom:32px}.workspace-avatar{display:grid;place-items:center;font-weight:600;font-size:14px;width:32px;height:32px;border-radius:8px;background:#354b38;color:#c4d7bb}.sidebar-workspace strong{font-size:12px;font-weight:550;display:block;margin-bottom:4px}.sidebar-workspace small{font-size:9px;color:#8b9f8e}.workspace-status{margin-left:auto;width:5px;height:5px}.nav-label,.directory-heading{font-size:9px;color:#7d9584;letter-spacing:1.1px;font-weight:550}.nav-label{margin:0 9px 12px}.nav-item{display:flex;align-items:center;gap:10px;font-size:12px;padding:13px 11px;border-radius:8px}.nav-item.active{background:#263d2c;color:#c6e8c8}.nav-item .icon{width:17px;height:17px}.nav-dot{margin-left:auto;width:5px;height:5px;background:var(--green);border-radius:50%}.sidebar-directory{display:flex;flex-direction:column;min-height:90px;flex:1;margin-top:27px}.directory-heading{display:flex;justify-content:space-between;align-items:center;margin:0 0 10px 7px}.directory-heading .icon-button{width:25px;height:25px}.directory-heading .icon{width:15px;height:15px}.search-box{display:flex;align-items:center;margin:0 0 11px;border:1px solid #2b3a2f;background:#111b15;border-radius:7px;padding-left:10px;gap:7px}.search-box .icon{width:15px;height:15px;color:#789180}.search-box input{min-height:34px;padding:8px 7px;font-size:11px;background:transparent;border:0;box-shadow:none}.entity-list{overflow:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#354a3b transparent}.entity-list:empty:after{content:"Vos personnes et sociétés apparaîtront ici.";display:block;padding:18px 8px;color:#688372;font-size:11px;line-height:1.7}.entity-list-item{display:flex;align-items:center;width:100%;gap:9px;padding:10px 7px;border:0;border-radius:7px;background:transparent;text-align:left}.entity-list-item:hover,.entity-list-item.is-active{background:#25372b}.entity-list-icon{display:grid;place-items:center;flex-shrink:0;width:29px;height:29px;background:#254330;color:var(--green);border-radius:8px;font-size:11px}.entity-list-icon.person{background:#443727;color:var(--amber);border-radius:50%}.entity-list-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7}.entity-list-copy{min-width:0}.entity-list-name{display:block;color:#d1dfd4;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;max-width:155px}.entity-list-subtitle{display:block;font-size:9px;margin-top:5px;color:#7e9886;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:150px}.sidebar-bottom{margin-top:18px;flex-shrink:0}.tip-card{border:1px solid #304134;border-radius:10px;padding:16px 13px;background:linear-gradient(145deg,#21332566,#1a261c44)}.tip-spark{display:block;color:var(--green);font-size:23px;margin-bottom:13px}.tip-card strong{font-size:11px;font-weight:550;display:block}.tip-card p{font-size:10px;line-height:1.8;color:#8ba691;margin:8px 0 16px}.tip-card .text-button{font-size:10px}.tip-card .text-button span{margin-left:10px}.sidebar-footer{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:62px;font-size:9px;color:#749580}.sidebar-footer>span{display:flex;align-items:center;gap:7px}.sidebar-footer .small-dot{width:4px;height:4px}.sidebar-footer button{font-size:9px;color:#95ae9b}
.main{min-width:0;display:flex;flex-direction:column;min-height:0}.main-header{height:112px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;flex-shrink:0;border-bottom:1px solid var(--line)}.breadcrumb{font-size:10px;color:#7e9385;margin-bottom:12px}.breadcrumb span{margin:0 9px;color:#475b4d}.graph-title{background:transparent;border:1px solid transparent;padding:0;min-height:32px;font-size:25px;font-weight:550;letter-spacing:-.8px;width:min(450px,45vw);line-height:1.2;color:var(--text);border-radius:4px}.graph-title:focus{box-shadow:none;border-bottom-color:#6f9878}.header-right{display:flex;align-items:center;gap:20px}.save-status{font-size:10px;color:#92ab98;max-width:190px;line-height:1.7}.save-status:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:#82b68e;margin-right:7px;vertical-align:middle}.overview-bar{display:flex;align-items:center;justify-content:space-between;height:63px;padding:0 34px;flex-shrink:0}.overview-title{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:500;color:#bbcdbf}.stats{display:flex;align-items:center;gap:23px;font-size:10px;color:#7e9787}.stats b{font-size:12px;color:#c5d6c9;font-weight:550;margin-right:4px}.stats>span+span{border-left:1px solid #2a3930;padding-left:23px}.canvas-area{display:flex;flex-direction:column;flex:1;min-height:0;margin:0 27px;border:1px solid #2d3c32;border-radius:12px;overflow:hidden;background:#111a15;box-shadow:0 9px 35px #00000018}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;background:#19231c;border-bottom:1px solid #2c3b30;flex-shrink:0}.toolbar-main,.toolbar-actions{display:flex;align-items:center;gap:9px}.toolbar-main .button{font-size:11px;min-height:37px;padding:8px 11px}.toolbar-main .button .icon{width:16px;height:16px}.toolbar-divider{height:22px;border-left:1px solid #354138;margin:0 3px}.toolbar-actions{gap:3px}.toolbar-actions>.icon-button{width:30px;height:32px}.toolbar-actions .icon-button .icon{width:16px;height:16px}.export-menu{position:relative;margin-left:8px}.export-menu summary{font-size:11px;min-height:35px;padding:7px 10px;list-style:none}.export-menu summary::-webkit-details-marker{display:none}.export-menu summary .icon{width:15px;height:15px}.chevron{font-size:15px;color:#88a18f;margin-left:6px}.dropdown{position:absolute;top:44px;right:0;background:#233028;border:1px solid #455b4b;border-radius:9px;padding:5px;width:230px;z-index:20;box-shadow:0 15px 35px #0006}.dropdown button{display:flex;align-items:center;gap:11px;width:100%;border:0;background:transparent;color:#cbdfd0;padding:13px 10px;font-size:11px;text-align:left;border-radius:5px}.dropdown button:hover{background:#344c3b}.dropdown .icon{width:15px;height:15px}
.graph-surface{position:relative;flex:1;min-height:320px;background-color:#101914;background-image:radial-gradient(#3c514054 .7px,transparent .7px);background-size:22px 22px;overflow:hidden}#graph{display:block;width:100%;height:100%;position:absolute;inset:0;touch-action:none;cursor:grab;outline:none}#graph:active{cursor:grabbing}#graph:focus-visible{box-shadow:inset 0 0 0 2px #b7e4ba55}.graph-node{cursor:grab;outline:none}.graph-node:active{cursor:grabbing}.node-disc{fill:#183c2b;stroke:#4b7958;stroke-width:1.5;filter:drop-shadow(0 6px 10px #0005);transition:fill .15s,stroke .15s}.graph-node.person .node-disc{fill:#3c3024;stroke:#987445}.graph-node:hover .node-disc,.graph-node.selected .node-disc,.graph-node:focus .node-disc{stroke:#c8edbd;stroke-width:2.5;fill:#234f37}.graph-node.person:hover .node-disc,.graph-node.person.selected .node-disc{stroke:#f3d2a3;fill:#51402b}.graph-node.link-source .node-disc{stroke:#e0f5ab;stroke-width:4}.node-icon{fill:none;stroke:var(--green);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.graph-node.person .node-icon{stroke:var(--amber)}.node-name{fill:#e8f2eb;font-size:13px;font-weight:550;letter-spacing:.1px;text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:#101914;stroke-width:5px;stroke-linejoin:round}.node-subtitle{fill:#8fae99;font-size:10px;text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:#101914;stroke-width:4px}.graph-node.dimmed{opacity:.2}.graph-edge{cursor:pointer}.edge-line{fill:none;stroke:#607c6b;stroke-width:1.6;transition:stroke .1s;pointer-events:stroke}.graph-edge:hover .edge-line,.graph-edge.selected .edge-line{stroke:#c5e5bc;stroke-width:2.5}.graph-edge.family .edge-line,.graph-edge.partnership .edge-line{stroke-dasharray:6 5}.edge-label{fill:#b6cebe;font-size:10px;text-anchor:middle;dominant-baseline:middle;pointer-events:none}.edge-label-bg{fill:#19281f;stroke:#3a5140;stroke-width:.7;rx:5}.canvas-top-note{position:absolute;left:24px;top:21px;display:flex;align-items:center;gap:7px;color:#708f7c;font-size:8px;letter-spacing:1.5px;pointer-events:none}.canvas-top-note .small-dot{width:4px;height:4px;background:#739e7b}.canvas-bottom-left{position:absolute;bottom:21px;left:23px;pointer-events:none}.legend{display:flex;gap:21px;font-size:9px;color:#b5c9bb}.legend>span{display:flex;align-items:center;gap:6px}.legend-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#97cca2;border:1px solid #b7e4ba}.legend-dot.person{background:#bb955f;border-color:#e7bb83}.canvas-hint{color:#597561;font-size:9px;margin-top:11px}.canvas-controls{display:flex;align-items:center;padding:5px;background:#1c2a21;border:1px solid #3a5140;box-shadow:0 3px 15px #0003;border-radius:9px;position:absolute;right:19px;bottom:20px;gap:2px}.canvas-controls .icon-button{width:29px;height:30px;color:#abc5b2}.canvas-controls .icon-button .icon{width:16px;height:16px}.control-divider{height:16px;border-left:1px solid #3d5344;margin:0 6px}.zoom-level{min-width:39px;font-size:10px;text-align:center;color:#b9d0bf;font-variant-numeric:tabular-nums}.main-footer{display:flex;justify-content:space-between;padding:17px 29px 18px;flex-shrink:0;color:#5c7c67;font-size:9px}.main-footer>span:last-child{font-size:8px;letter-spacing:1.3px}.footer-separator{margin:0 9px;color:#395842}
.empty-state{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);width:440px;max-width:calc(100% - 32px);text-align:center;pointer-events:none}.empty-state button{pointer-events:auto}.empty-state .eyebrow{display:block;font-size:8px;letter-spacing:2px;margin-bottom:17px}.empty-state h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:37px;line-height:1.2;letter-spacing:-1px;color:#e3eddf;margin-bottom:17px}.empty-state p{color:#8aa391;line-height:1.85;font-size:11px;margin-bottom:25px}.empty-state>.button{font-size:11px}.empty-state>.text-button{display:flex;margin:16px auto 0;color:#94ae9a;font-size:10px}.empty-illustration{height:125px;width:220px;position:relative;margin:0 auto 16px}.empty-orbit{position:absolute;display:block;border:1px dashed #49674d4d;border-radius:50%;width:128px;height:128px;left:52px;top:-5px}.orbit-two{width:195px;height:195px;left:18px;top:-40px;border-color:#49674d1f}.empty-bubble{position:absolute;display:grid;place-items:center;border-radius:50%;z-index:1}.bubble-company{background:#254f33;border:1px solid #638f64;width:65px;height:65px;left:98px;top:32px;box-shadow:0 0 38px #78bb7722;color:#c0e1b2}.bubble-company .icon{width:27px;height:27px}.bubble-person{background:#3d3526;border:1px solid #806a43;width:43px;height:43px;left:25px;top:13px;color:#d5b47d}.bubble-person .icon{width:21px;height:21px}.bubble-small{width:25px;height:25px;background:#2c4631;border:1px solid #5d8061;left:51px;top:96px}.empty-line{display:block;position:absolute;top:50px;left:55px;width:75px;height:1px;background:#506b4c;transform:rotate(25deg)}.line-two{top:93px;left:61px;transform:rotate(-27deg);width:65px}
.dialog{background:#19251d;border:1px solid #465b4b;border-radius:16px;padding:27px;color:var(--text);width:490px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 32px);box-shadow:0 25px 120px #0009;overflow:auto}.dialog::backdrop{background:#050b08bb;backdrop-filter:blur(5px)}.dialog-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.dialog-header .eyebrow{font-size:8px;letter-spacing:1.6px}.dialog h2{font-size:23px;margin:10px 0 7px;font-weight:500;letter-spacing:-.7px}.dialog-header .icon-button{margin-top:-6px;margin-right:-8px}.dialog input,.dialog textarea,.dialog select{font-size:12px}.dialog select{padding-right:20px}.dialog-actions{border-top:1px solid #354a3b;padding-top:19px;margin-top:25px;display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-actions-right{display:flex;gap:9px;margin-left:auto}.dialog-actions .button{font-size:11px}.required{color:var(--green)}.optional{color:#7d9886;font-size:10px;font-weight:400;margin-left:6px}.relation-endpoints{display:grid;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);gap:10px;align-items:end}.relation-endpoints>.icon{margin-bottom:12px;color:#86ad90}.field-hint{font-size:10px;color:#87a28e;line-height:1.8;margin:13px 0 0}.help-content>p{font-size:12px;line-height:1.9;color:#9eb8a5;margin:20px 0}.help-content b{font-weight:550;color:#d6e5d9}.help-content .button{margin-top:14px}.keyboard-hints{display:flex;flex-wrap:wrap;gap:15px;font-size:10px;color:#8daa96;border-top:1px solid #354a3b;padding-top:20px}kbd{display:inline-block;font-family:inherit;border:1px solid #48604f;background:#243a2b;padding:2px 4px;border-radius:4px;font-size:9px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#2d4935;border:1px solid #729678;color:#e2f2df;box-shadow:0 6px 40px #0005;border-radius:10px;padding:14px 20px;max-width:calc(100% - 24px);font-size:12px;line-height:1.7;z-index:100}.error{font-size:11px;color:#f5b1a1;min-height:16px;margin:8px 0}
.login-view{min-height:100dvh;display:grid;grid-template-columns:48% 52%;background:#111a14}.login-story{position:relative;overflow:hidden;background:radial-gradient(ellipse at 70% 60%,#24493266,transparent 65%),#14271c;padding:45px 53px;display:flex;flex-direction:column;border-right:1px solid #314b35;min-height:760px}.login-story .brand{font-size:36px}.login-story .brand-prefix{font-size:12px}.login-story-copy{margin:auto 0 0;padding-top:70px}.login-story .eyebrow{font-size:8px;letter-spacing:2.1px;color:#83aa8c}.login-story h1{font-family:Georgia,serif;font-size:clamp(36px,4vw,66px);line-height:1.12;font-weight:400;letter-spacing:-1.8px;margin:24px 0}.login-story h1 em{color:var(--green);font-weight:400}.login-story p{font-size:12px;line-height:1.9;color:#92b19a;max-width:290px}.login-network{width:100%;max-width:440px;align-self:center;margin:10px 0 24px}.login-footnote{font-size:9px;color:#5d8669;letter-spacing:.4px}.login-main{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;place-items:center;padding:45px}.login-card{width:340px;max-width:100%;min-width:0}.access-icon{display:grid;place-items:center;width:49px;height:49px;border-radius:13px;background:#203727;border:1px solid #3a5841;color:var(--green);margin-bottom:31px}.login-card>.eyebrow{font-size:9px;letter-spacing:2px}.login-card h2{font-size:29px;font-weight:500;margin:15px 0 15px;letter-spacing:-1px}.login-card>p{color:#91aa98;font-size:12px;line-height:1.9;margin-bottom:31px}.login-card label{font-size:11px}.login-card input{min-height:47px}.login-submit{width:100%;justify-content:space-between;font-size:12px;min-height:46px}.login-card p.login-note{display:flex;gap:7px;align-items:center;font-size:9px;color:#64856e;margin-top:23px}.login-note .icon{width:12px;height:12px}
@media(min-width:1600px){.main-header{height:125px;padding:0 44px}.overview-bar{height:73px;padding:0 44px}.canvas-area{margin:0 37px}.toolbar{padding:15px 20px}.graph-title{font-size:28px}.empty-state h1{font-size:44px}.empty-state p{font-size:12px}}
@media(max-width:1180px){.app-view{grid-template-columns:224px minmax(0,1fr)}.sidebar{padding-left:17px;padding-right:17px}.main-header{padding:0 23px}.overview-bar{padding:0 23px}.canvas-area{margin:0 18px}.toolbar{gap:6px;padding:11px 10px}.toolbar-main{gap:6px}.toolbar-main .button{padding:8px;font-size:10px;gap:6px}.toolbar-actions>.icon-button{width:26px}.toolbar-actions{gap:0}.toolbar-divider{margin:0 1px}.export-menu{margin-left:4px}.export-menu summary{font-size:10px}.canvas-hint{font-size:8px}.canvas-controls{right:14px;bottom:17px}.canvas-bottom-left{left:17px;bottom:19px}.canvas-controls .icon-button{width:26px}.control-divider{margin:0 3px}.legend{gap:12px;font-size:8px}.entity-list-name{max-width:132px}.graph-title{font-size:23px}.header-right{gap:10px}.save-status{font-size:9px;max-width:145px}.stats{gap:14px}.stats>span+span{padding-left:14px}}
@media(max-width:940px){.app-view{grid-template-columns:195px minmax(0,1fr)}.sidebar{padding-left:13px;padding-right:13px}.sidebar-workspace{padding:10px 8px;gap:7px}.sidebar-workspace small{font-size:8px}.workspace-avatar{width:27px;height:30px}.directory-heading{font-size:8px;letter-spacing:.6px}.sidebar-footer{font-size:8px}.sidebar-footer button{font-size:8px}.toolbar{flex-wrap:wrap;gap:8px}.toolbar-main{flex:1}.toolbar-actions{margin-left:auto}.toolbar-main .button{font-size:10px}.toolbar-main .button .icon{width:15px;height:15px}.graph-title{width:37vw;font-size:21px}.header-right{gap:3px}.stats{font-size:9px;gap:9px}.stats>span+span{padding-left:9px}.overview-title{font-size:11px;gap:9px}.canvas-controls{bottom:19px}.canvas-bottom-left{bottom:71px}.canvas-hint{display:none}.canvas-top-note{left:17px;top:17px}.main-footer{padding:15px 19px;font-size:8px}.main-footer>span:last-child{font-size:7px}.tip-card{padding:13px 10px}.tip-card strong{font-size:10px}.tip-card p{font-size:9px}.entity-list-name{max-width:114px}.entity-list-subtitle{max-width:110px}}
@media(max-width:680px){.app-view{display:flex;flex-direction:column;min-height:650px;height:100dvh}.sidebar{flex-direction:row;align-items:center;justify-content:space-between;padding:15px 19px;border-right:0;border-bottom:1px solid var(--line);min-height:65px}.sidebar>.brand{font-size:25px}.sidebar>.brand .brand-prefix{font-size:9px;letter-spacing:2px}.sidebar>.brand .brand-name{gap:0}.brand-mark{width:29px;height:29px;border-radius:8px;margin-right:8px}.brand-mark .icon{width:20px;height:20px}.brand-caption{margin:0;font-size:9px}.sidebar-workspace,.nav-label,.nav-item,.sidebar-directory,.sidebar-bottom{display:none}.main{flex:1;min-height:0}.main-header{height:86px;padding:0 18px}.breadcrumb{font-size:9px;margin-bottom:8px}.graph-title{width:54vw;font-size:21px}.save-status{max-width:95px;font-size:8px}.header-right .icon-button{width:27px}.overview-bar{height:53px;padding:0 18px}.overview-title{font-size:10px;gap:7px}.stats{gap:7px;font-size:8px}.stats>span+span{padding-left:7px}.stats b{font-size:10px;margin-right:2px}.canvas-area{margin:0 11px;border-radius:10px}.toolbar{padding:9px;gap:8px}.toolbar-main{width:100%;justify-content:space-between;gap:5px}.toolbar-main .button{padding:8px 9px;font-size:9px;gap:5px;min-height:34px;flex:1}.toolbar-main .button .icon{width:14px;height:14px}.toolbar-main .toolbar-divider{display:none}.toolbar-actions{width:100%;justify-content:flex-start;gap:2px}.toolbar-actions .export-menu{margin-left:auto}.toolbar-actions .export-menu summary{min-height:28px;padding:5px 9px;font-size:9px}.toolbar-actions>.icon-button{height:27px;width:28px}.graph-surface{min-height:310px}.canvas-top-note{top:14px;font-size:7px}.empty-state{top:46%}.empty-state h1{font-size:29px}.empty-state p{font-size:10px;margin-bottom:17px}.empty-illustration{transform:scale(.75);height:95px;margin-bottom:6px;transform-origin:center bottom}.empty-state .eyebrow{font-size:7px;margin-bottom:12px;letter-spacing:1.5px}.empty-state>.button{font-size:10px;min-height:35px}.empty-state>.text-button{font-size:9px;margin-top:11px}.canvas-bottom-left{left:14px;bottom:66px}.legend{font-size:7px;gap:12px}.legend-dot{width:6px;height:6px}.canvas-controls{right:12px;bottom:14px;padding:4px}.main-footer{padding:12px 15px;font-size:7px}.main-footer>span:last-child{font-size:6px;letter-spacing:.8px}.dialog{padding:23px 20px}.dialog h2{font-size:21px}.dialog-actions .button{padding:9px 10px;font-size:10px}.relation-endpoints{gap:7px}.dialog select{font-size:11px}.login-view{display:flex;flex-direction:column}.login-story{padding:25px;min-height:0;border-right:0;border-bottom:1px solid #314b35}.login-story .brand{font-size:29px}.login-story-copy{padding-top:32px}.login-story h1{font-size:35px;margin:16px 0}.login-story h1 br:first-of-type{display:none}.login-story h1 br:first-of-type:after{content:" "}.login-story p{font-size:10px;max-width:230px;margin-bottom:0}.login-story .eyebrow{font-size:7px}.login-network,.login-footnote{display:none}.login-main{padding:32px 28px 40px}.login-card{width:360px}.access-icon{display:none}.login-card h2{font-size:25px;margin:12px 0}.login-card>p{margin-bottom:22px;font-size:11px}.login-card>.eyebrow{font-size:8px}.login-card p.login-note{font-size:8px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* La couleur et le tracé identifient la nature des liens. */
.graph-edge.ownership .edge-line{stroke:#9bcfac;stroke-width:2;stroke-dasharray:none}.graph-edge.management .edge-line{stroke:#b5a5e5;stroke-width:2;stroke-dasharray:7 5}.graph-edge.ownership:hover .edge-line{stroke:#d0f2d9;stroke-width:3}.graph-edge.management:hover .edge-line{stroke:#dbd0ff;stroke-width:3}.graph-edge.management .edge-label-bg{fill:#292438;stroke:#675987}.graph-edge.management .edge-label{fill:#cec2ef}.graph-edge.ownership .edge-label{fill:#b5dfc1}.relation-legend{margin-top:10px}.legend-line{position:relative;width:20px;height:0;border-top:2px solid #9bcfac;display:inline-block;margin-right:1px}.legend-line:after{content:"";position:absolute;right:-1px;top:-4px;width:6px;height:6px;border-top:1.5px solid #9bcfac;border-right:1.5px solid #9bcfac;transform:rotate(45deg)}.legend-line.management{border-color:#b5a5e5;border-top-style:dashed}.legend-line.management:after{border-color:#b5a5e5}.save-status[data-state="error"]{color:#e6a390}.save-status[data-state="pending"]:before{background:#e7bb83}

/* Account access uses the same quiet dark palette as the graph workspace. */
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#101a13;border:1px solid #2d4032;border-radius:9px;padding:4px;margin:0 0 23px}.auth-tabs [role=tab]{border:0;border-radius:6px;background:transparent;color:#95ae9b;padding:10px 12px;font-size:12px;font-weight:550}.auth-tabs [aria-selected=true]{background:#2a4431;color:#d7efda;box-shadow:0 1px 5px #0002}.auth-tabs [role=tab]:hover:not(:disabled){color:#e2f6e5}.auth-tabs [role=tab]:disabled{cursor:not-allowed;opacity:.5}.login-card form>label:not(:first-child){margin-top:17px}.login-card .auth-hint{font-size:9px;color:#789782;line-height:1.6;margin:7px 0 0}.login-card .error:empty{min-height:12px;margin:8px 0}.login-card .error{line-height:1.6}.login-card input[readonly]{color:#a3b8a8;background:#17251b;border-color:#3c5141}.draft-notice{margin:0 0 20px;padding:12px 14px;border:1px solid #746348;border-radius:8px;background:#342e213b;color:#d8ccae}.draft-notice p{font-size:10px;line-height:1.7;margin:0 0 10px}.draft-notice strong{overflow-wrap:anywhere}.draft-actions{display:flex;flex-wrap:wrap;gap:10px 16px}.draft-actions .text-button{font-size:10px}.draft-actions #draft-discard{color:#d2b899}.workspace-copy{min-width:0}.sidebar-workspace strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:132px}.sidebar-footer{flex-wrap:wrap;padding:12px 0;gap:10px}.sidebar-footer #logout{font-size:9px}.breadcrumb #breadcrumb-username{color:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;max-width:180px;vertical-align:bottom}.login-card{width:350px}.login-main{min-height:760px}.login-card>p#auth-intro{margin-bottom:22px}.login-card p.login-note{align-items:flex-start}.login-note .icon{flex-shrink:0;margin-top:2px}
@media(max-width:680px){.login-main{min-height:0}.auth-tabs{margin-bottom:20px}.login-card form>label:not(:first-child){margin-top:14px}.sidebar-footer #logout{font-size:8px}.breadcrumb #breadcrumb-username{max-width:125px}}

@media(max-width:680px){.sidebar>.sidebar-bottom{display:block;margin:0}.sidebar-bottom .tip-card,.sidebar-footer>span{display:none}.sidebar-bottom .sidebar-footer{display:flex;padding:0;min-height:0}.sidebar-footer #logout{white-space:nowrap;font-size:9px}}

/* Full-map image export. */
.export-menu .dropdown{width:284px;max-width:calc(100vw - 36px)}.export-copy{display:block;min-width:0;white-space:normal;line-height:1.6}.export-copy small{display:block;font-size:9px;color:#8ca695;margin-top:2px}.export-menu button[aria-busy=true]{cursor:progress}

/* Temporary alignment and equal-gap guides never enter exported images. */
#alignment-guides{pointer-events:none}.alignment-guide{fill:none;stroke:#91d0e4;stroke-width:1;stroke-dasharray:5 5;vector-effect:non-scaling-stroke;opacity:.9}.alignment-guide.is-grid{stroke:#9eab92;stroke-dasharray:2 6;opacity:.55}.alignment-reference{fill:#13251b;stroke:#91d0e4;stroke-width:1.4;vector-effect:non-scaling-stroke}.spacing-guide-line,.spacing-guide-tick{stroke:#d1dc91;stroke-width:1.2;fill:none;vector-effect:non-scaling-stroke}.alignment-guide-label{fill:#dce8ac;font-weight:550;paint-order:stroke;stroke:#101914;stroke-width:3px;stroke-linejoin:round}.canvas-controls #snap-toggle.is-active{color:#d2e8ab;background:#30452a;border-color:#6b8652}
@media(max-width:680px){.canvas-controls{max-width:calc(100% - 24px);gap:0}.canvas-controls .icon-button{width:27px;flex-shrink:1}.canvas-controls .control-divider{margin:0 3px}.canvas-controls .zoom-level{min-width:33px}}

/* Company legal-form colors retain their explicit code in both themes. */
.graph-node.company .node-disc{fill:var(--company-fill,#183c2b);stroke:var(--company-stroke,#4b7958)}.graph-node.company:hover .node-disc,.graph-node.company.selected .node-disc,.graph-node.company.link-source .node-disc{fill:var(--company-fill,#183c2b);stroke:var(--company-ink,#b7e4ba);stroke-width:2.5}.graph-node.company .node-icon{stroke:var(--company-ink,#b7e4ba)}.legal-form-badge{fill:var(--company-ink,#b7e4ba);font-weight:600;text-anchor:middle;pointer-events:none}.legal-form-selector{display:flex;align-items:center;gap:10px}.legal-form-selector select{flex:1;min-width:0}.legal-form-preview{display:inline-flex;justify-content:center;align-items:center;min-width:90px;max-width:130px;padding:9px 10px;border:1px solid;border-radius:7px;font-size:10px;font-weight:550}.edge-label-leader{fill:none;stroke:#748c7c;stroke-width:.9;stroke-dasharray:3 3;pointer-events:none}.graph-edge.ownership .edge-label-leader{stroke:#9bcfac}.graph-edge.management .edge-label-leader{stroke:#b5a5e5}

/* Every relation path is painted before all opaque, interactive label cards. */
.relation-label-overlay{cursor:pointer;outline:none}.relation-label-overlay.management .edge-label-bg{fill:#292438;stroke:#675987}.relation-label-overlay.management .edge-label{fill:#cec2ef}.relation-label-overlay.ownership .edge-label{fill:#b5dfc1}.relation-label-overlay:hover .edge-label-bg,.relation-label-overlay:focus .edge-label-bg{stroke:#c4dbc9;stroke-width:1.4}
