@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-wdth-normal-rJmnGBSt.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-wdth-normal-7khWdh9v.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-normal-DY7AcnAa.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sora-latin-400-normal-CRt88UEn.woff2)format("woff2"),url(/assets/sora-latin-400-normal-OW7qkl5a.woff)format("woff")}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sora-latin-500-normal-01eiPEn0.woff2)format("woff2"),url(/assets/sora-latin-500-normal-w58xtEt9.woff)format("woff")}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sora-latin-600-normal-Cdg4DaK0.woff2)format("woff2"),url(/assets/sora-latin-600-normal-1_7fyUAY.woff)format("woff")}:root{--bg:#040507;--bg-soft:#07080b;--surface:#0a0c10;--surface-2:#10131a;--surface-3:#161a23;--hover:#131721;--line:#1a1d25;--line-strong:#2a2f3b;--ink:#f4f5f7;--ink-2:#c9ced8;--muted:#8a93a3;--faint:#5c6473;--brand:#c8ff2d;--brand-ink:#000;--accent:#c8ff2d;--accent-ink:#c8ff2d;--accent-soft:#c8ff2d17;--on-accent:#000;--ring:#c8ff2d73;--green:#2bd98a;--green-ink:#5cf0a9;--green-soft:#2bd98a1f;--orange:#ff8a1f;--orange-ink:#ffaa5c;--orange-soft:#ff8a1f21;--red:#ff3d5a;--red-ink:#ff6b81;--red-soft:#ff3d5a21;--violet:#7c5cff;--violet-ink:#a98bff;--violet-soft:#7c5cff26;--cyan:#3dc8ff;--cyan-soft:#3dc8ff1f;--yellow:#ffd23f;--nav-bg:#000;--nav-line:#15171d;--shadow-2:0 18px 50px #0009, 0 0 0 1px #ffffff0a;--glass:#040507c7;--r:2px;--font:"Sora", ui-sans-serif, system-ui, -apple-system, sans-serif;--display:"Archivo Variable", "Archivo", "Sora", sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--nav-w:232px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=marathon]{--bg:#e9eae3;--bg-soft:#efefe9;--surface:#f7f7f2;--surface-2:#e1e2da;--surface-3:#d6d8ce;--hover:#e2e3db;--line:#d3d5cb;--line-strong:#b9bcb0;--ink:#0a0b0e;--ink-2:#23262d;--muted:#5a606b;--faint:#8a8f97;--accent:#0a0b0e;--accent-ink:#3d5c00;--accent-soft:#c8ff2d73;--on-accent:#c8ff2d;--ring:#0a0b0e4d;--green-ink:#0b7a49;--orange-ink:#a34f00;--red-ink:#b3132c;--violet-ink:#5b2bff;--nav-bg:#0a0b0e;--glass:#e9eae3d9;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:radial-gradient(1100px 620px at 92% -12%, #5b2bff1a, transparent 62%), radial-gradient(900px 520px at -8% 112%, #c8ff2d0a, transparent 60%), var(--bg);color:var(--ink);font:400 14px/1.5 var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-attachment:fixed}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--accent-ink);text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}::selection{background:var(--brand);color:var(--brand-ink)}:focus-visible{outline:2px solid var(--ring);outline-offset:2px}h1,h2,h3,p{margin:0}fieldset{border:0;min-width:0;margin:0;padding:0}.mono{font-family:var(--mono);font-size:.92em}.muted{color:var(--muted)}.small{font-size:12.5px}.big{font-size:22px;line-height:1.1}.warn{color:var(--orange-ink)}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:100;background:var(--brand);color:var(--brand-ink);padding:8px 12px;position:absolute;top:-40px;left:8px}.skip:focus{top:8px}kbd{font:500 10.5px/1.5 var(--mono);border:1px solid var(--line-strong);border-radius:var(--r);color:var(--muted);white-space:nowrap;background:0 0;padding:0 5px}.btn kbd{color:inherit;opacity:.55;border-color:currentColor;margin-left:2px}.display{font-family:var(--display);text-transform:uppercase;letter-spacing:.005em;font-weight:800;font-stretch:125%;line-height:1.02}.kicker{font:500 10.5px/1.2 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;display:inline-flex}.kicker:before{content:"";background:var(--accent);flex:none;width:7px;height:7px}.kicker.plain:before{display:none}.kicker:has(.dot):before{display:none}.hud{position:relative}.hud:before{content:"";pointer-events:none;--bk:#f4f5f780;background:linear-gradient(var(--bk), var(--bk)) 0 0 / 10px 1px no-repeat, linear-gradient(var(--bk), var(--bk)) 0 0 / 1px 10px no-repeat, linear-gradient(var(--bk), var(--bk)) 100% 0 / 10px 1px no-repeat, linear-gradient(var(--bk), var(--bk)) 100% 0 / 1px 10px no-repeat, linear-gradient(var(--bk), var(--bk)) 0 100% / 10px 1px no-repeat, linear-gradient(var(--bk), var(--bk)) 0 100% / 1px 10px no-repeat, linear-gradient(var(--bk), var(--bk)) 100% 100% / 10px 1px no-repeat, linear-gradient(var(--bk), var(--bk)) 100% 100% / 1px 10px no-repeat;position:absolute;inset:-1px}.app{min-height:100vh;display:flex}.nav{flex:0 0 var(--nav-w);width:var(--nav-w);background:var(--nav-bg);border-right:1px solid var(--nav-line);scrollbar-width:thin;color:#aab1bd;z-index:20;flex-direction:column;gap:14px;height:100vh;padding:14px 10px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.nav-brand{justify-content:space-between;align-items:center;padding:4px 6px 0;display:flex}.nav-logo{color:#f4f5f7}.nav-logo:hover{text-decoration:none}.brand{align-items:center;gap:.45em;line-height:1;display:inline-flex}.wordmark{font-family:"Sora", var(--font);letter-spacing:-.035em;color:#f4f5f7;font-weight:600}.live{font:500 9.5px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#5c6473;align-items:center;gap:6px;display:inline-flex}.live i{background:#5c6473;border-radius:50%;width:7px;height:7px}.live.coupe{color:#c98a5a}.live.coupe i{background:#c98a5a}.live.direct{color:#8a93a3}.live.direct i{background:var(--brand);animation:2.4s infinite pulse;box-shadow:0 0 #c8ff2d99}@keyframes pulse{0%{box-shadow:0 0 #c8ff2d8c}70%{box-shadow:0 0 0 7px #c8ff2d00}to{box-shadow:0 0 #c8ff2d00}}.nav-search{border-radius:var(--r);color:#7d8594;min-height:34px;font:500 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;text-align:left;background:#07080b;border:1px solid #1d2029;align-items:center;gap:8px;width:100%;padding:0 10px;display:flex}.nav-search:hover{border-color:var(--brand);color:#f4f5f7}.nav-search kbd{color:#7d8594;border-color:#2a2f3b;margin-left:auto}.nav-env{flex-direction:column;gap:5px;padding:0 2px;display:flex}.nav-env span{font:500 9.5px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:#5c6473;padding-left:8px}.nav-env select{color:#f4f5f7;border-radius:var(--r);background:#07080b;border:1px solid #1d2029;min-height:32px;padding:0 8px}.nav-group{flex-direction:column;gap:1px;display:flex}.nav-title{font:500 9.5px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:#5c6473;padding:4px 10px 6px}.nav-link{border-radius:var(--r);color:#aab1bd;align-items:center;gap:10px;min-height:32px;padding:0 10px;font-size:13px;text-decoration:none;display:flex}.nav-link svg{color:#6a7281}.nav-link:hover{color:#fff;background:#0c0e13;text-decoration:none}.nav-link:hover svg{color:var(--brand)}.nav-link[aria-current=page]{color:#fff;box-shadow:inset 2px 0 0 var(--brand);background:linear-gradient(90deg,#c8ff2d1f,#c8ff2d00 85%)}.nav-link[aria-current=page] svg{color:var(--brand)}.nav-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.count{font:500 11px/1 var(--mono);color:#5c6473;margin-left:auto}.nav-alert{border-radius:var(--r);background:var(--red);color:#fff;min-width:20px;height:18px;font:600 11px/18px var(--mono);text-align:center;margin-left:auto;padding:0 5px}.nav-state{font:600 11px/1 var(--mono);text-align:right;min-width:20px;margin-left:auto}.nav-state.regression{color:var(--red-ink)}.nav-state.regression:before,.nav-state.pic:before,.nav-state.nouveau:before{content:"";vertical-align:1px;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.nav-state.regression:before{background:var(--red)}.nav-state.pic{color:var(--orange-ink)}.nav-state.pic:before{background:var(--orange)}.nav-state.nouveau{color:var(--brand)}.nav-state.nouveau:before{background:var(--brand)}.nav-state.ouvert{color:#5c6473}.nav-empty{color:#5c6473;padding:4px 10px;font-size:12px}.nav-me{border-top:1px solid var(--nav-line);align-items:center;gap:8px;margin-top:auto;padding:12px 6px 2px;display:flex}.who{flex-direction:column;flex:1;min-width:0;line-height:1.25;display:flex}.who b{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.who span{color:#5c6473;font:500 9.5px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase}.nav-icon-btn{color:#5c6473;cursor:pointer;border-radius:var(--r);background:0 0;border:0;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.nav-icon-btn:hover{color:#fff;background:#0c0e13}.main{flex-direction:column;flex:1;min-width:0;display:flex}.mobile-bar{display:none}.content{outline:none;flex:1}.page{flex-direction:column;gap:20px;max-width:1320px;margin:0 auto;padding:26px 32px 64px;display:flex}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-head-main{flex-direction:column;gap:8px;min-width:0;display:flex}.page-head h1{font-size:clamp(26px,3.4vw,40px)}.page-sub{max-width:760px;font-size:13px}.page-head-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.stack{flex-direction:column;gap:16px;display:flex}.stack-s{flex-direction:column;gap:8px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row.between{justify-content:space-between}.row.center{justify-content:center}.row>.input{flex:1;min-width:160px}.push{margin-left:auto}.section{flex-direction:column;gap:12px;display:flex}.section-head{align-items:baseline;gap:12px;display:flex}.section-head.wrap{flex-wrap:wrap;align-items:center}.section-head h2{font-size:17px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex}.card-title{align-items:center;gap:8px;font-size:13px;display:flex}h3.card-title{font:600 14px/1.3 var(--font)}.card-title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.card-toggle{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.card-toggle .display{font-size:13px}.notice{border:1px solid var(--line-strong);border-left:3px solid var(--cyan);border-radius:var(--r);background:var(--surface-2);padding:11px 14px;font-size:13px}.notice.with-action{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.notice.error{border-color:var(--red-ink);border-left-color:var(--red);background:var(--red-soft);color:var(--red-ink)}.notice.warn{border-color:var(--orange);border-left-color:var(--orange);background:var(--orange-soft);color:var(--orange-ink)}.empty{text-align:center;border:1px dashed var(--line-strong);border-radius:var(--r);background:var(--bg-soft);flex-direction:column;align-items:center;gap:10px;padding:44px 20px;display:flex}.empty b{font-size:15px}.empty .muted{max-width:560px;font-size:13px}.empty-icon{color:var(--accent-ink)}.skeleton{border-radius:var(--r);background:linear-gradient(90deg, var(--surface) 0%, var(--surface-2) 40%, var(--surface) 80%) 0 0 / 300% 100%;animation:1.6s linear infinite shimmer}@keyframes shimmer{to{background-position:-300% 0}}.loading-fade{opacity:.55;transition:opacity .2s}.btn{border:1px solid var(--line-strong);border-radius:var(--r);background:var(--surface-2);min-height:34px;color:var(--ink);font:500 13px/1 var(--font);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:0 13px;text-decoration:none;transition:border-color .12s,background .12s;display:inline-flex}.btn:hover{border-color:var(--muted);text-decoration:none}.btn:disabled{opacity:.45;cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}.btn.primary:hover{filter:brightness(1.08)}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover{border-color:var(--line-strong)}.btn.small{gap:5px;min-height:28px;padding:0 9px;font-size:12px}.btn.accent{border-color:var(--brand);color:var(--accent-ink);background:var(--accent-soft)}.btn.danger{background:var(--red);border-color:var(--red);color:#fff}.btn.danger-ghost{color:var(--red-ink);border-color:var(--red-soft);background:0 0}.btn.danger-ghost:hover{border-color:var(--red-ink)}.icon-btn{border-radius:var(--r);width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{color:var(--ink);border-color:var(--line-strong);background:var(--surface-2)}.split{display:inline-flex}.split>.btn:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.split-more{border-left:1px solid #0000004d!important;border-top-left-radius:0!important;border-bottom-left-radius:0!important;padding:0 8px!important}.input{border:1px solid var(--line-strong);border-radius:var(--r);background:var(--bg-soft);width:100%;min-height:34px;color:var(--ink);font:inherit;padding:7px 10px}.input::placeholder{color:var(--faint)}.input:focus{border-color:var(--muted);outline:none}.input:focus-visible{outline:2px solid var(--ring);outline-offset:0}.input.small{min-height:28px;padding:3px 8px;font-size:12.5px}.input.narrow{flex:none;width:92px;min-width:0}textarea.input{resize:vertical;line-height:1.45}select.input{cursor:pointer}fieldset:disabled .input,fieldset:disabled select,.input:disabled{opacity:.65;cursor:not-allowed}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.label{font:500 10.5px/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.hint{color:var(--faint);font-size:12px}.color{border:1px solid var(--line-strong);background:var(--bg-soft);border-radius:var(--r);cursor:pointer;width:38px;height:34px;padding:2px}.select{position:relative}.select select{border:1px solid var(--line-strong);border-radius:var(--r);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%238a93a3' stroke-width='1.4'/%3E%3C/svg%3E") no-repeat right 9px center;appearance:none;cursor:pointer;max-width:220px;min-height:30px;padding:0 26px 0 9px;font-size:12.5px}.select.set select,.select.set .input{border-color:var(--brand);background-color:var(--accent-soft)}.search-field{flex:1;align-items:center;min-width:220px;display:flex;position:relative}.search-field svg{color:var(--muted);pointer-events:none;position:absolute;left:10px}.search-field .input{padding-left:32px;padding-right:34px}.search-field kbd{position:absolute;right:9px}.seg{border:1px solid var(--line-strong);border-radius:var(--r);flex:none;display:inline-flex;overflow:hidden}.seg button{min-height:30px;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0 11px;font-size:12.5px}.seg button+button{border-left:1px solid var(--line-strong)}.seg button:hover{color:var(--ink);background:var(--hover)}.seg button.on{background:var(--accent);color:var(--on-accent);font-weight:600}.switch{cursor:pointer;flex:none;width:34px;height:20px;display:inline-flex;position:relative}.switch input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.switch span{background:var(--line-strong);pointer-events:none;border-radius:99px;width:100%;height:100%;transition:background .15s}.switch span:after{content:"";background:var(--ink);border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:3px;left:3px}.switch input:checked+span{background:var(--accent)}.switch input:checked+span:after{background:var(--on-accent);transform:translate(14px)}.switch input:focus-visible+span{outline:2px solid var(--ring);outline-offset:2px}.switch input:disabled+span{opacity:.5}.toggle{cursor:pointer;align-items:center;gap:9px;font-size:13px;display:inline-flex}.check{cursor:pointer;flex:none;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.check input,.check-label input,.merge-row input{accent-color:var(--brand);cursor:pointer;width:15px;height:15px}.check-label{cursor:pointer;align-items:center;gap:7px;display:inline-flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;display:grid}.form-actions{align-items:center;gap:12px;margin-top:14px;display:flex}.dot{border-radius:1px;flex:none;width:9px;height:9px;display:inline-block}.avatar{background:var(--surface-3);border:1px solid var(--line-strong);width:22px;height:22px;color:var(--ink-2);font:600 9.5px/1 var(--mono);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.avatar.nobody{color:var(--faint);background:0 0;border-style:dashed}.avatar.system{background:var(--accent-soft);color:var(--accent-ink);border-color:#0000}.badge{border-radius:var(--r);height:19px;font:600 10px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border:1px solid #0000;align-items:center;gap:5px;padding:0 7px;text-decoration:none;display:inline-flex}a.badge:hover{filter:brightness(1.15);text-decoration:none}.badge.regression{background:var(--red-soft);color:var(--red-ink);border-color:#ff3d5a66}.badge.pic{background:var(--orange-soft);color:var(--orange-ink);border-color:#ff8a1f66}.badge.nouveau{background:var(--accent-soft);color:var(--accent-ink);border-color:#c8ff2d59}.badge.deploiement{background:var(--violet-soft);color:var(--violet-ink);border-color:#7c5cff66}.badge.ok{background:var(--green-soft);color:var(--green-ink);border-color:#2bd98a66}.badge.neutre{background:var(--surface-2);color:var(--muted);border-color:var(--line-strong)}.badge.ticket{background:var(--surface-2);color:var(--ink-2);border-color:var(--line-strong);text-transform:none;letter-spacing:0}.ticket-st{color:var(--muted);font-weight:500}.badge.ticket.st-done .ticket-st,.badge.ticket.st-deployed .ticket-st{color:var(--green-ink)}.badge.ticket.st-doing .ticket-st,.badge.ticket.st-review .ticket-st{color:var(--cyan)}.niveau{font:600 10px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:var(--muted);align-items:center;gap:5px;display:inline-flex}.niveau:before{content:"";background:currentColor;width:3px;height:12px}.niveau.n-fatal{color:var(--red)}.niveau.n-error{color:var(--red-ink)}.niveau.n-warning{color:var(--yellow)}.niveau.n-info{color:var(--cyan)}.statut{font:600 10px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--r);border:1px solid var(--line-strong);color:var(--ink-2);white-space:nowrap;padding:4px 6px}.statut.s-resolu{color:var(--green-ink);border-color:#2bd98a66}.statut.s-ignore{color:var(--muted);border-style:dashed}.type-tag{font:500 10px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--violet-ink)}.projet-tag{color:var(--ink-2);white-space:nowrap;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.chip{border:1px solid var(--line-strong);border-radius:var(--r);max-width:100%;color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;padding:2px 7px;display:inline-flex;overflow:hidden}.lieu{color:var(--ink-2);overflow-wrap:anywhere}.etat{color:var(--green-ink)}.regression-ink{color:var(--red-ink)}.ext{overflow-wrap:anywhere;align-items:center;gap:4px;max-width:100%;display:inline-flex}.ext svg{opacity:.6}.titre-txt{overflow-wrap:anywhere}.menu{z-index:60;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r);box-shadow:var(--shadow-2);flex-direction:column;max-height:min(70vh,460px);padding:4px;display:flex;position:fixed;overflow-y:auto}.menu-item{border-radius:var(--r);text-align:left;cursor:pointer;min-height:32px;color:var(--ink);background:0 0;border:0;align-items:center;gap:10px;padding:0 9px;font-size:13px;display:flex}.menu-item svg{color:var(--muted)}.menu-item:focus,.menu-item:hover{background:var(--hover);outline:none}.menu-item:focus-visible{box-shadow:inset 2px 0 0 var(--brand)}.menu-item.current{color:var(--accent-ink)}.menu-item.current:after{content:"✓";margin-left:auto;font-size:12px}.menu-item.danger{color:var(--red-ink)}.menu-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.menu-hint{color:var(--faint);white-space:nowrap;text-overflow:ellipsis;max-width:50%;font-size:11px;overflow:hidden}.menu-extra{border-top:1px solid var(--line);flex-direction:column;gap:8px;margin-top:4px;padding:8px 6px 4px;display:flex}.menu-form{align-items:center;gap:6px;display:flex}.menu-form .input{flex:1;min-width:0}.menu-form-label{color:var(--muted);min-width:46px;font-size:12px}.backdrop{z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0000009e;justify-content:center;align-items:flex-start;padding:10vh 16px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.dialog:focus{outline:none}.dialog{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r);width:min(520px,100%);box-shadow:var(--shadow-2);flex-direction:column;display:flex}.dialog.wide{width:min(760px,100%)}.dialog-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.dialog-head .display{font-size:14px}.dialog-body{flex-direction:column;gap:14px;padding:16px;display:flex}.dialog-foot{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:10px;padding:12px 16px;display:flex}.dialog-foot>.muted{margin-right:auto}.dialog-lead{align-items:baseline;gap:8px;font-weight:500;display:flex}.palette{width:min(640px,100%)}.palette .search{border-bottom:1px solid var(--line);color:var(--muted);align-items:center;gap:10px;padding:12px 14px;display:flex}.palette .search input{color:var(--ink);background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:15px}.palette .results{max-height:min(60vh,480px);padding:6px;overflow-y:auto}.palette .group{font:500 9.5px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--faint);padding:10px 8px 4px}.palette .option{border-radius:var(--r);text-align:left;cursor:pointer;width:100%;min-height:36px;color:var(--ink);background:0 0;border:0;align-items:center;gap:10px;padding:0 9px;display:flex}.palette .option svg{color:var(--muted)}.palette .option[data-active=true]{background:var(--hover);box-shadow:inset 2px 0 0 var(--brand)}.option-label{white-space:nowrap;flex:1;align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.option-label .titre-txt{text-overflow:ellipsis;overflow:hidden}.palette .hint{color:var(--faint);white-space:nowrap;font-size:11px}.palette-empty{text-align:center;color:var(--muted);padding:24px}.keys{border-collapse:collapse;width:100%}.keys td{border-bottom:1px solid var(--line);padding:6px 4px;font-size:13px}.keys td:first-child{white-space:nowrap;width:1%;padding-right:18px}.toasts{z-index:70;flex-direction:column;align-items:flex-end;gap:8px;max-width:min(440px,100vw - 32px);display:flex;position:fixed;bottom:18px;right:18px}.toast{background:var(--surface-2);border:1px solid var(--line-strong);border-left:3px solid var(--brand);border-radius:var(--r);box-shadow:var(--shadow-2);align-items:center;gap:10px;max-width:100%;padding:10px 10px 10px 14px;font-size:13px;animation:.18s ease-out toast-in;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.toast.error{border-left-color:var(--red);color:var(--red-ink)}.toast.ok{border-left-color:var(--green)}.toast.regression{border-left-color:var(--red)}.toast.nouveau{border-left-color:var(--brand)}.toast-text{overflow-wrap:anywhere;min-width:0;color:inherit;flex:1}a.toast-text:hover{text-decoration:underline}.toast-action{border:1px solid var(--line-strong);border-radius:var(--r);cursor:pointer;color:var(--accent-ink);white-space:nowrap;background:0 0;padding:4px 9px;font-size:12px}.toast-close{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:4px;display:inline-flex}.spark{flex:none;display:block}.chart{gap:8px;display:flex}.chart-y{color:var(--faint);text-align:right;flex-direction:column;justify-content:space-between;min-width:26px;padding-bottom:20px;font-size:10.5px;display:flex}.chart-plot{cursor:crosshair;outline:none;flex:1;min-width:0;padding-bottom:20px;position:relative}.chart-plot svg{display:block}.chart-plot:focus-visible{outline:2px solid var(--ring)}.chart-x{height:16px;color:var(--faint);font-size:10.5px;position:absolute;bottom:0;left:0;right:0}.chart-x span{white-space:nowrap;position:absolute;transform:translate(-50%)}.chart-tip{background:var(--ink);color:var(--bg);border-radius:var(--r);white-space:nowrap;pointer-events:none;z-index:2;padding:4px 8px;font-size:12px;position:absolute;top:-6px;transform:translate(-50%,-100%)}.chart-tip.right{transform:translate(-90%,-100%)}.chart-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.share{background:var(--line);grid-column:1/-1;height:3px;display:block}.share span{height:100%;display:block}.now{background:linear-gradient(90deg, #ff3d5a1a, transparent 55%), var(--surface);border:1px solid var(--line);border-left:3px solid var(--red);border-radius:var(--r);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px 28px;padding:18px 20px;display:grid}.now.calm{background:linear-gradient(90deg, #2bd98a14, transparent 55%), var(--surface);border-left-color:var(--green)}.now-head{flex-direction:column;gap:8px;min-width:0;display:flex}.now-sentence{font-size:15px;line-height:1.55}.now-sentence svg{color:var(--green-ink);vertical-align:-3px;margin-right:6px}.now-projet{color:var(--ink);box-shadow:inset 0 -2px 0 var(--pc);font-weight:600}.now-stats{flex-wrap:wrap;gap:6px;display:flex}.stat{border:1px solid var(--line);border-radius:var(--r);background:var(--bg-soft);min-width:96px;color:var(--ink);flex-direction:column;gap:4px;padding:10px 12px;text-decoration:none;display:flex}.stat:hover{border-color:var(--line-strong);text-decoration:none}.stat b{font-size:24px;line-height:1}.stat span{font:500 10px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.stat.regression{background:var(--red-soft);border-color:#ff3d5a80}.stat.regression b{color:var(--red-ink)}.stat.pic{background:var(--orange-soft);border-color:#ff8a1f80}.stat.pic b{color:var(--orange-ink)}.stat.nouveau{background:var(--accent-soft);border-color:#c8ff2d66}.stat.nouveau b{color:var(--accent-ink)}.cards{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px;display:grid}.pcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);cursor:pointer;flex-direction:column;gap:10px;min-width:0;padding:14px 14px 12px 17px;transition:border-color .15s,transform .15s;display:flex;position:relative}.pcard:before{content:"";background:var(--pc);width:4px;position:absolute;top:-1px;bottom:-1px;left:-1px}.pcard:hover{border-color:var(--line-strong);transform:translateY(-1px)}.pcard.regression{border-color:#ff3d5a73;box-shadow:inset 0 0 0 1px #ff3d5a1f}.pcard.pic{border-color:#ff8a1f73}.pcard-head{align-items:center;gap:8px;min-width:0;display:flex}.pcard-name{font-family:var(--display);text-transform:uppercase;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:15px;font-weight:800;font-stretch:125%;overflow:hidden}.pcard-name:hover{color:var(--pc);text-decoration:none}.pcard-plat{margin-top:-6px}.pcard-spark svg{width:100%;height:42px}.pcard-spark-legend{justify-content:space-between;margin-top:3px;font-size:10.5px;display:flex}.pcard-stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin:0;display:grid}.pcard-stats div{padding:8px 0 7px}.pcard-stats div+div{border-left:1px solid var(--line);padding-left:10px}.pcard-stats dt{font:500 9.5px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.pcard-stats dd{margin:4px 0 0;font-size:19px;line-height:1}.pcard-stats .regression dd{color:var(--red-ink)}.pcard-stats .pic dd{color:var(--orange-ink)}.pcard-stats .nouveau dd{color:var(--accent-ink)}.pcard-deploy{color:var(--ink-2);align-items:center;gap:7px;display:flex}.pcard-deploy svg{color:var(--violet-ink)}.pcard-deploy b{font-weight:500}.calmes{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.calmes .calme{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);color:var(--ink-2);align-items:center;gap:8px;padding:6px 10px;font-size:13px;display:inline-flex}.calmes .calme:hover{border-color:var(--pc);text-decoration:none}.plist{border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}.plist-bar{z-index:5;border-bottom:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;gap:6px;min-height:42px;padding:4px 10px 4px 8px;display:flex;position:sticky;top:0}.plist-bar.active{background:var(--surface-2);border-bottom-color:var(--brand)}.plist-hint{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.bulk{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.bulk>b{color:var(--accent-ink)}.plist-rows{flex-direction:column;display:flex}.prow{border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 10px 10px 8px;transition:background .1s;display:grid;position:relative}.prow:last-child{border-bottom:0}.prow:before{content:"";background:var(--pc);opacity:.85;width:2px;position:absolute;top:8px;bottom:8px;left:0}.prow:hover{background:var(--hover)}.prow.focused{background:var(--hover);box-shadow:inset 0 0 0 1px var(--line-strong)}.prow.focused:after{content:"";background:var(--brand);width:2px;position:absolute;top:0;bottom:0;right:0}.prow.selected{background:var(--accent-soft)}.prow.closed .titre{color:var(--muted)}.prow-main{flex-direction:column;gap:5px;min-width:0;display:flex}.prow-title{align-items:baseline;gap:8px;min-width:0;display:flex}.prow-title .niveau{flex:none;transform:translateY(-1px)}.titre{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.titre:hover{text-decoration:underline}.prow-meta{flex-wrap:wrap;align-items:center;gap:4px 10px;min-width:0;font-size:12px;display:flex}.prow-meta .lieu{text-overflow:ellipsis;white-space:nowrap;max-width:340px;font-size:11.5px;overflow:hidden}.prow-meta .release{font-size:11px}.prow-side{align-items:center;gap:12px;display:flex}.prow-count{flex-direction:column;align-items:flex-end;min-width:72px;line-height:1.15;display:flex}.prow-count b{font-size:17px}.prow-count span{font-size:10.5px}.prow-actions{opacity:.35;gap:2px;transition:opacity .12s;display:flex}.prow:hover .prow-actions,.prow.focused .prow-actions,.prow-actions:focus-within{opacity:1}.plist.compact .prow{padding-top:8px;padding-bottom:8px}.filters{flex-direction:column;gap:8px;display:flex}.filters-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filters-row.selects{gap:6px}.release-field .input{width:150px}.pager{justify-content:center;align-items:center;gap:14px;display:flex}.projet-resume{border:1px solid var(--line);border-top:3px solid var(--pc);border-radius:var(--r);background:var(--surface);grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr);gap:16px;padding:14px 16px;display:grid}.projet-stats{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:8px;display:grid}.mini{border:1px solid var(--line);background:var(--bg-soft);border-radius:var(--r);flex-direction:column;gap:3px;min-width:0;padding:8px 10px;display:flex}.mini span{font:500 9.5px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.mini b{font-size:20px;line-height:1}.mini.regression{border-color:#ff3d5a80}.mini.regression b{color:var(--red-ink)}.mini.pic b{color:var(--orange-ink)}.mini.nouveau b{color:var(--accent-ink)}.mini b.warn{font-size:15px}.projet-chart{flex-direction:column;gap:8px;min-width:0;display:flex}.crumbs-nav{color:var(--muted);align-items:center;gap:6px;display:flex}.crumbs-nav a{color:var(--muted)}.crumbs-nav a:hover{color:var(--ink)}.detail-head{border-left:3px solid var(--pc);flex-direction:column;gap:10px;padding-left:14px;display:flex}.detail-kicker{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.detail-title{font:600 clamp(19px, 2.2vw, 26px) / 1.25 var(--font);letter-spacing:-.01em;overflow-wrap:anywhere}.detail-sub{flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:13px;display:flex}.assigne{align-items:center;gap:6px;display:inline-flex}.detail-actions{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.detail-grid{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:16px;display:grid}.detail-main,.detail-side{flex-direction:column;gap:16px;min-width:0;display:flex}.chart-card .big{font-size:24px}.event-card{gap:0;padding:0}.event-nav{border-bottom:1px solid var(--line);background:var(--surface-2);flex-direction:column;gap:10px;padding:12px 16px;display:flex}.event-nav-btns{flex-wrap:wrap;gap:6px;display:flex}.event-meta{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.event-meta .chip{max-width:340px}.event-card>div:last-child{padding:4px 16px 16px}.facts-counts{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.facts-counts>div{flex-direction:column;gap:4px;display:flex}.facts-counts .up b{color:var(--red-ink)}.facts-counts .down b{color:var(--green-ink)}.facts-list{grid-template-columns:auto minmax(0,1fr);gap:7px 12px;margin:0;font-size:13px;display:grid}.facts-list dt{color:var(--muted);font-size:12px}.facts-list dd{overflow-wrap:anywhere;margin:0}.facts-list dd .muted{display:block}.ticket-card{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ticket-livre{color:var(--green-ink)}.ticket-statut{font:600 10px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--r);background:var(--surface-2);border:1px solid var(--line-strong);padding:4px 7px}.ticket-statut.st-done,.ticket-statut.st-deployed{color:var(--green-ink)}.ticket-statut.st-doing,.ticket-statut.st-review{color:var(--cyan)}.dist{flex-direction:column;gap:7px;margin:0;padding:0;list-style:none;display:flex}.dist li{grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;font-size:12.5px;display:grid}.dist-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dist-n{color:var(--ink-2)}.dist-when{grid-column:1/-1;margin-top:-2px}.tags{flex-direction:column;gap:14px;display:flex}.tag-key{font:500 10.5px/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.tag-key .small{letter-spacing:0;text-transform:none}.side-note{align-items:flex-start;gap:8px;display:flex}.occ{flex-direction:column;gap:10px;display:flex}.activity{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.act{gap:10px;display:flex}.act-body{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.act-head{flex-wrap:wrap;align-items:baseline;gap:4px 6px;padding-top:2px;display:flex}.act.act-regression .act-head span:not(.muted){color:var(--red-ink)}.act.act-resolu .act-head span:not(.muted),.act.act-resolu_au_deploiement .act-head span:not(.muted),.act.act-ticket_livre .act-head span:not(.muted){color:var(--green-ink)}.comment{white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--line);background:var(--bg-soft);border-radius:var(--r);padding:9px 12px}.comment-form{align-items:flex-end;gap:8px;display:flex}.event{flex-direction:column;display:flex}.esec{border-bottom:1px solid var(--line);padding:10px 0}.esec:last-child{border-bottom:0}.esec-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.esec-toggle{cursor:pointer;font:500 10.5px/1.2 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);background:0 0;border:0;align-items:center;gap:8px;padding:4px 0;display:inline-flex}.esec-toggle:hover{color:var(--ink)}.esec-body{padding-top:8px}.exceptions{flex-direction:column;gap:18px;display:flex}.exception{flex-direction:column;gap:8px;display:flex}.cause{color:var(--faint)}.exc-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.exc-type{color:var(--red-ink);font-size:15px}.exc-value{overflow-wrap:anywhere;white-space:pre-wrap;font-size:14px}.stack-tools{justify-content:flex-end;margin-bottom:6px;display:flex}.frames{border:1px solid var(--line);border-radius:var(--r);margin:0;padding:0;list-style:none}.frame+.frame{border-top:1px solid var(--line)}.frame-head{text-align:left;cursor:pointer;background:0 0;border:0;flex-wrap:wrap;align-items:baseline;gap:4px 8px;width:100%;padding:7px 10px;font-size:12.5px;display:flex}.frame-head.static{cursor:default;padding-left:31px}.frame-head svg{color:var(--muted);align-self:center}.frame-head:hover:not(.static){background:var(--hover)}.frame.in-app .fn{color:var(--ink);font-weight:500}.frame.in-app{box-shadow:inset 2px 0 0 var(--brand)}.frame.lib .fn,.frame.lib .file{color:var(--muted)}.frame .file{color:var(--ink-2);overflow-wrap:anywhere}.frame .in{font-size:11.5px}.frame .mod{font-size:11px}.lib-tag{font:500 9.5px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint);border:1px solid var(--line-strong);padding:2px 4px}.frame.libs .frame-head{font-size:12px}.code{background:var(--bg);border-top:1px solid var(--line);font:12px/1.6 var(--mono);margin:0;padding:6px 0;overflow-x:auto}.code>div{min-width:max-content;display:flex}.code .ln{text-align:right;min-width:52px;color:var(--faint);-webkit-user-select:none;user-select:none;padding:0 12px 0 10px;display:inline-block}.code .lc{white-space:pre;color:var(--ink-2);padding-right:16px}.code .cur{background:var(--red-soft)}.code .cur .ln{color:var(--red-ink)}.code .cur .lc{color:var(--ink)}.kv{border-collapse:collapse;width:100%;font-size:12.5px}.kv th,.kv td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:5px 8px}.kv th{width:32%;min-width:110px;color:var(--muted);overflow-wrap:anywhere;font-weight:500}.kv td{overflow-wrap:anywhere}.kv td.mono{font-size:12px}.inline-json{white-space:pre-wrap;font:11.5px/1.5 var(--mono);color:var(--ink-2);margin:0}.crumbs-wrap{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.crumbs{border:1px solid var(--line);border-radius:var(--r);width:100%;margin:0;padding:0;list-style:none}.crumb{border-bottom:1px solid var(--line);grid-template-columns:76px 120px minmax(0,1fr);gap:10px;padding:6px 10px;font-size:12.5px;display:grid}.crumb:last-child{background:var(--accent-soft);border-bottom:0}.crumb-cat{color:var(--cyan);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.crumb.lvl-error .crumb-cat,.crumb.lvl-fatal .crumb-cat{color:var(--red-ink)}.crumb.lvl-warning .crumb-cat{color:var(--yellow)}.crumb-msg{overflow-wrap:anywhere;flex-direction:column;gap:2px;display:flex}.crumb-data{color:var(--ink-2);flex-wrap:wrap;gap:2px 12px;font-size:11.5px;display:flex}.req-line{overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.req-line b{color:var(--accent-ink)}.contexts{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.context{flex-direction:column;gap:6px;min-width:0;display:flex}.event-tags{flex-wrap:wrap;gap:6px;display:flex}.etag{border:1px solid var(--line-strong);border-radius:var(--r);max-width:100%;font-size:12px;display:inline-flex;overflow:hidden}.etag>span{overflow-wrap:anywhere;padding:2px 7px}.etag>span:first-child{background:var(--surface-2);border-right:1px solid var(--line-strong)}.event-msg{font:14px/1.5 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--bg);border:1px solid var(--line);border-radius:var(--r);padding:10px 12px}.modules summary{cursor:pointer;color:var(--muted);margin:8px 0}.raw-json{background:var(--bg);border:1px solid var(--line);border-radius:var(--r);white-space:pre;max-height:520px;margin:8px 0 0;padding:12px;font-size:11.5px;line-height:1.5;overflow:auto}.table-wrap{border:1px solid var(--line);border-radius:var(--r);overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:12.5px}.table th{text-align:left;font:500 10px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:var(--surface-2);border-bottom:1px solid var(--line);white-space:nowrap;padding:8px 10px}.table td{border-bottom:1px solid var(--line);vertical-align:top;padding:8px 10px}.table tbody tr:last-child td{border-bottom:0}.table tbody tr[tabindex]{cursor:pointer}.table tbody tr[tabindex]:hover,.table tbody tr.on{background:var(--hover)}.table tbody tr.on{box-shadow:inset 2px 0 0 var(--brand)}.table .num{text-align:right}.table tr.attendu td{color:var(--muted)}.ellipsis{text-overflow:ellipsis;white-space:nowrap;max-width:320px;overflow:hidden}.timelines{flex-direction:column;gap:22px;display:flex}.timeline-head{align-items:center;gap:10px;margin-bottom:10px;display:flex}.timeline-head .display{color:var(--ink);font-size:16px}.deploys{border-left:1px solid var(--line-strong);flex-direction:column;gap:10px;margin:0;padding:0 0 0 18px;list-style:none;display:flex}.deploy{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 20px;padding:12px 14px;display:grid;position:relative}.deploy-pin{border:2px solid var(--pc);background:var(--bg);width:11px;height:11px;position:absolute;top:18px;left:-24px;transform:rotate(45deg)}.deploy.latest .deploy-pin{background:var(--pc)}.deploy-main{flex-direction:column;gap:4px;min-width:0;display:flex}.deploy-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.deploy-version{font-size:16px}.deploy-sub{flex-wrap:wrap;gap:12px;display:flex}.deploy-stats{flex-wrap:wrap;gap:8px;display:flex}.dstat{border:1px solid var(--line);border-radius:var(--r);background:var(--bg-soft);min-width:90px;color:var(--ink);flex-direction:column;gap:3px;padding:7px 10px;text-decoration:none;display:flex}a.dstat:hover{border-color:var(--line-strong);text-decoration:none}.dstat b{font-size:17px;line-height:1}.dstat span{color:var(--muted);font-size:11px}.dstat.warn b{color:var(--accent-ink)}.dstat.bad{border-color:#ff3d5a80}.dstat.bad b{color:var(--red-ink)}.dstat.rates{flex-direction:row;align-items:center;gap:10px}.dstat.rates>div:last-child{flex-direction:column;gap:3px;display:flex}.rate-bars{align-items:flex-end;gap:3px;height:28px;display:flex}.rate-bars span{background:var(--muted);width:7px;min-height:2px}.dstat.pire .rate-bars span:last-child{background:var(--red)}.dstat.pire b{color:var(--red-ink)}.dstat.mieux .rate-bars span:last-child{background:var(--green)}.dstat.mieux b{color:var(--green-ink)}.sites{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;display:grid}.site-card{border:1px solid var(--line);border-left:3px solid var(--orange);border-radius:var(--r);background:var(--surface);text-align:left;cursor:pointer;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.site-card.ready{border-left-color:var(--green)}.site-card:hover{border-color:var(--line-strong)}.site-card.on{box-shadow:0 0 0 1px var(--brand)}.site-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.site-head b{overflow-wrap:anywhere;font-size:14px}.site-stats{flex-wrap:wrap;gap:12px;display:flex}.propositions{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:10px;display:grid}.proposition ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.copy-field{align-items:center;gap:8px;min-width:0;display:flex}.copy-field code{background:var(--bg);border:1px solid var(--line);border-radius:var(--r);overflow-wrap:anywhere;cursor:text;flex:1;min-width:0;padding:7px 10px;font-size:12px}.csp-site{flex-direction:column;gap:8px;display:flex}.csp-site-name{margin-top:6px;font-size:14px;font-weight:500}.exemples{max-width:420px}.exemple{overflow-wrap:anywhere}.exemple+.exemple{margin-top:4px}.tabs{box-shadow:inset 0 -1px 0 var(--line);scrollbar-width:none;gap:2px;display:flex;overflow:auto hidden}.tab{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;padding:9px 14px;font-size:13px}.tab:hover{color:var(--ink);text-decoration:none}.tab.on{color:var(--ink);border-bottom-color:var(--brand)}.settings-split{grid-template-columns:230px minmax(0,1fr);align-items:start;gap:16px;display:grid}.settings-list{flex-direction:column;gap:2px;display:flex;position:sticky;top:16px}.settings-item{border-radius:var(--r);color:var(--ink-2);align-items:center;gap:9px;padding:8px 10px;font-size:13px;display:flex}.settings-item:hover{background:var(--hover);text-decoration:none}.settings-item.on{background:var(--surface-2);color:var(--ink);box-shadow:inset 2px 0 0 var(--brand)}.settings-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.settings-list .btn{margin-top:8px}.settings-body{min-width:0}.keys-block{flex-direction:column;gap:8px;margin-top:6px;display:flex}.snippet{flex-direction:column;gap:6px;display:flex}.code-block{background:var(--bg);border:1px solid var(--line);border-radius:var(--r);white-space:pre;margin:0;padding:12px 14px;font-size:12px;line-height:1.6;overflow-x:auto}.alert-grid{grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:12px;display:grid}.alert-card{border-top:3px solid var(--pc)}.toggles{flex-wrap:wrap;gap:18px;display:flex}.pic-rule,.mute-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.mute-row .input[type=datetime-local]{width:auto}.integ .row .input{min-width:220px}.token-form{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.token-form .field:first-child{flex:1;min-width:200px}.merge-list{border:1px solid var(--line);border-radius:var(--r);flex-direction:column;max-height:46vh;display:flex;overflow-y:auto}.merge-row{border-bottom:1px solid var(--line);grid-template-columns:22px auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:grid}.merge-row:last-child{border-bottom:0}.merge-row.on{background:var(--accent-soft)}.merge-row .titre-txt{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pad{padding:14px}.login{place-items:center;min-height:100vh;padding:16px;display:grid}.login-card{border:1px solid var(--line);background:var(--surface);flex-direction:column;gap:16px;width:min(420px,100%);padding:28px;display:flex}@media (max-width:1100px){.detail-grid{grid-template-columns:minmax(0,1fr)}.detail-side{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-items:start;display:grid}.projet-resume{grid-template-columns:minmax(0,1fr)}.projet-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.now{grid-template-columns:minmax(0,1fr)}}@media (max-width:900px){.nav{height:100%;box-shadow:var(--shadow-2);z-index:40;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.app.nav-open .nav{transform:none}.nav-scrim{z-index:30;background:#0000008c;position:fixed;inset:0}.mobile-bar{z-index:15;background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:8px 12px;display:flex;position:sticky;top:0}.mobile-logo{color:var(--ink);margin-right:auto}.env-pill{font:600 10px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--brand);color:var(--accent-ink);padding:5px 7px}.page{padding:18px 16px 56px}.plist-bar{top:49px}.settings-split{grid-template-columns:minmax(0,1fr)}.settings-list{flex-flow:wrap;position:static}.settings-list .btn{margin-top:0}.alert-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){body{font-size:14px}.page{gap:16px}.page-head{align-items:flex-start}.now{padding:14px}.now-stats{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.stat{min-width:0;padding:8px}.stat b{font-size:20px}.stat span{letter-spacing:.05em;font-size:9px}.cards{grid-template-columns:minmax(0,1fr)}.plist-hint{display:none}.prow{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:6px 8px}.prow-side{grid-column:2;justify-content:space-between;gap:8px}.prow-actions{opacity:1}.prow-count{align-items:flex-start;min-width:0}.titre{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.prow-meta .lieu{max-width:100%}.filters-row.selects{scrollbar-width:thin;flex-wrap:nowrap;padding-bottom:4px;position:relative;overflow-x:auto}.filters-row.selects>*{flex:none}.search-field{min-width:100%}.seg{max-width:100%;overflow-x:auto}.projet-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-head{padding-left:10px}.detail-actions .btn kbd{display:none}.detail-side{grid-template-columns:minmax(0,1fr)}.crumb{grid-template-columns:64px minmax(0,1fr)}.crumb-msg{grid-column:1/-1}.kv th{width:38%;min-width:0}.deploy,.form-grid{grid-template-columns:minmax(0,1fr)}.comment-form{flex-direction:column;align-items:stretch}.event-card>div:last-child,.event-nav{padding-left:12px;padding-right:12px}.card{padding:14px 12px}.csp-table thead,.settings-body .table thead,.settings-body+* .table thead{display:none}.csp-table,.csp-table tbody,.csp-table tr,.csp-table td{width:100%;display:block}.csp-table tr{border-bottom:1px solid var(--line);padding:8px 10px}.csp-table td{border:0;grid-template-columns:90px minmax(0,1fr);gap:8px;padding:3px 0;display:grid;text-align:left!important}.csp-table td:before{content:attr(data-label);font:500 10px/1.6 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.toasts{align-items:stretch;bottom:16px;left:16px;right:16px}.merge-row{grid-template-columns:22px minmax(0,1fr)}.merge-row>:nth-child(n+3){grid-column:2}.backdrop{padding-top:6vh}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
/*$vite$:1*/