:root{--void:#050607;--graphite:#0c0e10;--panel:#121517;--panel-2:#181c1f;--panel-3:#1f2428;--line:#ffffff14;--line-2:#ffffff24;--text:#f3f3f0;--text-2:#b9bdb9;--muted:#7c827f;--gold:#d9b77c;--gold-2:#f1d9a8;--gold-dim:#d9b77c2e;--gold-line:#d9b77c73;--st-new:#d9b77c;--st-contact:#7fa7d9;--st-rdv:#8fc7a6;--st-client:#5fcf8c;--st-lost:#7c827f;--font:"Geist", "Inter", -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;--mono:"Geist Mono", "SFMono-Regular", Menlo, Consolas, monospace;--brand:"Jost", "Futura", "Avenir Next", sans-serif;--ease:cubic-bezier(.16,1,.3,1);--side:248px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;height:100%}body{background:var(--void);min-height:100%;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:.95rem;line-height:1.5}a{color:inherit}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:3px}::selection{background:var(--gold);color:#000}[hidden]{display:none!important}h1,h2,h3{letter-spacing:-.02em;margin:0;font-weight:500}p{margin:0}.mono{font-family:var(--mono)}.muted{color:var(--muted)}.eyebrow{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.66rem}.brand{align-items:center;gap:.7rem;text-decoration:none;display:inline-flex}.brand .mark{width:32px;height:19px;color:var(--gold);filter:drop-shadow(0 0 6px #d9b77c99)}.wordmark{flex-direction:column;line-height:1;display:inline-flex}.wordmark .name{font-family:var(--brand);letter-spacing:.22em;color:var(--text);font-size:1rem;font-weight:500}.wordmark .sub{font-family:var(--brand);letter-spacing:.38em;color:var(--muted);margin-top:.28rem;font-size:.48rem}.btn{font:500 .9rem/1 var(--font);letter-spacing:-.01em;cursor:pointer;min-height:2.7rem;transition:transform .3s var(--ease), background .3s, border-color .3s, box-shadow .3s;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;padding:.8rem 1.15rem;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--text);color:#000;position:relative;overflow:hidden}.btn-primary:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#d9b77c8c,#0000);width:34%;position:absolute;top:-40%;bottom:-40%;transform:translate(-130%)skew(-18deg)}.btn-primary:hover:not(:disabled){box-shadow:0 10px 30px -12px #d9b77c99, 0 0 0 1px var(--gold-2), 0 0 26px -6px #d9b77c80;transform:translateY(-1px)}.btn-primary:hover:not(:disabled):after{animation:shine .9s var(--ease)}.btn-outline{color:var(--text);border-color:var(--line-2);background:#ffffff0a}.btn-outline:hover:not(:disabled){background:#ffffff14;border-color:#ffffff4d}.btn-ghost{color:var(--text-2);background:0 0;min-height:2.2rem;padding:.5rem .75rem}.btn-ghost:hover{color:var(--text);background:#ffffff0d}.btn-sm{min-height:2.2rem;padding:.5rem .85rem;font-size:.82rem}.btn svg{flex:none;width:16px;height:16px}.login{isolation:isolate;place-items:center;min-height:100dvh;padding:1.5rem;display:grid;position:relative;overflow:hidden}.login:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#d9b77c24,#0000 70%);width:900px;height:600px;animation:6s ease-in-out infinite breathe;position:absolute;top:35%;left:50%;transform:translate(-50%,-50%)}.login-box{animation:rise .7s var(--ease) both;background:var(--panel);border:1px solid var(--line-2);border-radius:22px;flex-direction:column;gap:1.2rem;width:min(440px,100%);padding:2.2rem;display:flex}.login-box h1{font-size:1.6rem}.login-box .lede{color:var(--text-2)}.login-box .who{font-family:var(--mono);color:var(--muted);font-size:.74rem;line-height:1.7}.login-box .who b{color:var(--text-2);font-weight:500}.g-btn{background:var(--text);color:#000;font:500 .95rem var(--font);cursor:pointer;transition:transform .3s var(--ease), box-shadow .3s;border:0;border-radius:12px;justify-content:center;align-items:center;gap:.75rem;padding:.9rem 1.2rem;display:inline-flex}.g-btn:hover:not(:disabled){box-shadow:0 10px 30px -12px #d9b77c99, 0 0 0 1px var(--gold-2);transform:translateY(-1px)}.g-btn:disabled{opacity:.55;cursor:default}.g-btn svg{width:18px;height:18px}.login .status{color:#e7a18f;min-height:1.2em;font-size:.88rem}.demo-note{border:1px dashed var(--gold-line);color:var(--text-2);border-radius:12px;flex-direction:column;gap:.6rem;padding:.9rem 1rem;font-size:.85rem;display:flex}.demo-note b{color:var(--gold-2);font-weight:500}@keyframes drift{0%{transform:translate(-6%,-4%)scale(1)}50%{transform:translate(5%,6%)scale(1.12)}to{transform:translate(-6%,-4%)scale(1)}}@keyframes rise{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:none}}@keyframes grow-y{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes pulse-dot{0%,to{box-shadow:0 0 #d9b77c8c}50%{box-shadow:0 0 0 6px #d9b77c00}}@keyframes breathe{0%,to{opacity:.55}50%{opacity:1}}@keyframes shine{0%{transform:translate(-130%)skew(-18deg)}to{transform:translate(230%)skew(-18deg)}}body:before{content:"";z-index:-2;pointer-events:none;background:radial-gradient(900px 520px at 12% -8%, #d9b77c17, transparent 65%), radial-gradient(760px 480px at 96% 108%, #d9b77c12, transparent 65%), var(--void);position:fixed;inset:0}body:after{content:"";z-index:-1;pointer-events:none;opacity:.5;background:radial-gradient(closest-side,#d9b77c0f,#0000 70%);animation:26s ease-in-out infinite drift;position:fixed;inset:-20%}.view-enter{animation:rise .55s var(--ease) both}.section-gap>*,.grid>*{animation:rise .6s var(--ease) both}.section-gap>:nth-child(2),.grid>:nth-child(2){animation-delay:70ms}.section-gap>:nth-child(3),.grid>:nth-child(3){animation-delay:.14s}.section-gap>:nth-child(4),.grid>:nth-child(4){animation-delay:.21s}.section-gap>:nth-child(5),.grid>:nth-child(5){animation-delay:.28s}.section-gap>:nth-child(6),.grid>:nth-child(6){animation-delay:.35s}.app{grid-template-columns:var(--side) minmax(0, 1fr);min-height:100dvh;display:grid}.side{border-right:1px solid var(--line);background:var(--graphite);flex-direction:column;gap:1.5rem;min-width:0;height:100dvh;padding:1.4rem 1rem;display:flex;position:sticky;top:0}.side .brand{padding:.3rem .6rem}.nav{flex-direction:column;gap:.2rem;display:flex}.nav button{width:100%;color:var(--text-2);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:.8rem;padding:.7rem .8rem;font-size:.92rem;transition:background .2s,color .2s;display:flex}.nav button svg{opacity:.8;flex:none;width:18px;height:18px}.nav button:hover{color:var(--text);background:#ffffff0d}.nav button{position:relative}.nav button:before{content:"";background:var(--gold);opacity:0;width:2px;transition:opacity .25s, transform .3s var(--ease);border-radius:2px;position:absolute;top:22%;bottom:22%;left:0;transform:scaleY(.4);box-shadow:0 0 10px #d9b77cb3}.nav button[aria-current=page]{background:var(--gold-dim);color:var(--gold-2);box-shadow:inset 0 0 22px #d9b77c14}.nav button[aria-current=page]:before{opacity:1;transform:scaleY(1)}.nav button[aria-current=page] svg{opacity:1}.nav .count{font-family:var(--mono);color:#000;background:var(--gold);text-align:center;border-radius:999px;min-width:1.5rem;margin-left:auto;padding:.15rem .5rem;font-size:.68rem}.nav .count:empty{display:none}.side .spacer{flex:1}.user{border-top:1px solid var(--line);grid-template-columns:36px 1fr;align-items:center;gap:.7rem;padding:.6rem;display:grid}.avatar{width:36px;height:36px;font-family:var(--brand);letter-spacing:.08em;background:var(--panel-2);border:1px solid var(--line-2);color:var(--gold);border-radius:10px;place-items:center;font-size:.8rem;display:grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;display:block}.user .name{white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;font-weight:500;overflow:hidden}.user .mail{font-family:var(--mono);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.68rem;overflow:hidden}.side-actions{flex-direction:column;gap:.3rem;display:flex}.main{min-width:0;padding:1.6rem clamp(1rem,3vw,2.5rem) 4rem}.top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.6rem;display:flex}.top h1{font-size:clamp(1.4rem,2.4vw,1.9rem)}.top .sub{color:var(--muted);margin-top:.2rem;font-size:.9rem}.top-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.seg{border:1px solid var(--line-2);background:#ffffff08;border-radius:999px;padding:.2rem;display:inline-flex}.seg button{color:var(--text-2);font:500 .8rem var(--font);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.45rem .8rem}.seg button[aria-pressed=true]{background:var(--text);color:#000}.demo-badge{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-2);border:1px dashed var(--gold-line);border-radius:999px;padding:.35rem .7rem;font-size:.66rem}.card{background:linear-gradient(160deg, #ffffff06, transparent 40%), var(--panel);border:1px solid var(--line);min-width:0;transition:transform .35s var(--ease), border-color .35s, box-shadow .35s;border-radius:18px;padding:1.4rem;position:relative}.card:hover{border-color:#d9b77c4d;transform:translateY(-2px);box-shadow:0 18px 44px -22px #000c,0 0 0 1px #d9b77c1f,0 0 34px -12px #d9b77c38}.kpi .n{text-shadow:0 0 24px #d9b77c40}.card-head{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1rem;display:flex}.card-head h2{font-size:1.02rem}.card-head .hint{color:var(--muted);font-size:.8rem}.grid{gap:1rem;display:grid}.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi{flex-direction:column;gap:.35rem;display:flex}.kpi .eyebrow{margin-bottom:.2rem}.kpi .n{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:clamp(1.9rem,3vw,2.5rem);font-weight:500;line-height:1}.kpi .d{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:.4rem;font-size:.8rem;display:flex}.kpi .d .up{color:var(--st-client)}.kpi .d .down{color:#e7a18f}.two{grid-template-columns:2fr 1fr}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.section-gap{flex-direction:column;gap:1rem;display:flex}@media (width<=1100px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.two,.three{grid-template-columns:1fr}}.chart{align-items:flex-end;gap:2px;width:100%;height:140px;display:flex;position:relative}.chart .col{flex:1 1 0;align-items:flex-end;min-width:0;height:100%;display:flex}.chart .col-fill{background:linear-gradient(to top, #d9b77c40, var(--gold));transform-origin:bottom;width:100%;animation:grow-y .8s var(--ease) both;border-radius:3px 3px 0 0;transition:filter .25s;display:block}.chart .col:hover .col-fill{filter:brightness(1.35)drop-shadow(0 0 8px #d9b77c80)}.chart svg{width:100%;height:auto;display:block;overflow:visible}.chart .grid-line{stroke:var(--line);stroke-width:1px}.chart .axis-t{fill:var(--muted);font-family:var(--mono);font-size:10px}.chart .area{fill:url(#g-area)}.chart .line{fill:none;stroke:var(--gold);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.chart .dot{fill:var(--gold-2);stroke:var(--panel);stroke-width:2px;r:4;opacity:0}.chart .cross{stroke:var(--line-2);stroke-width:1px;stroke-dasharray:3 3;opacity:0}.chart .hit{fill:#0000}.tip{pointer-events:none;background:var(--panel-3);border:1px solid var(--line-2);color:var(--text);white-space:nowrap;opacity:0;z-index:5;border-radius:10px;padding:.5rem .7rem;font-size:.8rem;transition:opacity .15s;position:absolute;transform:translate(-50%,calc(-100% - 12px));box-shadow:0 10px 30px -10px #0009}.tip .k{font-family:var(--mono);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;display:block}.tip b{font-variant-numeric:tabular-nums;font-weight:500}.bars{flex-direction:column;gap:.7rem;display:flex}.bar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.2rem .8rem;font-size:.86rem;display:grid}.bar .bar-label{white-space:nowrap;text-overflow:ellipsis;color:var(--text-2);overflow:hidden}.bar .bar-n{font-family:var(--mono);color:var(--text);font-variant-numeric:tabular-nums;font-size:.78rem}.bar .bar-track{background:#ffffff0d;border-radius:4px;grid-column:1/-1;height:6px;overflow:hidden}.bar .bar-fill{background:linear-gradient(90deg, #d9b77c8c, var(--gold));height:100%;transition:width .9s var(--ease);border-radius:4px;display:block;box-shadow:0 0 10px #d9b77c4d}.empty{color:var(--muted);text-align:center;padding:1rem 0;font-size:.88rem}.filters{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.chip{border:1px solid var(--line-2);color:var(--text-2);font:500 .8rem var(--font);cursor:pointer;background:#ffffff08;border-radius:999px;align-items:center;gap:.45rem;padding:.4rem .8rem;display:inline-flex}.chip[aria-pressed=true]{background:var(--text);color:#000;border-color:var(--text)}.chip .n{font-family:var(--mono);opacity:.75;font-size:.68rem}.search{background:var(--graphite);border:1px solid var(--line-2);border-radius:10px;align-items:center;gap:.5rem;min-width:200px;margin-left:auto;padding:.45rem .7rem;display:flex}.search input{color:var(--text);font:inherit;background:0 0;border:0;outline:none;width:100%}.search svg{width:15px;height:15px;color:var(--muted);flex:none}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.table{border-collapse:collapse;width:100%}.table th{text-align:left;font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding:.6rem .7rem;font-size:.66rem;font-weight:400}.table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:.85rem .7rem;font-size:.9rem}.table tbody tr{animation:rise .45s var(--ease) both}.table tbody tr:nth-child(2){animation-delay:50ms}.table tbody tr:nth-child(3){animation-delay:.1s}.table tbody tr:nth-child(4){animation-delay:.15s}.table tbody tr:nth-child(5){animation-delay:.2s}.table tbody tr:nth-child(n+6){animation-delay:.25s}.table tr.row{cursor:pointer;transition:background .15s}.table tr.row:hover{background:#ffffff08}.table tr.row[aria-selected=true]{background:var(--gold-dim)}.table .who b{white-space:nowrap;font-weight:500;display:block}.table td.when,.table td:last-child{white-space:nowrap}#dash-leads .msg,#dash-leads th.c-msg{display:none}.table .who span{color:var(--muted);font-size:.82rem}.table .when{font-family:var(--mono);color:var(--muted);white-space:nowrap;font-size:.76rem}.table .msg{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;max-width:34ch;overflow:hidden}.pill{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);border:1px solid var(--line-2);white-space:nowrap;border-radius:999px;align-items:center;gap:.45rem;padding:.3rem .65rem;font-size:.68rem;display:inline-flex}.pill:before{content:"";background:var(--st-lost);border-radius:50%;width:7px;height:7px}.pill[data-s=nouveau]:before{background:var(--st-new);box-shadow:0 0 8px var(--st-new);animation:2.2s ease-in-out infinite pulse-dot}.pill[data-s=contacte]:before{background:var(--st-contact)}.pill[data-s=rdv]:before{background:var(--st-rdv)}.pill[data-s=client]:before{background:var(--st-client)}.pill[data-s=perdu]:before{background:var(--st-lost)}.pill[data-s=nouveau]{color:var(--gold-2);border-color:var(--gold-line)}.table-wrap{overflow-x:auto}@media (width<=760px){.table .msg,.table th.c-msg,.table .c-act,.table th.c-act{display:none}}.leads-layout{grid-template-columns:minmax(0,1fr);gap:1rem;display:grid}.leads-layout.has-detail{grid-template-columns:minmax(0,1.4fr) minmax(320px,.9fr)}.leads-layout.has-detail .table .msg,.leads-layout.has-detail .table th.c-msg{display:none}@media (width<=1000px){.leads-layout.has-detail{grid-template-columns:1fr}}.detail{animation:rise .4s var(--ease) both;flex-direction:column;gap:1.1rem;display:flex;position:sticky;top:1.2rem}.detail .head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.detail h2{font-size:1.2rem}.detail .co{color:var(--muted);font-size:.88rem}.detail dl{grid-template-columns:auto 1fr;gap:.45rem 1rem;margin:0;font-size:.9rem;display:grid}.detail dt{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-top:.25rem;font-size:.66rem}.detail dd{word-break:break-word;margin:0}.detail dd a{color:var(--gold-2);text-decoration:none}.detail dd a:hover{text-decoration:underline}.detail .message{background:var(--graphite);border:1px solid var(--line);color:var(--text-2);white-space:pre-wrap;border-radius:12px;padding:.9rem 1rem;font-size:.9rem}.field{flex-direction:column;gap:.4rem;display:flex}.field label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.66rem}.field select,.field textarea,.field input{font:inherit;color:var(--text);background:var(--graphite);border:1px solid var(--line-2);border-radius:10px;padding:.65rem .8rem}.field select:focus,.field textarea:focus,.field input:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-dim);outline:none}.field textarea{resize:vertical;min-height:5rem}.detail .actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.detail .saved{color:var(--gold);min-height:1.2em;font-size:.82rem}.steps{counter-reset:s;flex-direction:column;gap:.9rem;margin:0;padding:0;list-style:none;display:flex}.steps li{counter-increment:s;color:var(--text-2);grid-template-columns:28px 1fr;align-items:start;gap:.8rem;font-size:.92rem;display:grid}.steps li:before{content:counter(s);font-family:var(--mono);color:var(--gold);border:1px solid var(--gold-line);border-radius:50%;place-items:center;width:24px;height:24px;font-size:.72rem;display:grid}.steps li b{color:var(--text);font-weight:500}pre.code{background:var(--graphite);border:1px solid var(--line);font-family:var(--mono);color:var(--text-2);border-radius:12px;margin:0;padding:1rem;font-size:.76rem;line-height:1.55;overflow-x:auto}.kv{grid-template-columns:auto 1fr;gap:.5rem 1.2rem;font-size:.9rem;display:grid}.kv dt{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-top:.2rem;font-size:.66rem}.kv dd{font-family:var(--mono);margin:0;font-size:.82rem}.ok{color:var(--st-client)}.ko{color:#e7a18f}.toast{background:var(--panel-3);border:1px solid var(--gold-line);color:var(--text);opacity:0;transition:opacity .25s, transform .25s var(--ease);z-index:50;pointer-events:none;white-space:nowrap;text-overflow:ellipsis;border-radius:999px;max-width:calc(100% - 2rem);padding:.7rem 1.1rem;font-size:.88rem;position:fixed;bottom:1.2rem;left:50%;overflow:hidden;transform:translate(-50%)translateY(20px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}@media (width<=900px){.app{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);align-content:start}.side{border-right:0;border-bottom:1px solid var(--line);z-index:20;flex-flow:wrap;align-items:center;gap:.6rem;height:auto;padding:.7rem .8rem;position:sticky}.side .brand .wordmark{display:none}.nav{scrollbar-width:none;flex-direction:row;flex:1;gap:.15rem;min-width:0;overflow-x:auto}.nav::-webkit-scrollbar{display:none}.nav button{white-space:nowrap;padding:.5rem .7rem;font-size:.84rem}.nav button svg,.side .spacer,.user,.side-actions .btn-site{display:none}.side-actions{flex-direction:row}.main{padding:1.2rem 1rem 3rem}.card{border-radius:14px;padding:1.1rem}}@media (width<=640px){.side{grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr);align-content:start;align-items:center;gap:.5rem .6rem;height:auto;display:grid}.side .brand{grid-area:1/1}.side-actions{flex-direction:row;grid-area:1/2;justify-self:end}.nav{grid-area:2/1/3/-1;width:100%;padding-bottom:.15rem}.top-actions{justify-content:space-between;width:100%}.chart{height:110px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation:none!important}}
