/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:var(--font-ui);--font-mono:var(--font-mono);--spacing:.25rem;--container-3xl:48rem;--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-bold:700;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.bottom-0{bottom:calc(var(--spacing) * 0)}.left-full{left:100%}.z-40{z-index:40}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.h-14{height:calc(var(--spacing) * 14)}.min-h-\[calc\(100vh-1px\)\]{min-height:calc(100vh - 1px)}.w-14{width:calc(var(--spacing) * 14)}.max-w-3xl{max-width:var(--container-3xl)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-3{gap:calc(var(--spacing) * 3)}.gap-6{gap:calc(var(--spacing) * 6)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-16{padding-block:calc(var(--spacing) * 16)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-\[length\:var\(--t-lg\)\]{font-size:var(--t-lg)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.tracking-\[-0\.01em\]{--tw-tracking:-.01em;letter-spacing:-.01em}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}@media (width>=40rem){.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}:root{--hue:293;--paper:oklch(98.3% .01 88);--surface:oklch(95.7% .013 86);--surface-2:oklch(93.6% .015 84);--hairline:oklch(.912 .01 var(--hue));--hairline-2:oklch(.855 .013 var(--hue));--edge:oklch(.63 .02 var(--hue));--ink:oklch(.205 .021 var(--hue));--ink-2:oklch(.335 .019 var(--hue));--ink-soft:oklch(.47 .017 var(--hue));--ink-faint:oklch(.545 .015 var(--hue));--carter:oklch(.185 .022 var(--hue));--carter-2:oklch(.255 .024 var(--hue));--carter-line:oklch(.325 .022 var(--hue));--carter-edge:oklch(.505 .02 var(--hue));--on-carter:oklch(.97 .006 var(--hue));--on-carter-soft:oklch(.78 .012 var(--hue));--on-carter-faint:oklch(.655 .014 var(--hue));--violet:oklch(.552 .235 var(--hue));--violet-deep:oklch(.462 .22 var(--hue));--violet-tint:oklch(.95 .032 var(--hue));--violet-line:oklch(.82 .09 var(--hue));--violet-on-carter:oklch(.74 .16 var(--hue));--font-ui:"Quicksand", ui-rounded, "SF Pro Rounded", ui-sans-serif, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", monospace;--t-2xs:.625rem;--t-xs:.6875rem;--t-sm:.8125rem;--t-base:.9375rem;--t-md:1.0625rem;--t-lg:1.375rem;--t-xl:1.75rem;--t-2xl:2.5rem;--t-3xl:3rem;--lh-tight:1.15;--lh-snug:1.35;--lh-body:1.6;--r-xs:6px;--r:10px;--r-md:14px;--r-lg:16px;--r-pill:999px;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--rail-w:60px;--shadow-pop:0 8px 28px -12px oklch(.205 .05 var(--hue) / .28);--ease:cubic-bezier(.22, 1, .36, 1);--dur:.17s}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-ui);font-size:var(--t-base);line-height:var(--lh-body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none}[hidden]{display:none!important}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}input,textarea,select{font:inherit;color:inherit}::selection{background:var(--violet);color:#fff}.mono{font-family:var(--font-mono);font-feature-settings:"tnum" 1}.tnum{font-variant-numeric:tabular-nums}.sep{width:1px;height:.85em;margin:0 var(--sp-2);background:var(--edge);vertical-align:-.1em;flex:none;display:inline-block}.signal-meta .sep,.lead-meta .sep{margin:0}.app-rail .sep,.statusbar .sep,.delta .sep{background:var(--carter-edge)}:focus-visible{outline:2px solid var(--violet);outline-offset:2px;border-radius:inherit}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--sp-3);top:var(--sp-3);z-index:100;transform:translateY(calc(-100% - var(--sp-4)));background:var(--ink);color:var(--paper);font-size:var(--t-sm);border-radius:var(--r);transition:transform var(--dur) var(--ease);padding:9px 16px;font-weight:600;position:absolute}.skip-link:focus-visible{transform:translateY(0)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.app-rail{width:var(--rail-w);z-index:40;align-items:center;gap:var(--sp-2);padding:var(--sp-4) 0;background:var(--carter);border-right:1px solid var(--carter-line);flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0}.rail-logo{width:38px;height:38px;color:var(--on-carter);margin-bottom:var(--sp-3);place-items:center;display:grid}.rail-logo svg{width:30px;height:22px}.rail-nav{flex-direction:column;flex:1;align-items:center;gap:2px;display:flex}.rail-sep{background:var(--carter-line);width:22px;height:1px;margin:var(--sp-2) 0}.rail-btn{width:40px;height:40px;color:var(--on-carter-faint);border-radius:var(--r);transition:background var(--dur) var(--ease), color var(--dur) var(--ease);place-items:center;display:grid;position:relative}.rail-btn svg{width:19px;height:19px}.rail-btn:hover{background:var(--carter-2);color:var(--on-carter)}.rail-btn[aria-current=page]{background:var(--paper);color:var(--carter)}.rail-btn .rail-dot{min-width:17px;height:17px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--carter);background:var(--on-carter);border:2px solid var(--carter);transition:transform .26s var(--ease);border-radius:4px;place-items:center;padding:0 4px;font-size:9px;font-weight:600;display:grid;position:absolute;top:3px;right:3px}.rail-btn .rail-dot.is-bumped{transform:scale(1.34)}.rail-btn .rail-dot:empty,.rail-btn .rail-dot[hidden]{display:none}.rail-avatar{border-radius:var(--r);background:var(--carter-2);width:34px;height:34px;color:var(--on-carter);box-shadow:inset 0 0 0 1px var(--carter-edge);font-weight:700;font-size:var(--t-sm);place-items:center;display:grid}.rail-account-popover{margin-left:calc((var(--rail-w) - 34px) / 2 + var(--sp-3));background:var(--paper);box-shadow:var(--shadow-pop);padding:var(--sp-1)}.app-main{margin-left:var(--rail-w);min-height:100vh;padding-bottom:var(--sp-7)}.wrap{width:100%;max-width:2000px;margin:0 auto;padding:0 clamp(24px,4vw,64px)}.wrap--narrow{max-width:760px}.statusbar{z-index:30;background:var(--carter);border-bottom:1px solid var(--carter-line);color:var(--on-carter-soft);position:sticky;top:0}.statusbar-inner{align-items:center;gap:var(--sp-5);height:50px;display:flex}.statusbar :focus-visible,.app-rail :focus-visible{outline-color:var(--violet-on-carter)}.live{align-items:center;gap:var(--sp-2);font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--on-carter-soft);white-space:nowrap;display:inline-flex}.live b{color:var(--on-carter);font-weight:600}.live-dot{background:var(--on-carter);border-radius:2px;flex:none;width:7px;height:7px;position:relative}.live-dot:after{content:"";border:1px solid var(--on-carter);animation:pulse 2.4s var(--ease) infinite;border-radius:2px;position:absolute;inset:-4px}.live-dot.is-beat{animation:beat .62s var(--ease)}@keyframes beat{0%{transform:scale(1)}30%{transform:scale(2.1)}to{transform:scale(1)}}@keyframes pulse{50%{opacity:.5}}.search{align-items:center;gap:var(--sp-2);min-width:0;max-width:420px;height:34px;padding:0 var(--sp-4);background:var(--carter-2);border:1px solid var(--carter-edge);border-radius:var(--r-pill);transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);flex:1;display:flex}.search:focus-within{border-color:var(--violet-on-carter);background:var(--carter-2)}.search svg{width:16px;height:16px;color:var(--on-carter-faint);flex:none}.search input{min-width:0;font-family:var(--font-mono);font-size:var(--t-sm);color:var(--on-carter);background:0 0;border:none;outline:none;flex:1}.search input::placeholder{color:var(--on-carter-faint)}.search kbd{font-family:var(--font-mono);font-size:var(--t-2xs);color:var(--on-carter-faint);border:1px solid var(--carter-edge);border-radius:var(--r-xs);padding:1px 6px}.status-count{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.03em;text-transform:uppercase;color:var(--on-carter-soft);white-space:nowrap}.status-count b{color:var(--on-carter);font-weight:600}.status-count .crit{color:var(--violet-on-carter)}.status-count .unread{color:var(--on-carter)}.page-head{padding:var(--sp-6) 0 var(--sp-5)}.eyebrow{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}.page-title{font-size:var(--t-2xl);letter-spacing:-.01em;font-weight:700;line-height:var(--lh-tight);color:var(--ink);margin-top:var(--sp-2)}.page-sub{color:var(--ink-soft);font-size:var(--t-sm);margin-top:var(--sp-2);max-width:60ch}.toolbar{align-items:center;gap:var(--sp-3);padding:var(--sp-3) 0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);flex-wrap:wrap;display:flex}.chips{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.chip{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.03em;text-transform:uppercase;color:var(--ink-soft);border-radius:var(--r-pill);transition:background var(--dur) var(--ease), color var(--dur) var(--ease), border-color var(--dur) var(--ease);white-space:nowrap;border:1px solid #0000;padding:5px 12px}.chip:hover{background:var(--surface-2);color:var(--ink)}.chip[aria-pressed=true]{background:var(--ink);color:var(--paper)}.spacer{flex:1}.seg{border:1px solid var(--edge);border-radius:var(--r-pill);display:inline-flex;overflow:hidden}.seg button{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.03em;text-transform:uppercase;color:var(--ink-soft);transition:background var(--dur) var(--ease), color var(--dur) var(--ease);padding:5px 12px}.seg button:first-child{padding-left:15px}.seg button:last-child{padding-right:15px}.seg button+button{border-left:1px solid var(--edge)}.seg button[aria-pressed=true]{background:var(--surface-2);color:var(--ink)}.feed{border-bottom:1px solid var(--hairline)}.feed-colhead{gap:var(--sp-4);padding:var(--sp-3) var(--sp-3);font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);border-bottom:1px solid var(--hairline);grid-template-columns:84px 1fr auto;display:grid}.feed-colhead .right{text-align:right}.signal{gap:var(--sp-4);padding:var(--sp-4) var(--sp-3);border-bottom:1px solid var(--hairline);transition:background var(--dur) var(--ease);grid-template-columns:84px 1fr auto 64px;align-items:start;display:grid}.signal:hover{background:var(--surface)}.signal:last-child{border-bottom:none}.triage{--gutter-w:14px}.signal-flag{width:var(--gutter-w);justify-content:center;padding-top:15px;display:flex}.signal-flag:before{content:"";background:var(--ink);width:8px;height:8px;transition:background var(--dur) var(--ease), transform var(--dur) var(--ease);border-radius:2px}.signal.is-read .signal-flag:before{background:0 0;transform:scale(.5)}.signal.is-read .signal-title{color:var(--ink-2);font-weight:400}.signal.is-read .signal-resume{color:var(--ink-faint)}.signal.is-read .signal-meta .src{color:var(--ink-soft);font-weight:400}.signal.is-leaving{opacity:0;transition:opacity .16s var(--ease), transform .16s var(--ease);transform:translate(-8px)}.grav{flex-direction:column;align-items:center;gap:4px;width:max-content;padding-top:1px;display:flex}.grav-num{--grav-size:40px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:600;font-size:var(--t-xl);width:var(--grav-size);height:var(--grav-size);border-radius:calc(var(--grav-size) * .35);place-items:center;line-height:1;display:grid}.grav-num--lg{--grav-size:52px;font-size:var(--t-2xl)}.grav-num--xl{--grav-size:60px;font-size:var(--t-2xl)}.grav-label{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.g5 .grav-num{background:var(--violet);color:#fff}.g5 .grav-label{color:var(--violet-deep)}.g4 .grav-num{background:var(--ink);color:var(--paper)}.g4 .grav-label{color:var(--violet-deep)}.g3 .grav-num{color:var(--ink);background:var(--hairline-2)}.g2 .grav-num{color:var(--ink-2);background:var(--surface-2)}.g1 .grav-num{color:var(--ink-soft);box-shadow:inset 0 0 0 1px var(--hairline-2);background:0 0}.signal-body{min-width:0}.signal-meta{align-items:center;gap:var(--sp-2);font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-soft);flex-wrap:wrap;display:flex}.signal-meta .src{color:var(--ink);font-weight:500}.signal-meta .cve{color:var(--violet-deep)}.tag-exploit{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--violet-deep);border:1px solid var(--violet-deep);border-radius:var(--r-pill);padding:1px 7px;font-weight:600}.gravite-raison{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-soft)}.gravite-raison--kev{color:#a01020;font-weight:600}.tag-new{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);border:1px solid var(--ink);border-radius:var(--r-pill);padding:1px 7px}.tag-concerne{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);background:var(--surface-2);border:1px solid var(--edge);border-radius:var(--r-pill);padding:1px 7px}.signal-title{font-size:var(--t-md);letter-spacing:0;font-weight:600;line-height:var(--lh-snug);color:var(--ink);max-width:68ch;transition:color var(--dur) var(--ease);margin-top:5px}.signal:hover .signal-title{color:var(--violet-deep)}.signal-resume{font-size:var(--t-sm);color:var(--ink-soft);line-height:var(--lh-snug);-webkit-line-clamp:1;-webkit-box-orient:vertical;max-width:88ch;margin-top:4px;display:-webkit-box;overflow:hidden}.signal-side{align-items:flex-end;gap:var(--sp-2);flex-direction:column;display:flex}.signal-thumb{border-radius:4px;flex-shrink:0;width:64px;height:48px;overflow:hidden}.signal-thumb img{object-fit:cover;width:100%;height:100%;display:block}.signal-thumb--logo{background:var(--surface);border:1px solid var(--hairline);padding:6px}.signal-thumb--logo img{object-fit:contain}.signal-foot{align-items:center;gap:var(--sp-2);display:flex}.cat{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);border:1px solid var(--edge);border-radius:var(--r-pill);white-space:nowrap;padding:2px 9px}.signal-time{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-faint);white-space:nowrap}.sk{gap:var(--sp-4);padding:var(--sp-4) var(--sp-3);border-bottom:1px solid var(--hairline);grid-template-columns:84px 1fr auto;display:grid}.sk-bar{border-radius:var(--r-xs);background:var(--surface-2);height:10px;position:relative;overflow:hidden}.sk-bar.sk-bar--icon{border-radius:var(--r);width:40px;height:40px}.sk-bar:after{content:"";background:linear-gradient(90deg, transparent, var(--surface), transparent);animation:shimmer 1.3s var(--ease) infinite;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{to{transform:translate(100%)}}.empty{text-align:center;padding:var(--sp-7) var(--sp-4);border:1px dashed var(--hairline-2);border-radius:var(--r-lg);margin-top:var(--sp-5)}.empty svg{width:26px;height:26px;color:var(--ink-faint);margin-inline:auto}.empty-title{font-size:var(--t-md);margin-top:var(--sp-3);font-weight:700}.empty p{color:var(--ink-soft);font-size:var(--t-sm);margin-top:var(--sp-2)}.empty p.empty-action{margin-top:var(--sp-4)}.empty.empty--error{border-style:solid;border-width:2px;border-color:var(--edge)}.empty-title--danger{color:var(--violet-deep)}.layout-2col{gap:var(--sp-6);grid-template-columns:minmax(0,1fr);display:grid}.layout-2col>*{min-width:0}@media (width>=1080px){.layout-2col{gap:var(--sp-7);grid-template-columns:minmax(0,1fr) 280px}}@media (width>=1700px){.layout-2col{grid-template-columns:minmax(0,1fr) 320px}}@media (width>=1080px){.layout-2col--lecture{grid-template-columns:minmax(0,72ch) 300px;justify-content:start}.layout-2col--lecture .synthese-texte,.layout-2col--lecture .visuel--detail{max-width:none}}.wrap--lecture{max-width:calc(72ch + 300px + var(--sp-7) + 2 * clamp(24px, 4vw, 64px))}@media (width>=1700px){.layout-2col--lecture{grid-template-columns:minmax(0,78ch) 340px}.wrap--lecture{max-width:calc(78ch + 340px + var(--sp-7) + 128px)}}.rail-right{display:none}@media (width>=1080px){.rail-right{padding-top:var(--sp-5);border-left:1px solid var(--hairline);padding-left:var(--sp-5);display:block}}.side-title{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--sp-3)}.grav-scale{flex-direction:column;display:flex}.grav-row{align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-2);border-radius:var(--r);font-size:var(--t-sm);color:var(--ink-soft);transition:background var(--dur) var(--ease), color var(--dur) var(--ease);text-align:left;width:100%;display:flex}.grav-row:hover{background:var(--surface);color:var(--ink)}.grav-row[aria-pressed=true]{background:var(--surface-2);color:var(--ink)}.grav-key{font-family:var(--font-mono);font-variant-numeric:tabular-nums;border-radius:var(--r-xs);width:22px;height:22px;font-weight:600;font-size:var(--t-sm);flex:none;place-items:center;display:grid}.g5 .grav-key{background:var(--violet);color:#fff}.g4 .grav-key{background:var(--ink);color:var(--paper)}.g3 .grav-key{background:var(--hairline-2);color:var(--ink)}.g2 .grav-key{background:var(--surface-2);color:var(--ink-2)}.g1 .grav-key{box-shadow:inset 0 0 0 1px var(--hairline-2);color:var(--ink-soft)}.grav-count{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-faint);margin-left:auto}.grav-row[aria-pressed=true] .grav-count{color:var(--ink-soft)}.btn{align-items:center;gap:var(--sp-2);font-size:var(--t-sm);border-radius:var(--r);transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease);padding:9px 16px;font-weight:600;display:inline-flex}.btn svg{width:16px;height:16px}.btn-primary{background:var(--ink);color:var(--paper)}.btn-primary:hover{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.btn-primary:hover{background:color-mix(in oklch, var(--ink) 86%, var(--paper))}}.btn-ghost{border:1px solid var(--edge);color:var(--ink)}.btn-ghost:hover{background:var(--surface)}.btn-violet{background:var(--violet);color:#fff}.btn-violet:hover{background:var(--violet-deep)}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;background:var(--surface);color:var(--ink-faint);border-color:#0000}.btn:disabled:hover,.btn[aria-disabled=true]:hover{background:var(--surface)}.btn[aria-busy=true]{cursor:progress;pointer-events:none}.btn[aria-busy=true] .btn-spin{border:2px solid;border-top-color:#0000;border-radius:3px;flex:none;width:13px;height:13px;animation:.62s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.grav-chips{display:none}.grav-chips-label{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-right:2px}.grav-chips .chip{align-items:center;gap:6px;display:inline-flex}.grav-chips .gk{font-family:var(--font-mono);font-variant-numeric:tabular-nums;border-radius:var(--r-xs);width:17px;height:17px;font-weight:600;font-size:var(--t-2xs);place-items:center;display:grid}.grav-chips .g5 .gk{background:var(--violet);color:#fff}.grav-chips .g4 .gk{background:var(--ink);color:var(--paper)}.grav-chips .g3 .gk{background:var(--hairline-2);color:var(--ink)}.grav-chips .g2 .gk{background:var(--surface-2);color:var(--ink-2)}.grav-chips .g1 .gk{box-shadow:inset 0 0 0 1px var(--hairline-2);color:var(--ink-soft)}.grav-chips .chip[aria-pressed=true] .gk{box-shadow:inset 0 0 0 1px var(--paper)}@media (width<=1079px){.grav-chips{flex-wrap:wrap;flex-basis:100%;align-items:center;gap:4px;display:flex}}@media (width<=960px){.statusbar-inner{height:auto;padding-block:var(--sp-2);gap:var(--sp-2) var(--sp-3);flex-wrap:wrap}.search{flex-basis:100%;order:-1;max-width:none}.search kbd{display:none}.live{font-size:var(--t-2xs)}.status-count{font-size:var(--t-2xs);margin-left:auto}}@media (width<=640px){:root{--rail-w:54px}.triage{--gutter-w:10px}.page-head{padding:var(--sp-5) 0 var(--sp-4)}.page-title{font-size:var(--t-xl)}.feed-colhead{display:none}.signal{gap:var(--sp-3);padding:var(--sp-4) 2px;grid-template-columns:58px 1fr}.signal-flag{padding-top:12px}.grav-num{--grav-size:34px;font-size:var(--t-lg)}.grav-num--lg{--grav-size:42px;font-size:var(--t-xl)}.grav-num--xl{--grav-size:46px;font-size:var(--t-xl)}.signal-title{font-size:var(--t-base);max-width:none}.signal-resume{-webkit-line-clamp:2;max-width:none}.signal-thumb{display:none}.signal-side{justify-content:flex-start;align-items:center;gap:var(--sp-2);min-width:0;margin-top:var(--sp-2);flex-flow:wrap;grid-column:2}.live,.status-count{white-space:normal;min-width:0}.status-count{margin-left:0}.toolbar{gap:var(--sp-2)}.sk{grid-template-columns:58px 1fr}}.section-title{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--sp-4);font-weight:500}[role=tabpanel]>.section-title:first-child{margin-top:var(--sp-5)}.backlink{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);padding:var(--sp-4) 0;transition:color var(--dur) var(--ease);align-items:center;gap:6px;display:inline-flex}.backlink:hover{color:var(--ink)}.backlink svg{width:14px;height:14px}.page-actions{align-items:center;gap:var(--sp-2);margin-left:auto;display:flex}.icon-btn{--icon-btn-size:30px;width:var(--icon-btn-size);height:var(--icon-btn-size);color:var(--ink-soft);border-radius:var(--r);transition:background var(--dur) var(--ease), color var(--dur) var(--ease);flex:none;place-items:center;display:grid}.icon-btn:hover{background:var(--surface-2);color:var(--ink)}.icon-btn svg{width:16px;height:16px}.icon-btn:disabled,.icon-btn[aria-disabled=true]{color:var(--ink-faint);cursor:not-allowed}.icon-btn:disabled:hover,.icon-btn[aria-disabled=true]:hover{background:0 0}.head-row{align-items:flex-end;gap:var(--sp-4);flex-wrap:wrap;display:flex}.add-form{border:1px solid var(--hairline);border-radius:var(--r-lg);padding:var(--sp-5);margin-bottom:var(--sp-5)}.read-progress{z-index:60;pointer-events:none;background:0 0;height:3px;position:fixed;inset:0 0 auto}.read-progress-bar{background:var(--violet-deep,var(--ink));will-change:width;height:100%;transition:width 80ms linear}.signal-head{gap:var(--sp-5);padding:var(--sp-2) 0 var(--sp-5);align-items:flex-start;display:flex}.signal-head .grav{flex:none}.signal-head>:not(.grav){min-width:0}.detail-title{font-size:var(--t-2xl);letter-spacing:-.01em;font-weight:700;line-height:var(--lh-tight);overflow-wrap:break-word;max-width:26ch}.lead-meta{align-items:center;gap:var(--sp-2);font-family:var(--font-mono);font-size:var(--t-sm);color:var(--ink-soft);flex-wrap:wrap;display:flex}.lead-meta .src,.lead-meta b{color:var(--ink);font-weight:600}.lead-meta .cve{color:var(--violet-deep)}@media (width<=640px){.signal-head{gap:var(--sp-3)}.detail-title{font-size:var(--t-xl);max-width:none}.signal-head .lead-meta{font-size:var(--t-xs)}}.visuel{min-width:0;margin:0}.visuel-img{aspect-ratio:16/9;object-fit:cover;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-lg);width:100%;display:block}.visuel--detail{max-width:72ch;margin-bottom:var(--sp-5)}.visuel--detail .visuel-img{max-height:200px}.visuel--feature .visuel-img{border-radius:var(--r-md)}.provenance{align-items:center;gap:var(--sp-3);font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);display:flex}.provenance:after{content:"";background:var(--hairline);flex:1;height:1px}.synthese{margin-bottom:var(--sp-6)}.synthese .provenance{margin-bottom:var(--sp-3)}.synthese-texte{font-size:var(--t-md);line-height:var(--lh-body);color:var(--ink);overflow-wrap:break-word;max-width:62ch}.contenu-source .provenance{margin-bottom:var(--sp-4)}.contenu-suite{margin-top:var(--sp-4);font-family:var(--font-mono);font-size:var(--t-sm)}.contenu-suite a{color:var(--ink);text-underline-offset:3px}@media (width<=640px){.synthese-texte{font-size:var(--t-base)}}.prose,.signal-title,.signal-resume,.page-sub{overflow-wrap:break-word}.prose{max-width:72ch}.prose>*+*{margin-top:var(--sp-4)}.prose p{color:var(--ink-2);line-height:var(--lh-body);text-align:justify;-webkit-hyphens:auto;hyphens:auto}.prose h2{font-size:var(--t-lg);letter-spacing:0;margin-top:var(--sp-6);font-weight:700}.prose ul{color:var(--ink-2);padding-left:0;list-style:none}.prose li{margin-top:6px}.prose ul>li{padding-left:22px;position:relative}.prose ul>li:before{content:"";background:var(--hairline-2);width:10px;height:1px;position:absolute;top:.78em;left:0}.prose a{color:var(--violet-deep);text-underline-offset:2px;text-decoration:underline}.prose strong{color:var(--ink);font-weight:700}code,kbd,samp{font-family:var(--font-mono)}.prose code,.note-text code{font-family:var(--font-mono);background:var(--surface);border-radius:var(--r-xs);color:var(--ink);padding:1px 5px;font-size:.9em}.panel{border:1px solid var(--hairline);border-radius:var(--r-lg);padding:var(--sp-4)}.panel+.panel{margin-top:var(--sp-4)}.panel-row{align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;font-size:var(--t-sm);display:flex}.panel-row .k{color:var(--ink-faint);font-family:var(--font-mono);font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.06em;flex:none}.panel-row .v{text-align:right;overflow-wrap:anywhere;min-width:0;color:var(--ink);font-family:var(--font-mono);font-size:var(--t-sm);margin-left:auto}.divider{background:var(--hairline);height:1px;margin:var(--sp-3) 0}.field{flex-direction:column;gap:6px;display:flex}.field+.field{margin-top:var(--sp-4)}.label{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}.input,.select,.textarea{background:var(--paper);border:1px solid var(--edge);border-radius:var(--r);width:100%;font-size:var(--t-base);color:var(--ink);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);outline:none;padding:9px 14px}.input::placeholder,.textarea::placeholder{color:var(--ink-faint)}.input:focus,.select:focus,.textarea:focus{border-color:var(--violet);box-shadow:0 0 0 3px var(--violet-tint)}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.input[aria-invalid=true]:focus,.select[aria-invalid=true]:focus,.textarea[aria-invalid=true]:focus{box-shadow:inset 0 0 0 1px var(--ink), 0 0 0 3px var(--violet-tint)}.field-error{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--violet-deep);align-items:baseline;gap:6px;display:flex}.field-error:before{content:"!";flex:none;font-weight:600}.input:disabled,.select:disabled,.textarea:disabled{background:var(--surface);color:var(--ink-faint);cursor:not-allowed;border-color:#0000}.input:disabled::placeholder,.textarea:disabled::placeholder{color:var(--ink-faint)}.textarea{resize:vertical;min-height:96px;line-height:var(--lh-snug)}.select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"%235b5964\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M6 9l6 6 6-6\"/></svg>");background-position:right 12px center;background-repeat:no-repeat;padding-right:34px}.input-pass{position:relative}.input-pass .input{padding-right:44px}.input-pass-toggle{border-radius:var(--r);width:32px;height:32px;color:var(--ink-soft);place-items:center;display:grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.input-pass-toggle:hover{color:var(--ink);background:var(--surface)}.input-pass-toggle svg{width:18px;height:18px}.input-pass-toggle:disabled{cursor:not-allowed;color:var(--ink-faint);background:0 0}.pass-rules{gap:4px var(--sp-3);font-size:var(--t-xs);color:var(--ink-faint);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin:2px 0 0;padding:0;list-style:none;display:grid}.pass-rules li{align-items:center;gap:8px;display:flex}.pass-rules li.is-ok{color:var(--ink)}.pass-rules-mark{border:1px solid var(--edge);border-radius:3px;flex:none;place-items:center;width:14px;height:14px;display:grid}.pass-rules li.is-ok .pass-rules-mark{background:var(--ink);border-color:var(--ink);color:var(--paper)}.pass-rules-mark svg{stroke-width:2.4px;width:11px;height:11px}.select option{background:var(--paper);color:var(--ink)}.help{font-size:var(--t-xs);color:var(--ink-faint)}.form-actions{gap:var(--sp-2);margin-top:var(--sp-5);display:flex}.tabs{gap:var(--sp-4);border-bottom:1px solid var(--hairline);display:flex}.tab{font-size:var(--t-sm);color:var(--ink-soft);transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease);border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 2px;font-weight:600}.tab:hover{color:var(--ink)}.tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink)}.tab .count{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-faint);margin-left:6px}.table-wrap{width:100%;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:var(--t-sm)}.table thead th{text-align:left;font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);padding:var(--sp-3);border-bottom:1px solid var(--hairline);white-space:nowrap;font-weight:500}.table tbody td{padding:var(--sp-3);border-bottom:1px solid var(--hairline);color:var(--ink-2);vertical-align:middle}.table tbody tr{transition:background var(--dur) var(--ease)}.table tbody tr:hover{background:var(--surface)}.table td.num,.table th.num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.table .mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.cell-strong{color:var(--ink);font-weight:600}.cell-sub{color:var(--ink-faint);font-family:var(--font-mono);font-size:var(--t-xs)}.pill{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--r-pill);white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;padding:2px 8px;display:inline-flex}.pill-dot{border-radius:1.5px;flex:none;width:6px;height:6px}.pill--on{color:var(--ink);border-color:var(--edge)}.pill--on .pill-dot{background:var(--ink)}.pill--off{color:var(--ink-faint);border-color:var(--hairline)}.pill--off .pill-dot{background:var(--ink-faint)}.pill--ok{color:var(--ink);border-color:var(--edge)}.pill--ok .pill-dot{background:var(--ink)}.pill--fail{color:var(--violet-deep);border-color:var(--violet-line);background:var(--violet-tint)}.pill--fail .pill-dot{background:var(--violet)}.pill--admin{color:var(--ink);border-color:var(--ink);font-weight:600}.pill--user{color:var(--ink-soft);border-color:var(--edge)}.metrics{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);flex-wrap:wrap;display:flex}.metric{min-width:168px;padding:var(--sp-5) var(--sp-5) var(--sp-5) 0;flex:1}.metric+.metric{padding-left:var(--sp-5);border-left:1px solid var(--hairline)}.m-label{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint)}.m-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--t-2xl);color:var(--ink);margin-top:var(--sp-2);letter-spacing:-.02em;font-weight:600;line-height:1}.m-sub{font-size:var(--t-xs);color:var(--ink-soft);margin-top:6px}.metric.is-crit .m-value{color:var(--violet-deep)}.ops-card{border:1px solid var(--hairline);border-radius:var(--r-lg);padding:var(--sp-5);flex-direction:column;align-items:flex-start;display:flex}.ops-card .ops-desc{margin-bottom:var(--sp-4);flex:1}.ops-card .btn{white-space:nowrap}.ops-card .form-actions{flex-wrap:wrap;margin-top:0}.ops-card .result-block{align-self:stretch}.ops-card+.ops-card{margin-top:var(--sp-4)}.result-block{font-family:var(--font-mono);font-size:var(--t-sm);background:var(--surface);border-radius:var(--r);padding:var(--sp-4);margin-top:var(--sp-4);color:var(--ink-2);white-space:pre-wrap;line-height:var(--lh-snug)}.ops-live{margin-top:var(--sp-5)}.ops-live-viewport{margin-top:var(--sp-3);border:1px solid var(--hairline);border-radius:var(--r-lg);background:var(--surface);max-height:320px;padding:var(--sp-3) var(--sp-4);overflow-y:auto}.ops-live-list{margin:0;padding:0;list-style:none}.ops-live-line{gap:var(--sp-3);padding:var(--sp-2) 0;border-bottom:1px solid var(--hairline);font-family:var(--font-mono);font-size:var(--t-sm);grid-template-columns:auto auto minmax(0,1fr);align-items:baseline;display:grid}.ops-live-line:last-child{border-bottom:none}.ops-live-ts{color:var(--ink-3)}.ops-live-kind{font-size:var(--t-2xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}.ops-live-msg{color:var(--ink);overflow-wrap:anywhere}.ops-live-line--warn .ops-live-msg{color:var(--warn,var(--ink))}.ops-live-line--error .ops-live-msg{color:var(--danger,#c0392b)}.ops-live-status{align-items:center;gap:var(--sp-2);font-size:var(--t-sm);color:var(--ink-2);display:inline-flex}.ops-live-dot{background:var(--ink-3);border-radius:50%;width:8px;height:8px}.ops-live-status--open .ops-live-dot{background:#2ecc71}.ops-live-status--connecting .ops-live-dot,.ops-live-status--retry .ops-live-dot{background:#f1c40f}.ops-live-status--offline .ops-live-dot{background:#c0392b}@media (prefers-reduced-motion:no-preference){.ops-live-status--open .ops-live-dot{animation:2s ease-in-out infinite ops-live-pulse}}@keyframes ops-live-pulse{0%,to{opacity:1}50%{opacity:.4}}.ops-detail{margin-top:var(--sp-3);border-top:1px solid var(--hairline)}.ops-detail-row{gap:var(--sp-3);padding:var(--sp-2) 0;border-bottom:1px solid var(--hairline);grid-template-columns:minmax(0,1fr) auto auto;align-items:baseline;display:grid}.ops-detail-row:last-child{border-bottom:none}.ops-detail-src{color:var(--ink);overflow-wrap:anywhere}.ops-detail-mode{font-size:var(--t-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint)}.ops-detail-n{color:var(--ink-2)}.list{border-top:1px solid var(--hairline)}.list-row{gap:var(--sp-4);padding:var(--sp-4) var(--sp-2);border-bottom:1px solid var(--hairline);align-items:flex-start;display:flex}.mfa{max-width:440px;margin:0 auto}.mfa-steps{gap:var(--sp-2);margin:var(--sp-4) 0 var(--sp-5);font-size:var(--t-xs);grid-template-columns:repeat(3,1fr);padding:0;list-style:none;display:grid}.mfa-steps li{border-radius:var(--r);border:1px solid var(--edge);color:var(--ink-faint);align-items:center;gap:6px;padding:6px 8px;display:flex}.mfa-steps li.is-done{color:var(--ink-soft)}.mfa-steps li[aria-current=step]{background:var(--ink);border-color:var(--ink);color:var(--paper);font-weight:600}.mfa-step-num{width:18px;height:18px;font-family:var(--font-mono);font-size:var(--t-2xs);border:1px solid;border-radius:50%;flex:none;place-items:center;display:grid}.mfa-step-num svg{stroke-width:2.4px;width:11px;height:11px}.mfa-h{font-size:var(--t-lg);color:var(--ink);margin-bottom:var(--sp-2);font-weight:600}.mfa-lead{font-size:var(--t-sm);color:var(--ink-soft);margin-bottom:var(--sp-4)}.mfa-qr{margin:0 auto var(--sp-4);width:fit-content;padding:var(--sp-3);border-radius:var(--r-lg);background:#fff;place-items:center;display:grid}.mfa-qr img{display:block}.mfa-key{align-items:center;gap:var(--sp-2);background:var(--surface);border:1px solid var(--edge);border-radius:var(--r);margin-top:6px;padding:6px 6px 6px 12px;display:flex}.mfa-key code{min-width:0;font-family:var(--font-mono);font-size:var(--t-sm);letter-spacing:.06em;color:var(--ink);overflow-wrap:anywhere;flex:1}.mfa-key .btn{padding:6px 12px}.input.mfa-otp{font-family:var(--font-mono);font-size:var(--t-2xl);letter-spacing:.3em;text-align:center;padding:10px 14px}.input.mfa-recovery{font-family:var(--font-mono);letter-spacing:.04em}.mfa-notice{margin-bottom:var(--sp-4);padding:var(--sp-3) var(--sp-4);background:var(--surface);border:1px solid var(--edge);border-left:3px solid var(--ink);border-radius:var(--r);font-size:var(--t-sm);color:var(--ink-2);line-height:var(--lh-snug)}.mfa-notice strong{color:var(--ink)}.mfa-codes{gap:6px var(--sp-5);margin:0 0 var(--sp-4);padding:var(--sp-4) var(--sp-4) var(--sp-4) var(--sp-7);background:var(--surface);border:1px solid var(--edge);border-radius:var(--r);font-family:var(--font-mono);font-size:var(--t-sm);color:var(--ink);grid-template-columns:repeat(2,1fr);list-style:decimal;display:grid}.mfa-codes li{padding-left:4px}.mfa-codes li::marker{color:var(--ink-faint);font-size:var(--t-xs)}.mfa-row{gap:var(--sp-2);margin-bottom:var(--sp-4);display:flex}.mfa-grow{flex:1;justify-content:center}.mfa-full{justify-content:center;width:100%}.mfa-confirm{align-items:flex-start;gap:var(--sp-3);margin-bottom:var(--sp-4);font-size:var(--t-sm);color:var(--ink);cursor:pointer;display:flex}.mfa-confirm input{width:16px;height:16px;accent-color:var(--ink);flex:none;margin-top:2px}.mfa-countdown{margin-top:var(--sp-3);font-size:var(--t-xs);color:var(--ink-soft);text-align:center}.mfa-countdown .is-low{color:var(--ink);font-weight:600}.mfa-countdown-bar{background:var(--hairline);border-radius:2px;height:3px;margin-top:6px;display:block;overflow:hidden}.mfa-countdown-bar>span{background:var(--ink-soft);height:100%;transition:width 1s linear;display:block}@media (prefers-reduced-motion:reduce){.mfa-countdown-bar>span{transition:none}}.mfa-switch{margin-top:var(--sp-4);text-align:center;font-size:var(--t-sm)}.mfa-measure{max-width:480px}.mdp-form{max-width:480px;margin-bottom:var(--sp-6)}.mdp-form .mfa-notice{margin-top:var(--sp-4)}.mdp-suite{margin-top:var(--sp-6);padding-top:var(--sp-6);border-top:1px solid var(--hairline)}.mfa-status{max-width:480px;margin-bottom:var(--sp-6)}.mfa-status-line{align-items:center;gap:var(--sp-2);color:var(--ink);margin-bottom:var(--sp-2);display:flex}.mfa-status-line svg{width:18px;height:18px}.bulletin-kev{vertical-align:middle;margin-left:6px}.link-btn{cursor:pointer;font:inherit;color:var(--ink);text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.notif-list{border-top:1px solid var(--hairline)}.notif-item{gap:var(--sp-4);padding:var(--sp-4) var(--sp-3);border-bottom:1px solid var(--hairline);border-left:3px solid #0000;grid-template-columns:150px minmax(0,1fr) auto;align-items:start;display:grid}.notif-item.is-unread{border-left-color:var(--ink)}.notif-meta{flex-direction:column;gap:4px;display:flex}.notif-type{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);align-items:center;gap:6px;display:inline-flex}.notif-type svg{width:14px;height:14px}.notif-date{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-faint)}.notif-item:not(.is-unread) .notif-type{color:var(--ink-soft)}.notif-title{font-size:var(--t-md);color:var(--ink);font-weight:600;line-height:var(--lh-snug)}.notif-item:not(.is-unread) .notif-title{color:var(--ink-2);font-weight:500}.notif-body{font-size:var(--t-sm);color:var(--ink-soft);max-width:88ch;line-height:var(--lh-snug);margin-top:4px}.notif-links{gap:var(--sp-4);margin:var(--sp-2) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.notif-link{margin-top:var(--sp-2);font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink);text-underline-offset:3px;text-decoration:underline;display:inline-block}.notif-links .notif-link{margin-top:0}@media (width<=640px){.notif-item{grid-template-columns:minmax(0,1fr) auto}.notif-meta{gap:var(--sp-3);flex-direction:row;grid-column:1/-1}}.favoris-tools{align-items:center;gap:var(--sp-4);min-height:48px;padding:var(--sp-2) 0;margin-top:var(--sp-4);border-bottom:1px solid var(--hairline);flex-wrap:wrap;display:flex}.favoris-select-all{align-items:center;gap:var(--sp-3);font-size:var(--t-sm);color:var(--ink);cursor:pointer;display:inline-flex}.favoris-select-all input,.favori-select input{width:16px;height:16px;accent-color:var(--ink);cursor:pointer;margin:0}.favoris-counter{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-faint)}.favoris-bar-count{font-size:var(--t-sm);color:var(--ink-soft)}.favoris-bar-count b{color:var(--ink)}.favoris-feed>.feed-colhead{padding-left:32px}.favori-row{grid-template-columns:32px minmax(0,1fr);align-items:center;display:grid}.favori-select{justify-content:flex-start;align-self:stretch;align-items:center;display:flex}.favori-row .signal{min-width:0}.wl-add{margin-bottom:var(--sp-6)}.wl-add .section-title{margin-bottom:var(--sp-4)}.wl-add-form{gap:var(--sp-4);flex-direction:column;max-width:72ch;display:flex}.wl-add-type{align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.wl-add-line{gap:var(--sp-2);align-items:stretch;display:flex}.wl-add-line .input{flex:1;min-width:0}.wl-add-line .btn{flex:none}@media (width<=640px){.wl-add-line{flex-direction:column}}.watchlist-entries{margin:0 0 var(--sp-6);padding:0;list-style:none}.watchlist-entry{padding:var(--sp-2) var(--sp-2);align-items:center}.watchlist-entry-type{border-color:var(--edge);color:var(--ink-soft);justify-content:center;min-width:9ch}.watchlist-entry-value{min-width:0;color:var(--ink);overflow-wrap:anywhere;flex:1;font-weight:600}.watchlist-section-title{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin:var(--sp-6) 0 var(--sp-4);font-weight:500}.watchlist-count{color:var(--ink-soft)}.auth-shell{min-height:100vh;padding:var(--sp-6);place-items:center;display:grid}.auth-card{width:100%;max-width:400px}.auth-brand{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-6);display:flex}.auth-brand .eye{width:40px;height:30px;color:var(--ink)}.auth-title{font-size:var(--t-xl);letter-spacing:-.01em;font-weight:700}.auth-sub{color:var(--ink-soft);font-size:var(--t-sm);margin-top:4px;margin-bottom:var(--sp-5)}.auth-card form>.field-error{margin-top:var(--sp-3)}.delta{align-items:center;gap:var(--sp-5);background:var(--carter);color:var(--on-carter);border-radius:var(--r-lg);padding:var(--sp-4) var(--sp-5);margin:var(--sp-5) 0 var(--sp-2);flex-wrap:wrap;display:flex}.delta :focus-visible{outline-color:var(--violet-on-carter)}.delta .icon-btn{color:var(--on-carter-faint)}.delta .icon-btn:hover{background:var(--carter-2);color:var(--on-carter)}.delta-n{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--t-xl);letter-spacing:-.02em;flex:none;font-weight:600;line-height:1}.delta-txt{min-width:0}.delta-txt b{font-weight:700}.delta-since{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--on-carter-faint);margin-top:3px;display:block}.delta-crit{color:var(--violet-on-carter);font-weight:600}.delta-actions{align-items:center;gap:var(--sp-2);margin-left:auto;display:flex}.delta.is-closing{opacity:0;max-height:0;transition:opacity .18s var(--ease), transform .18s var(--ease), max-height .22s var(--ease), padding .22s var(--ease), margin .22s var(--ease);margin:0;padding-top:0;padding-bottom:0;overflow:hidden;transform:translateY(-6px)}.btn-oncarter{border:1px solid var(--carter-edge);color:var(--on-carter);background:0 0}.btn-oncarter:hover{background:var(--carter-2)}.btn-oncarter--solid{background:var(--on-carter);color:var(--carter);border-color:#0000}.btn-oncarter--solid:hover{background:var(--paper)}.feed-day{align-items:baseline;gap:var(--sp-3);padding:var(--sp-6) var(--sp-3) var(--sp-2);font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);border-bottom:1px solid var(--hairline-2);font-weight:400;display:flex}.feed-day:first-child{padding-top:var(--sp-3)}.feed-day b{color:var(--ink);letter-spacing:.08em;font-weight:600}.feed-day .n{font-variant-numeric:tabular-nums;margin-left:auto}.uptodate{text-align:center;padding:var(--sp-7) var(--sp-5);border:1px dashed var(--hairline-2);border-radius:var(--r-lg);margin-top:var(--sp-5)}.uptodate .eye{color:var(--ink);display:inline-block}.uptodate .eye svg{width:46px;height:34px;display:block}.uptodate h3{font-size:var(--t-lg);margin-top:var(--sp-3);font-weight:700}.uptodate p{color:var(--ink-soft);font-size:var(--t-sm);margin-top:var(--sp-2)}.uptodate .next{margin-top:var(--sp-4);font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);border-top:1px solid var(--hairline);padding-top:var(--sp-3);display:inline-block}.signal.is-cursor{background:var(--surface)}.kbd{min-width:21px;font-family:var(--font-mono);font-size:var(--t-2xs);color:var(--ink);background:var(--surface);border:1px solid var(--edge);border-radius:var(--r-xs);border-bottom-width:2px;place-items:center;padding:2px 6px;font-weight:500;display:inline-grid}.sheet{background:var(--paper);width:calc(100% - 2rem);max-width:440px;color:var(--ink);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);border:none;margin:auto;padding:0}.sheet::backdrop{background:oklch(18.5% .022 293/.46)}.sheet-head{align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--hairline);display:flex}.sheet-title{font-size:var(--t-md);font-weight:700}.sheet-head .icon-btn{margin-left:auto}.sheet-body{padding:var(--sp-2) var(--sp-5) var(--sp-5)}.kbd-row{align-items:center;gap:var(--sp-3);font-size:var(--t-sm);padding:9px 0;display:flex}.kbd-row+.kbd-row{border-top:1px solid var(--hairline)}.kbd-row .keys{flex:none;gap:4px;margin-left:auto;display:flex}.is-flip{animation:flip .28s var(--ease)}@keyframes flip{0%{opacity:.25}to{opacity:1}}.signal-actions{align-items:center;gap:2px;display:inline-flex}@media (hover:hover){.signal .signal-actions .icon-btn{visibility:hidden;opacity:0;transition:opacity var(--dur) var(--ease)}.signal:hover .signal-actions .icon-btn,.signal:focus-within .signal-actions .icon-btn,.signal.is-cursor .signal-actions .icon-btn,.signal .signal-actions .icon-btn.is-on{visibility:visible;opacity:1}}.triage .signal,.triage .signal .icon-btn{cursor:pointer}.icon-btn.is-on{color:var(--ink)}.icon-btn.is-on svg,.btn.is-on svg{fill:currentColor}.list-row.is-leaving{opacity:0;transition:opacity .16s var(--ease), transform .16s var(--ease);transform:translate(-8px)}.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.action-btn{justify-content:flex-start;width:100%}.feature{gap:var(--sp-5);padding:var(--sp-5) 0 var(--sp-6);border-top:1px solid var(--hairline-2);border-bottom:1px solid var(--hairline);grid-template-columns:auto 1fr;align-items:start;display:grid}.feature>.grav{flex:none}.feature>:not(.grav){min-width:0}.feature-title,.feature-resume{overflow-wrap:break-word}.feature:has(.visuel--feature){grid-template-columns:auto minmax(0,1fr) clamp(132px,22%,208px)}.feature .visuel--feature{align-self:start}.feature-meta{align-items:center;gap:var(--sp-2);font-family:var(--font-mono);font-size:var(--t-sm);color:var(--ink-soft);flex-wrap:wrap;display:flex}.feature-meta .src{color:var(--ink);font-weight:500}.feature-meta .cve{color:var(--violet-deep)}.feature-title{font-size:var(--t-2xl);letter-spacing:-.01em;font-weight:700;line-height:var(--lh-tight);color:var(--ink);margin-top:var(--sp-3);max-width:24ch}.feature-resume{font-size:var(--t-base);color:var(--ink-2);line-height:var(--lh-body);margin-top:var(--sp-3);max-width:64ch}.feature-actions{margin-top:var(--sp-5);gap:var(--sp-2);flex-wrap:wrap;display:flex}.feature-carousel{border-top:1px solid var(--hairline-2);border-bottom:1px solid var(--hairline)}.feature-carousel:focus-visible{outline:2px solid var(--violet-deep);outline-offset:4px}.feature-carousel-track{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;display:flex;overflow-x:auto}.feature-carousel-track::-webkit-scrollbar{display:none}.feature-carousel-slide{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;min-width:0}.feature-carousel-slide>.feature{padding-top:var(--sp-5);padding-bottom:var(--sp-5);border-top:0;border-bottom:0}.feature-carousel-dots{gap:var(--sp-2);padding:0 0 var(--sp-4);justify-content:center;display:flex}.feature-carousel-dot{background:var(--hairline-2);cursor:pointer;width:6px;height:6px;transition:background var(--dur) var(--ease), transform var(--dur) var(--ease);border:0;border-radius:999px;padding:0}.feature-carousel-dot:hover{background:var(--ink-soft)}.feature-carousel-dot.is-active{background:var(--ink);transform:scale(1.35)}.feature-carousel-dot:focus-visible{outline:2px solid var(--violet-deep);outline-offset:3px}@media (prefers-reduced-motion:reduce){.feature-carousel-track{scroll-behavior:auto}.feature-carousel-dot{transition:none}}.disc-aside{padding-top:var(--sp-5)}@media (width>=1080px){.disc-aside{border-left:1px solid var(--hairline);padding-left:var(--sp-5)}}.trends{flex-direction:column;display:flex}.trend{gap:var(--sp-3);padding:var(--sp-3) var(--sp-1);border-bottom:1px solid var(--hairline);transition:background var(--dur) var(--ease);align-items:baseline;display:flex}.trend:last-child{border-bottom:none}.trend:hover{background:var(--surface)}.trend-body{flex-direction:column;min-width:0;display:flex}.trend-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--t-sm);color:var(--ink-faint);flex:none;width:24px}.trend-topic{font-size:var(--t-sm);color:var(--ink);font-weight:600;line-height:var(--lh-snug);transition:color var(--dur) var(--ease)}.trend:hover .trend-topic{color:var(--violet-deep)}a.trend{color:inherit;align-items:center;text-decoration:none}.trend-chevron{width:14px;height:14px;color:var(--ink-faint);flex:none;margin-left:auto}.trend:hover .trend-chevron{color:var(--ink)}.trend-sub{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin-top:3px}@media (width<=640px){.feature{padding:var(--sp-4) 0 var(--sp-5);gap:var(--sp-4)}.feature-title{font-size:var(--t-xl);max-width:none}.feature:has(.visuel--feature){grid-template-columns:auto minmax(0,1fr)}.feature .visuel--feature{display:none}}.story-row{transition:background var(--dur) var(--ease);text-decoration:none}.story-row:hover{background:var(--surface)}.story-row .grav{flex:none}.story-body{flex:1;min-width:0}.story-title{font-size:var(--t-md);letter-spacing:0;font-weight:700;line-height:var(--lh-snug);color:var(--ink);max-width:62ch;transition:color var(--dur) var(--ease)}.story-row:hover .story-title{color:var(--violet-deep)}.story-desc{font-size:var(--t-sm);color:var(--ink-soft);line-height:var(--lh-snug);max-width:84ch;margin-top:5px}.story-meta{align-items:center;gap:var(--sp-2);font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-faint);margin-top:var(--sp-3);flex-wrap:wrap;display:flex}.story-meta b{color:var(--ink-2);font-weight:600}.story-meta .sep{margin:0}@media (width<=640px){.story-title{font-size:var(--t-base)}}.story-articles{border-top:1px solid var(--hairline);margin-top:var(--sp-3)}.src-list{flex-direction:column;display:flex}.src-row{align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;font-family:var(--font-mono);font-size:var(--t-sm);color:var(--ink);display:flex}.src-row .src-count{font-size:var(--t-xs);color:var(--ink-faint);margin-left:auto}.note-body{flex:1;min-width:0}.note-link{font-size:var(--t-md);letter-spacing:0;font-weight:600;line-height:var(--lh-snug);color:var(--ink);transition:color var(--dur) var(--ease)}.note-link:hover{color:var(--violet-deep)}.note-text{color:var(--ink-2);font-size:var(--t-sm);line-height:var(--lh-snug);max-width:82ch;margin-top:6px}.note-foot{align-items:center;gap:var(--sp-2);margin-top:var(--sp-3);font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-faint);display:flex}.note-foot .sep{margin:0}.note-actions{flex:none;align-items:center;gap:2px;display:flex}.auth-tabs{gap:var(--sp-5);border-bottom:1px solid var(--hairline);margin:var(--sp-5) 0 var(--sp-5);display:flex}.demo{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-soft);background:var(--surface);border-radius:var(--r);margin-bottom:var(--sp-4);padding:10px 12px}.demo b,.demo .v{color:var(--ink);font-weight:600}.auth-foot{text-align:center;font-size:var(--t-sm);color:var(--ink-soft);margin-top:var(--sp-5)}.add-grid.add-grid--sources{grid-template-columns:1fr 1fr}@media (width<=720px){.add-grid.add-grid--sources{grid-template-columns:1fr}}.ops-grid{gap:var(--sp-4);margin-top:var(--sp-5);grid-template-columns:1fr;display:grid}@media (width>=900px){.ops-grid{grid-template-columns:repeat(3,1fr)}}.ops-grid .ops-card+.ops-card{margin-top:0}.ops-card{flex-direction:column;display:flex}.ops-card .result-block{margin-top:auto}.ops-desc{color:var(--ink-soft);font-size:var(--t-sm);line-height:var(--lh-snug);margin:0 0 var(--sp-4)}.ops-card .btn{align-self:flex-start}.btn-xs{font-size:var(--t-xs);padding:4px 10px}.audit-search{flex:20rem;min-width:14rem;max-width:none}.action-filter{align-items:center;gap:var(--sp-2);display:inline-flex}.action-filter .label-inline{font-family:var(--font-mono);font-size:var(--t-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint)}.action-filter{flex-wrap:wrap}.action-filter .select{width:auto;min-width:min(12rem,100%)}.add-grid{gap:var(--sp-4);grid-template-columns:2fr 1fr auto;align-items:end;display:grid}@media (width<=720px){.add-grid{grid-template-columns:1fr}}.dist{max-width:640px}.bar-row{align-items:center;gap:var(--sp-3);grid-template-columns:8.5rem 1fr 40px;padding:7px 0;display:grid}.bar-key{font-family:var(--font-mono);font-size:var(--t-sm);color:var(--ink-soft);white-space:nowrap}.bar-track{background:var(--surface-2);border-radius:var(--r-pill);height:10px;overflow:hidden}.bar-fill{background:var(--ink-soft);border-radius:var(--r-pill);height:100%;display:block}.bar-fill.crit{background:var(--violet)}.bar-fill.high{background:var(--ink)}.bar-val{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--t-sm);color:var(--ink);text-align:right}.two{gap:var(--sp-6);margin-top:var(--sp-6);grid-template-columns:1fr;display:grid}@media (width>=900px){.two{grid-template-columns:1.2fr 1fr}}.hub-head{padding:var(--sp-7) 0 var(--sp-6);border-bottom:1px solid var(--hairline)}.brand{align-items:center;gap:var(--sp-3);display:flex}.brand-eye{width:46px;height:34px;color:var(--ink)}.brand-name{font-size:var(--t-2xl);letter-spacing:-.01em;font-weight:700}.brand-tag{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-top:2px}section.block{padding:var(--sp-6) 0;border-bottom:1px solid var(--hairline)}.block-title{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--sp-4);font-weight:500}.pages{background:var(--paper);border:1px solid var(--hairline);border-radius:var(--r-lg);grid-template-columns:repeat(auto-fill,minmax(min(230px,100%),1fr));gap:1px;display:grid;overflow:hidden}.page-card{background:var(--paper);box-shadow:0 0 0 1px var(--hairline);padding:var(--sp-5) var(--sp-4);min-height:96px;transition:background var(--dur) var(--ease);flex-direction:column;gap:6px;display:flex}a.page-card:hover{background:var(--surface)}.page-card .idx{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-faint)}.page-card .nm{font-weight:600;font-size:var(--t-base)}.page-card .st{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.06em;text-transform:uppercase;margin-top:auto}.st.ready{color:var(--violet-deep)}.st.todo{color:var(--ink-faint)}.swatches{gap:var(--sp-3);flex-wrap:wrap;display:flex}.sw{width:108px}.sw i{border-radius:var(--r);border:1px solid var(--hairline);height:56px;display:block}.sw span{font-family:var(--font-mono);font-size:var(--t-2xs);color:var(--ink-soft);margin-top:6px;display:block}.sw b{color:var(--ink);font-weight:500}.type-row{align-items:baseline;gap:var(--sp-4);padding:var(--sp-2) 0;flex-wrap:wrap;display:flex}.type-row .lbl{font-family:var(--font-mono);font-size:var(--t-2xs);color:var(--ink-faint);flex:none;width:130px}.type-row>:not(.lbl){overflow-wrap:break-word;min-width:0}.grav-demo{gap:var(--sp-3);flex-wrap:wrap;display:flex}.gd{flex-direction:column;align-items:center;gap:6px;display:flex}.comp-row{gap:var(--sp-3);flex-wrap:wrap;align-items:center;display:flex}.apparence{padding-top:var(--sp-5)}.apparence-groupe+.apparence-groupe{margin-top:var(--sp-6);padding-top:var(--sp-6);border-top:1px solid var(--hairline)}.apparence-groupe .section-title{margin-bottom:var(--sp-2)}.apparence-aide{color:var(--ink-soft);font-size:var(--t-sm);max-width:60ch;margin-top:var(--sp-2)}.apparence-ligne{align-items:center;gap:var(--sp-3);margin-top:var(--sp-4);flex-wrap:wrap;display:flex}.apparence-resolu{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-faint)}.apparence-ligne input[type=range]{max-width:320px;accent-color:var(--violet);flex:200px}.palette-grille{gap:var(--sp-2);margin-top:var(--sp-3);flex-wrap:wrap;display:flex}.palette-tuile{align-items:center;gap:var(--sp-2);border:1px solid var(--edge);border-radius:var(--r-pill);color:var(--ink-soft);font-size:var(--t-sm);cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);background:0 0;padding:6px 12px;font-family:inherit;display:inline-flex}.palette-tuile:hover{background:var(--surface-2);color:var(--ink)}.palette-tuile[aria-pressed=true]{background:var(--surface-2);color:var(--ink);border-color:var(--ink)}.palette-tuile:focus-visible{outline:2px solid var(--violet);outline-offset:2px}.palette-echantillon{border-radius:4px;width:14px;height:14px;display:block}.feature-resume,.signal-resume{text-align:justify;-webkit-hyphens:auto;hyphens:auto}@media (width<=640px){.prose p,.feature-resume,.signal-resume{text-align:left}}.signal>.grav{width:100%}.mono.tnum{white-space:nowrap}:root[data-mode=sombre]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-mode=sombre],:root[data-mode=sombre] body{--paper:oklch(.17 .016 var(--hue));--surface:oklch(.208 .018 var(--hue));--surface-2:oklch(.248 .02 var(--hue));--hairline:oklch(.285 .018 var(--hue));--hairline-2:oklch(.36 .02 var(--hue));--edge:oklch(.56 .02 var(--hue));--ink:oklch(.96 .006 var(--hue));--ink-2:oklch(.87 .01 var(--hue));--ink-soft:oklch(.76 .013 var(--hue));--ink-faint:oklch(.68 .014 var(--hue));--carter:oklch(.13 .016 var(--hue));--carter-2:oklch(.205 .02 var(--hue));--carter-line:oklch(.25 .018 var(--hue));--carter-edge:oklch(.48 .02 var(--hue));--violet:oklch(.58 .22 var(--hue));--violet-deep:oklch(.76 .15 var(--hue));--violet-tint:oklch(.27 .07 var(--hue));--violet-line:oklch(.45 .12 var(--hue));--violet-on-carter:oklch(.76 .15 var(--hue));--shadow-pop:0 10px 30px -10px oklch(0% 0 0/.6)}:root[data-mode=sombre] .g4 .grav-num{background:oklch(.64 .02 var(--hue));color:var(--paper)}:root[data-mode=sombre] .bar-fill.high{background:oklch(.64 .02 var(--hue))}:root[data-mode=sombre] .grav-chips .g4 .gk{background:oklch(.64 .02 var(--hue));color:var(--paper)}:root[data-mode=sombre] img{filter:brightness(.85)}:root[data-mode=sombre] .rail-btn[aria-current=page]{background:var(--on-carter);color:var(--carter)}:root[data-variant=contraste],:root[data-variant=contraste] body{--paper:oklch(.998 .002 var(--hue));--surface:oklch(.965 .006 var(--hue));--surface-2:oklch(.93 .009 var(--hue));--hairline:oklch(.82 .012 var(--hue));--hairline-2:oklch(.7 .015 var(--hue));--edge:oklch(.42 .02 var(--hue));--ink:oklch(.145 .022 var(--hue));--ink-2:oklch(.26 .019 var(--hue));--ink-soft:oklch(.37 .017 var(--hue));--ink-faint:oklch(.42 .015 var(--hue));--violet-deep:oklch(.41 .22 var(--hue))}:root[data-mode=sombre][data-variant=contraste],:root[data-mode=sombre][data-variant=contraste] body{--paper:oklch(.14 .016 var(--hue));--surface:oklch(.18 .018 var(--hue));--surface-2:oklch(.23 .02 var(--hue));--hairline:oklch(.33 .018 var(--hue));--hairline-2:oklch(.43 .02 var(--hue));--edge:oklch(.65 .02 var(--hue));--ink:oklch(.985 .004 var(--hue));--ink-2:oklch(.92 .008 var(--hue));--ink-soft:oklch(.825 .012 var(--hue));--ink-faint:oklch(.76 .013 var(--hue));--violet-deep:oklch(.82 .14 var(--hue))}:root[data-variant=daltonien] .g2 .grav-num,:root[data-variant=daltonien] .g3 .grav-num{box-shadow:inset 0 0 0 1px var(--ink)}.rail-account-popover{transform-origin:0 100%;min-width:220px;animation:menu-in .16s var(--ease);flex-direction:column;gap:2px;display:flex}@keyframes menu-in{0%{opacity:0;transform:translate(-4px)scale(.98)}to{opacity:1;transform:none}}.menu-entete{padding:var(--sp-2) 10px var(--sp-3);border-bottom:1px solid var(--hairline);margin-bottom:4px}.menu-entete .nom{color:var(--ink);font-weight:700;font-size:var(--t-sm)}.menu-entete .meta{font-family:var(--font-mono);font-size:var(--t-2xs);color:var(--ink-faint);letter-spacing:.06em;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;overflow:hidden}.menu-item{align-items:center;gap:var(--sp-3);border-radius:var(--r-xs);width:100%;font-size:var(--t-sm);color:var(--ink-2);text-align:left;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);padding:8px 10px;font-weight:600;display:flex}.menu-item svg{width:16px;height:16px;color:var(--ink-soft);flex:none}.menu-item:hover,.menu-item:focus-visible{background:var(--surface-2);color:var(--ink)}.menu-item .menu-etat{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-left:auto}.menu-sep{background:var(--hairline);height:1px;margin:4px 0}.balayage{--duree:9s;pointer-events:none;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:radial-gradient(#000 35%,#0000 75%);mask-image:radial-gradient(#000 35%,#0000 75%);container-type:inline-size}.balayage-grille{background-image:linear-gradient(var(--hairline) 1px, transparent 1px), linear-gradient(90deg, var(--hairline) 1px, transparent 1px);opacity:.7;background-size:48px 48px;position:absolute;inset:0}.balayage-ligne{background:linear-gradient(90deg, transparent, var(--ink));width:90px;position:absolute;top:0;bottom:0;left:0}@supports (color:color-mix(in lab, red, red)){.balayage-ligne{background:linear-gradient(90deg, transparent, color-mix(in oklch, var(--ink) 4%, transparent))}}.balayage-ligne{border-right:1px solid var(--ink)}@supports (color:color-mix(in lab, red, red)){.balayage-ligne{border-right:1px solid color-mix(in oklch, var(--ink) 16%, transparent)}}.balayage-ligne{animation:balaie var(--duree) linear infinite;transform:translate(-90px)}@keyframes balaie{to{transform:translate(100cqw)}}.balayage-blip{background:var(--ink-soft);opacity:0;width:6px;height:6px;animation:blip var(--duree) linear infinite;animation-delay:calc((var(--x) - 1) * var(--duree));border-radius:2px;position:absolute}.balayage-blip.is-critique{background:var(--violet);width:8px;height:8px}@keyframes blip{0%{opacity:.95;transform:scale(1.6)}4%{opacity:.9;transform:scale(1)}30%{opacity:0}to{opacity:0}}.horus-paupiere{transform-box:fill-box;transform-origin:50%;animation:cligne 7s var(--ease) infinite}.horus-pupille{transform-box:fill-box;transform-origin:50%;animation:regard 11s var(--ease) infinite}@keyframes cligne{0%,46%,52%,to{transform:scaleY(1)}49%{transform:scaleY(.08)}}@keyframes regard{0%,20%,to{transform:translate(0)}28%,40%{transform:translate(-3px)}50%,62%{transform:translate(3px)}70%{transform:translate(0)}}.landing-scene{isolation:isolate;position:relative}.landing-scene>.balayage{z-index:-1}.auth-shell{isolation:isolate;position:relative}.auth-shell>.balayage{z-index:-1}.auth-shell .auth-card{background:var(--paper);border:1px solid var(--hairline);border-radius:var(--r-lg);padding:var(--sp-6);box-shadow:var(--shadow-pop)}@media (width<=640px){.auth-shell .auth-card{padding:var(--sp-5)}}@media (prefers-reduced-motion:reduce){.balayage-ligne{display:none}.balayage-blip{opacity:.5;animation:none}.statusbar-scan:after,.horus-paupiere,.horus-pupille,.rail-account-popover{animation:none}}.palette-tuile svg{flex:none;width:15px;height:15px}.status-droite{align-items:center;gap:var(--sp-3);display:flex}.mode-toggle{border-radius:var(--r);width:32px;height:32px;color:var(--on-carter-soft);box-shadow:inset 0 0 0 1px var(--carter-edge);transition:background var(--dur) var(--ease), color var(--dur) var(--ease);flex:none;place-items:center;display:grid}.mode-toggle:hover{background:var(--carter-2);color:var(--on-carter)}.mode-toggle svg{width:16px;height:16px}@media (width>=961px){.statusbar-inner{grid-template-columns:1fr minmax(0,420px) 1fr;display:grid}.statusbar-inner .search{justify-self:center;width:100%;max-width:none}.status-droite{justify-self:end}}@media (width<=960px){.status-droite{margin-left:auto}.status-droite .status-count{margin-left:0}}.statusbar-scan{pointer-events:none;height:1px;position:absolute;bottom:-1px;left:0;right:0;overflow:hidden;container-type:inline-size}.statusbar-scan:after{content:"";background:linear-gradient(90deg, transparent, var(--on-carter-soft), transparent);width:180px;height:1px;animation:6s linear infinite scan-barre;position:absolute;top:0;left:0;transform:translate(-180px)}@keyframes scan-barre{to{transform:translate(100cqw)}}.cve-chip-wrap{display:inline-flex;position:relative}.cve-chip{all:unset;cursor:pointer;color:var(--violet-deep);font-family:var(--font-mono);font-size:inherit;border-bottom:1px dotted;padding:0 1px}.cve-chip:focus-visible{outline:2px solid var(--violet-deep);outline-offset:2px;border-radius:2px}.cve-chip:hover{color:var(--violet)}.cve-popover{z-index:30;background:var(--surface,#fff);min-width:280px;max-width:360px;color:var(--ink);border:1px solid var(--rule,#d8d4e4);border-radius:var(--r-md,6px);padding:var(--sp-3,12px);font-family:var(--font-sans);font-size:var(--t-sm);line-height:var(--lh-snug);position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #0000001f}.cve-popover-head{justify-content:space-between;align-items:baseline;gap:var(--sp-2,8px);margin-bottom:var(--sp-2,8px);display:flex}.cve-popover-id{font-family:var(--font-mono);color:var(--violet-deep);font-weight:600}.cve-popover-sev{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--r-pill,999px);border:1px solid;padding:1px 7px}.cve-popover-sev--critical{color:#a01020}.cve-popover-sev--high{color:#c0501c}.cve-popover-sev--medium{color:#8a6b0c}.cve-popover-sev--low{color:#4a7a2a}.cve-popover-sev--none{color:var(--ink-soft)}.cve-popover-stats{margin:0 0 var(--sp-2,8px) 0;grid-template-columns:auto 1fr;gap:4px 10px;display:grid}.cve-popover-stats>div{display:contents}.cve-popover-stats dt{font-family:var(--font-mono);font-size:var(--t-2xs);color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em}.cve-popover-stats dd{font-family:var(--font-mono);margin:0}.cve-popover-score{font-weight:600}.cve-popover-vector{word-break:break-all;font-size:var(--t-xs);color:var(--ink)}.cve-popover-summary{margin:0 0 var(--sp-2,8px) 0;color:var(--ink)}.cve-popover-status{margin:0 0 var(--sp-2,8px) 0;color:var(--ink-soft)}.cve-popover-status--err{color:#a01020}.cve-popover-links{gap:var(--sp-2,8px);font-family:var(--font-mono);font-size:var(--t-xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.cve-popover-links a{color:var(--violet-deep);text-decoration:underline}.cve-popover-links a:hover{color:var(--violet)}@media (prefers-reduced-motion:reduce){.cve-popover{transition:none}}.md{color:var(--ink-2);font-size:var(--t-sm);line-height:var(--lh-snug);max-width:82ch}.md .md-para{margin:0 0 var(--sp-3)}.md .md-para:last-child{margin-bottom:0}.md .md-list{margin:0 0 var(--sp-3) var(--sp-5);padding:0}.md .md-list li{margin:2px 0}.md .md-code{font-family:var(--font-mono);background:var(--surface);border-radius:var(--r-xs);color:var(--ink);padding:1px 5px;font-size:.9em}.md .md-link{color:var(--violet-deep);text-underline-offset:2px;text-decoration:underline}.md .md-link:hover{color:var(--violet)}.md .md-tag{font-family:var(--font-mono);color:var(--violet-deep);padding:0 2px;font-size:.9em;text-decoration:none;display:inline-block}.md .md-tag:hover{text-decoration:underline}.note-tabs{margin-bottom:var(--sp-2);gap:4px;display:flex}.note-tab{cursor:pointer;border-radius:var(--r-xs);font-size:var(--t-sm);color:var(--ink-faint);transition:background var(--dur) var(--ease), color var(--dur) var(--ease);background:0 0;border:0;padding:4px 10px}.note-tab:hover:not(:disabled){color:var(--ink);background:var(--surface)}.note-tab:disabled{opacity:.5;cursor:not-allowed}.note-tab.is-active{color:var(--ink);background:var(--surface);font-weight:600}.note-preview{min-height:92px;padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface)}.note-tags{margin-top:var(--sp-2);flex-wrap:wrap;gap:4px;display:flex}.note-tag-chip{background:var(--surface);border:1px solid var(--border);color:var(--violet-deep);font-family:var(--font-mono);font-size:var(--t-xs);cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);border-radius:999px;padding:1px 8px;text-decoration:none}.note-tag-chip:hover{background:var(--violet-deep);color:#fff}.note-tag-chip.is-active{background:var(--violet-deep);color:#fff;border-color:var(--violet-deep)}.notes-liste{gap:var(--sp-3);flex-direction:column;display:flex}.notes-item{align-items:flex-start}.notes-article-link{cursor:pointer;color:var(--ink);font-weight:600;font-size:var(--t-sm);text-align:left;background:0 0;border:0;padding:0}.notes-article-link:hover{color:var(--violet-deep);text-decoration:underline}.main-tabs{margin-bottom:var(--sp-4);border-bottom:1px solid var(--border);gap:4px;padding-bottom:0;display:flex}.main-tab{cursor:pointer;font-size:var(--t-sm);color:var(--ink-faint);transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 16px;font-weight:500;position:relative}.main-tab:hover{color:var(--ink)}.main-tab.is-active{color:var(--ink);border-bottom-color:var(--violet-deep);font-weight:600}.tab-badge{background:var(--violet-deep);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-left:6px;display:inline-block}.indicateurs-panel{gap:var(--sp-4);flex-direction:column;display:flex}.indicateurs-actions{gap:var(--sp-2);flex-wrap:wrap;display:flex}.ioc-section{flex-direction:column;gap:4px;display:flex}.ioc-section-title{font-size:var(--t-sm);color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em;margin:0 0 6px;font-weight:600}.ioc-row{border-radius:var(--r-xs);background:var(--surface);border:1px solid var(--border);align-items:center;gap:8px;padding:4px 8px;display:flex}.ioc-value{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink);word-break:break-all;flex:1}.ioc-hash-type{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-faint);min-width:52px}.ioc-copy-btn{cursor:pointer;color:var(--ink-faint);border-radius:var(--r-xs);transition:color var(--dur) var(--ease), background var(--dur) var(--ease);background:0 0;border:0;flex-shrink:0;align-items:center;padding:2px;display:flex}.ioc-copy-btn:hover{color:var(--ink);background:var(--surface-2,var(--border))}.attack-row{border-radius:var(--r-xs);background:var(--surface);border:1px solid var(--border);align-items:center;gap:8px;padding:4px 8px;display:flex}.attack-link{color:var(--ink);flex:1;align-items:center;gap:8px;text-decoration:none;display:flex}.attack-link:hover{color:var(--violet-deep)}.attack-id{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--violet-deep);min-width:70px}.attack-name{font-size:var(--t-sm)}.print-only{display:none}@media print{.no-print,.bulletin-actions,nav,aside,header nav,[class*=sidebar],[class*=rail],[class*=topbar],[class*=nav-],.app-rail,.app-layout-sidebar,[data-role=navigation]{display:none!important}.print-only{display:block!important}body{margin:0;padding:0;font-size:10pt;color:#000!important;background:#fff!important}.bulletin-page{width:100%!important;max-width:100%!important;box-shadow:none!important;margin:0!important;padding:12mm 16mm!important}.page-head{display:none!important}.bulletin-body>*{break-inside:avoid}.bulletin-stats{grid-template-columns:repeat(4,1fr)!important;gap:8px!important;margin-bottom:16px!important}.bulletin-stats>div{border:1px solid #ddd;background:#f9f9f9!important;padding:8px 12px!important}a{color:#000!important;text-decoration:none!important}a[href]:after{content:none!important}table{break-inside:auto}tr{break-inside:avoid;break-after:auto}@page{size:A4 portrait;margin:18mm 16mm}}.mob-only,.mob-entete,.mob-barre{display:none}@media (width<=640px){:root{--mob-entete-h:52px;--mob-barre-h:62px}.mob-only{display:flex}.desk-only{display:none!important}.app-rail{display:none}.app-main{padding-bottom:calc(var(--mob-barre-h) + env(safe-area-inset-bottom) + var(--sp-6));margin-left:0}.mob-entete{z-index:35;height:calc(var(--mob-entete-h) + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--sp-4) 0;background:var(--carter);color:var(--on-carter);border-bottom:1px solid var(--carter-line);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.mob-marque{align-items:center;gap:var(--sp-2);color:var(--on-carter);font-size:var(--t-md);display:inline-flex}.mob-marque svg{width:28px;height:20px}.mob-avatar{background:var(--carter-2);width:34px;height:34px;color:var(--on-carter);border:1px solid var(--carter-edge);font-family:var(--font-mono);font-size:var(--t-xs);border-radius:50%;place-items:center;font-weight:600;display:grid}.statusbar{top:calc(var(--mob-entete-h) + env(safe-area-inset-top))}.statusbar .search,.statusbar .mode-toggle{display:none}.statusbar-inner{height:auto;padding-block:6px}.mob-barre{z-index:35;height:calc(var(--mob-barre-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--carter);border-top:1px solid var(--carter-line);grid-template-columns:repeat(5,1fr);align-items:center;display:grid;position:fixed;bottom:0;left:0;right:0}.mob-onglet{min-width:44px;height:100%;color:var(--on-carter-soft);font-size:var(--t-2xs);letter-spacing:.02em;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex;position:relative}.mob-onglet svg{width:22px;height:22px}.mob-onglet.active,.mob-onglet[aria-current=page]{color:var(--on-carter)}.mob-onglet.active span,.mob-onglet[aria-current=page] span{font-weight:700}.mob-onglet.active:before,.mob-onglet[aria-current=page]:before{content:"";background:var(--on-carter);border-radius:0 0 2px 2px;height:2px;position:absolute;top:0;left:30%;right:30%}.mob-recherche{background:var(--on-carter);width:50px;height:50px;color:var(--carter);box-shadow:0 0 0 4px var(--carter);border:0;border-radius:50%;justify-self:center;place-items:center;display:grid;transform:translateY(-10px)}.mob-recherche svg{width:22px;height:22px}.mob-pastille{background:var(--on-carter);min-width:17px;height:17px;color:var(--carter);font-family:var(--font-mono);border-radius:9px;place-items:center;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:grid;position:absolute;top:6px;left:calc(50% + 6px)}.mob-onglet:focus-visible,.mob-recherche:focus-visible,.mob-avatar:focus-visible{outline:2px solid var(--violet-on-carter);outline-offset:2px}.toolbar-fil{gap:var(--sp-2);flex-wrap:wrap}.chips-defilantes{scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;flex-wrap:nowrap;width:100%;padding-bottom:2px;overflow-x:auto}.chips-defilantes::-webkit-scrollbar{display:none}.chips-defilantes .chip{scroll-snap-align:start;flex:none}.filtres-ligne{justify-content:space-between;align-items:center;gap:var(--sp-2);width:100%}.filtres-btn{align-items:center;gap:6px;display:inline-flex}.filtres-btn svg{width:15px;height:15px}.tri-select .select{width:auto;font-size:var(--t-sm);padding-block:6px}}.sheet-voile{z-index:70;background:var(--carter);position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.sheet-voile{background:color-mix(in oklch, var(--carter) 62%, transparent)}}.sheet-voile{justify-content:center;align-items:flex-end;display:flex}.panneau-bas{background:var(--paper);width:100%;max-width:560px;max-height:85vh;color:var(--ink);padding:var(--sp-3) var(--sp-5) calc(var(--sp-5) + env(safe-area-inset-bottom));animation:sheet-monte .22s var(--ease);border-radius:18px 18px 0 0;overflow-y:auto}.panneau-bas:focus{outline:none}@keyframes sheet-monte{0%{opacity:.6;transform:translateY(24px)}to{opacity:1;transform:none}}.sheet-poignee{background:var(--hairline-2);width:38px;height:4px;margin:0 auto var(--sp-3);border-radius:2px;display:block}.sheet-titre{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--sp-3);font-weight:500}.panneau-bas>*+*{margin-top:var(--sp-3)}.sheet-section{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-top:var(--sp-5)}.sheet-grille{gap:var(--sp-2);grid-template-columns:1fr 1fr;display:grid}.sheet-lien{align-items:center;gap:var(--sp-3);min-height:48px;padding:0 var(--sp-3);border:1px solid var(--hairline);border-radius:var(--r);color:var(--ink);font-size:var(--t-sm);font-weight:600;display:flex}.sheet-lien svg{width:18px;height:18px;color:var(--ink-soft);flex:none}.sheet-lien.active,.sheet-lien[aria-current=page]{border-color:var(--ink);background:var(--surface)}.sheet-menu .menu-item{min-height:48px;font-size:var(--t-base)}.sheet-recherche{align-items:center;gap:var(--sp-2);border:1px solid var(--edge);border-radius:var(--r-pill);padding:0 var(--sp-4);background:var(--surface);display:flex}.sheet-recherche:focus-within{border-color:var(--ink)}.sheet-recherche svg{width:18px;height:18px;color:var(--ink-soft);flex:none}.sheet-recherche input{min-width:0;height:48px;color:var(--ink);font-size:var(--t-base);background:0 0;border:0;outline:none;flex:1}.filtres-case{align-items:center;column-gap:var(--sp-3);padding:var(--sp-3) 0;color:var(--ink);cursor:pointer;grid-template-columns:auto 1fr;font-weight:600;display:grid}.filtres-case input{width:18px;height:18px;accent-color:var(--ink)}.filtres-case .help{grid-column:2;font-weight:400}.filtres-actions{justify-content:flex-end;gap:var(--sp-2);margin-top:var(--sp-5);display:flex}.filtres-actions .btn-primary{flex:1;justify-content:center}.panneau-bas .grav-chips{flex-wrap:wrap}.visite{z-index:90;pointer-events:none;position:fixed;inset:0}.visite-voile{pointer-events:auto;width:100%;height:100%;position:fixed;inset:0}.visite-voile-fond{fill:#0000008c}.visite-zone{outline:2px solid var(--on-carter);outline-offset:0;transition:top .2s var(--ease), left .2s var(--ease), width .2s var(--ease), height .2s var(--ease);border-radius:12px;position:fixed}.visite-bulle{background:var(--ink);width:min(330px,100vw - 32px);color:var(--paper);padding:var(--sp-4) var(--sp-4) var(--sp-3);pointer-events:auto;border-radius:14px;position:fixed;box-shadow:0 12px 32px #00000047}.visite-etape{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.08em;opacity:.75}.visite-titre{font-size:var(--t-md);margin-top:2px;font-weight:700}.visite-texte{font-size:var(--t-sm);line-height:var(--lh-snug);margin-top:var(--sp-2);opacity:.92}.visite-actions{justify-content:space-between;align-items:center;gap:var(--sp-2);margin-top:var(--sp-4);display:flex}.visite-nav{gap:var(--sp-2);display:flex}.visite-passer,.visite-prec{color:inherit;opacity:.8;font-size:var(--t-sm);cursor:pointer;background:0 0;border:0;min-height:36px;padding:8px 4px}.visite-passer:hover,.visite-prec:hover{opacity:1;text-decoration:underline}.visite-suiv{background:var(--paper);color:var(--ink);border-radius:var(--r);font-size:var(--t-sm);cursor:pointer;border:0;min-height:36px;padding:8px 14px;font-weight:700}.visite-installer{margin-top:var(--sp-3);border-radius:var(--r-md,8px);color:inherit;background:0 0;border:1px solid;padding:8px 14px;font-weight:600}.visite-bulle :focus-visible{outline:2px solid var(--paper);outline-offset:2px}@media (prefers-reduced-motion:reduce){.panneau-bas{animation:none}.visite-zone{transition:none}}.tdc-aide{max-width:72ch;margin-bottom:var(--sp-4)}.tdc-legende{gap:var(--sp-4);font-size:var(--t-xs);color:var(--ink-soft);margin-bottom:var(--sp-3);flex-wrap:wrap;display:flex}.tdc-legende>span{align-items:center;gap:6px;display:inline-flex}.tdc-pastille{border-radius:2px;width:12px;height:8px;display:inline-block}.tdc-pastille.is-actuel,.tdc-plein.is-actuel{background:var(--ink)}.tdc-pastille.is-precedent,.tdc-plein.is-precedent{background:var(--edge)}.tdc-tete,.tdc-ligne{align-items:center;gap:var(--sp-4);grid-template-columns:minmax(140px,1.2fr) minmax(160px,2fr) minmax(110px,.8fr) 190px;display:grid}.tdc-tete{font-family:var(--font-mono);font-size:var(--t-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);padding:0 var(--sp-2) var(--sp-2);border-bottom:1px solid var(--edge)}.tdc-liste{margin:0;padding:0;list-style:none}.tdc-ligne{padding:var(--sp-3) var(--sp-2);border-bottom:1px solid var(--hairline)}.tdc-nom{align-items:baseline;gap:var(--sp-3);min-width:0;color:var(--ink);font-weight:600;font-size:var(--t-sm);text-decoration:none;display:flex}.tdc-nom:hover .tdc-nom-texte{text-underline-offset:3px;text-decoration:underline}.tdc-nom.is-mono .tdc-nom-texte{font-family:var(--font-mono);font-weight:500}.tdc-nom-texte{overflow-wrap:anywhere}.tdc-rang{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-faint);font-weight:400}.tdc-barres{flex-direction:column;gap:4px;display:flex}.tdc-barre{align-items:center;gap:var(--sp-2);display:flex}.tdc-piste{background:var(--surface);border-radius:2px;flex:1;height:10px;overflow:hidden}.tdc-plein{border-radius:2px;min-width:2px;height:100%;display:block}.tdc-val{text-align:right;width:3ch;font-size:var(--t-sm);font-weight:600}.tdc-val.is-soft{color:var(--ink-soft);font-weight:400}.tdc-evo{font-size:var(--t-sm);flex-direction:column;font-weight:600;display:flex}.tdc-evo-mot{font-size:var(--t-xs);color:var(--ink-soft);font-weight:400}.tdc-evo.is-baisse,.tdc-evo.is-stable{color:var(--ink-soft)}.tdc-evo.is-stable{font-weight:400}.tdc-semaine{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.tdc-jour{flex-direction:column;align-items:center;gap:2px;display:flex}.tdc-jour-n{font-size:var(--t-2xs);color:var(--ink-soft);min-height:1.2em;line-height:1.2}.tdc-jour-piste{justify-content:center;align-items:flex-end;width:100%;height:32px;display:flex}.tdc-jour-baton{background:var(--ink-soft);border-radius:2px 2px 0 0;width:70%;max-width:14px}.tdc-jour-baton.is-vide{background:var(--edge);height:2px}.tdc-jour-lib{font-family:var(--font-mono);font-size:var(--t-2xs);color:var(--ink-faint)}@media (width<=760px){.tdc-tete{display:none}.tdc-ligne{row-gap:var(--sp-3);grid-template-columns:1fr auto;grid-template-areas:"nom evo""barres barres""semaine semaine"}.tdc-nom{grid-area:nom}.tdc-evo{text-align:right;grid-area:evo;align-items:flex-end}.tdc-barres{grid-area:barres}.tdc-semaine{grid-area:semaine;max-width:260px}}@media (width<=640px){.visite-zone{border-radius:10px;outline-width:1.5px}}.paywall{max-width:620px;margin:var(--sp-6) auto;padding:var(--sp-6) var(--sp-5);border:1px solid var(--hairline);border-radius:var(--r-lg);background:var(--surface);text-align:center}.paywall.is-compact{margin:var(--sp-5) 0 0;text-align:left;max-width:none;padding:var(--sp-5)}.paywall+.panel,.panel+.paywall{margin-top:var(--sp-4)}.paywall-icone{background:var(--paper);border:1px solid var(--hairline);width:40px;height:40px;color:var(--ink);border-radius:50%;place-items:center;display:inline-grid}.paywall-icone svg{width:20px;height:20px}.paywall-titre{font-size:var(--t-lg);margin-top:var(--sp-3);color:var(--ink);font-weight:700}.paywall-texte{color:var(--ink-soft);margin-top:var(--sp-2);font-size:var(--t-sm)}.paywall-atouts{margin:var(--sp-4) auto;gap:var(--sp-2);text-align:left;font-size:var(--t-sm);color:var(--ink-2);flex-direction:column;padding:0;list-style:none;display:inline-flex}.paywall.is-compact .paywall-atouts{margin:var(--sp-3) 0;display:flex}.paywall-atouts li{gap:var(--sp-2);align-items:flex-start;display:flex}.paywall-atouts svg{width:16px;height:16px;color:var(--ink);flex:none;margin-top:2px}.paywall-prix{font-size:var(--t-sm);color:var(--ink-soft);margin-bottom:var(--sp-4)}.paywall-prix strong{color:var(--ink)}.abo-etat{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-5);display:flex}.abo-etat svg{flex:none;width:20px;height:20px}.offres{gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.offre{gap:var(--sp-2);padding:var(--sp-5);border:1px solid var(--hairline);border-radius:var(--r-lg);flex-direction:column;display:flex}.offre.is-mise-en-avant{border-color:var(--ink)}.offre-titre{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.offre-prix{font-size:var(--t-xl);color:var(--ink);font-weight:700}.offre-detail{font-size:var(--t-sm);color:var(--ink-soft);min-height:2.6em}.offre .btn{margin-top:auto}.abo-cgv{gap:var(--sp-2);margin-bottom:var(--sp-4);font-size:var(--t-sm);color:var(--ink-2);cursor:pointer;align-items:flex-start;display:flex}.abo-cgv input{width:18px;height:18px;accent-color:var(--ink);flex:none;margin-top:2px}.abo-cgv a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.abo-notes{margin-top:var(--sp-5);font-size:var(--t-sm);color:var(--ink-soft);gap:var(--sp-1);padding-left:1.1em;display:grid}.abo-retour p+p{margin-top:var(--sp-3)}.abo-retour-actions{gap:var(--sp-3);flex-wrap:wrap;display:flex}.abo-retour-actions:empty{display:none}.reveil-serveur{z-index:80;left:50%;top:calc(var(--sp-3) + env(safe-area-inset-top));align-items:center;gap:var(--sp-3);max-width:min(560px, calc(100vw - 2 * var(--sp-4)));padding:var(--sp-2) var(--sp-4);border-radius:var(--r-pill);background:var(--carter);color:var(--on-carter);font-size:var(--t-sm);box-shadow:var(--shadow-pop);display:flex;position:fixed;transform:translate(-50%)}.reveil-serveur .btn{flex:none}.reveil-point{background:currentColor;border-radius:50%;flex:none;width:8px;height:8px;animation:1.2s ease-in-out infinite reveil}@keyframes reveil{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.reveil-point{animation:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
