.version,.loading,.error{color:var(--text-muted);font-size:.8em}.component-group{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.spacing-item{align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);cursor:pointer;display:flex}.shadow-item{background:var(--card-bg);border-radius:var(--radius-md);height:120px;font-family:var(--font-tech);cursor:pointer;color:var(--text-color);border:1px solid var(--border-color);justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.geo-address{margin-top:var(--space-0-5)}.geo-address-content{color:var(--text-muted);margin-bottom:var(--space-0-5);font-size:.8rem}.geo-address-text{font-size:.88rem;font-weight:600;line-height:1.7}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{scrollbar-color:var(--accent-color) var(--bg-color);scrollbar-width:auto;scroll-padding-top:var(--space-12-5);scroll-behavior:smooth;font-size:100%}::selection{background-color:var(--accent-color);color:var(--text-inverted)}::-webkit-scrollbar{width:var(--space-2)}::-webkit-scrollbar-track{background:var(--bg-color)}::-webkit-scrollbar-thumb{background-color:var(--accent-color);border-radius:var(--radius-sm);border:4px solid var(--bg-color)}::-webkit-scrollbar-thumb:hover{background-color:var(--text-color)}body{font-family:var(--font-main);background-color:var(--bg-color);color:var(--text-color);margin:0;padding:0;line-height:1.5}abbr[title],abbr{cursor:help;transition:color .2s;border-bottom:none!important;text-decoration:none!important}abbr[title]:hover,abbr:hover{color:var(--color-primary-400)}.js-tooltip-trigger{cursor:help;border-bottom:none;display:inline-block;position:relative}.a11y-tooltip{bottom:calc(100% + var(--space-1));transform:translateX(-50%) translateY(var(--space-0-5));background-color:var(--text-color);color:var(--bg-color);padding:var(--space-1) var(--space-2);font-size:.85rem;line-height:1.45;font-family:var(--font-main);white-space:normal;text-align:center;opacity:0;visibility:hidden;pointer-events:none;z-index:100;border-radius:6px;width:-webkit-max-content;width:max-content;max-width:250px;font-weight:500;transition:opacity .2s,transform .2s,visibility .2s;position:absolute;left:50%;box-shadow:0 4px 12px color(display-p3 .179236 .179236 .179236/.15);box-shadow:0 4px 12px lab(18.8% 0 0/.15)}.a11y-tooltip:after{content:"";top:100%;left:calc(50% + var(--arrow-shift,0px));border-style:solid;border-width:6px;border-color:var(--text-color) transparent transparent transparent;position:absolute;transform:translate(-50%)}.js-tooltip-trigger:not(.is-tooltip-open)>.a11y-tooltip{max-width:0;height:0;padding:0;overflow:hidden}.js-tooltip-trigger.is-tooltip-open .a11y-tooltip{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)translateY(0)}a{color:inherit}p a:not(.email-link):not(.js-contact-email):not(.back-to-top):not(.case-link):not(.journal-link):not(.linkedin-inline),li a:not(.nav-link-404){text-underline-offset:var(--space-0-5);text-decoration:underline;text-decoration-thickness:1px;transition:all .2s}p a:not(.email-link):not(.js-contact-email):not(.back-to-top):not(.case-link):not(.journal-link):not(.linkedin-inline):hover,li a:not(.nav-link-404):hover{-webkit-text-decoration-color:var(--color-primary-400);text-decoration-color:var(--color-primary-400);color:var(--color-primary-400)}.text-underline{text-decoration:underline}a:focus-visible{outline:2px solid var(--text-color);outline-offset:var(--space-0-5)}.page{min-height:100vh;min-height:100dvh;padding:var(--space-4) var(--space-3) var(--space-5);justify-content:center;display:flex}.back-link{align-items:center;gap:var(--space-1);margin-bottom:var(--space-3);font-size:.9rem;text-decoration:none;display:inline-flex}.back-link:before{content:"←";font-size:.95rem}label{cursor:pointer}:root[data-theme=dark] .metric-chip,:root[data-theme=dark] .tag{background-color:color(display-p3 .198916 .198916 .198916);background-color:lab(21.12% 0 0)}body.theme-transitions-ready{transition:background-color .25s,color .25s}.scroll-top-toggle{bottom:var(--space-3);right:var(--space-3);background:var(--bg-color);color:var(--text-color);width:var(--control-size);height:var(--control-size);cursor:pointer;z-index:1000;opacity:0;pointer-events:none;transform:translateY(var(--space-2-5));border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .3s;display:flex;position:fixed;box-shadow:0 4px 12px color(display-p3 0 0 0/.1);box-shadow:0 4px 12px lab(0% 0 0/.1)}:root[data-theme=dark] .scroll-top-toggle{box-shadow:0 4px 12px color(display-p3 1 1 1/.1);box-shadow:0 4px 12px lab(100% 0 0/.1)}.scroll-top-toggle.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.scroll-top-toggle:hover{background-color:color(display-p3 .882679 .882679 .882679);background-color:lab(89.56% -.0000298023 -.0000119209);transform:scale(1.1)translateY(0)}.scroll-top-toggle svg{width:var(--icon-size-sm);height:var(--icon-size-sm);fill:currentColor}.egg-toggle{bottom:calc(var(--space-3) + var(--control-size) + var(--space-1-5));right:var(--space-3);background:var(--bg-color);color:var(--text-color);width:var(--control-size);height:var(--control-size);cursor:pointer;z-index:1000;opacity:0;pointer-events:none;transform:translateY(var(--space-2-5)) scale(.8);border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .3s;display:flex;position:fixed;box-shadow:0 4px 12px color(display-p3 0 0 0/.1);box-shadow:0 4px 12px lab(0% 0 0/.1)}:root[data-theme=dark] .egg-toggle{box-shadow:0 4px 12px color(display-p3 1 1 1/.1);box-shadow:0 4px 12px lab(100% 0 0/.1)}.egg-toggle.is-visible{opacity:1;pointer-events:auto;animation:.5s cubic-bezier(.34,1.56,.64,1) forwards egg-bounce-in;transform:translateY(0)scale(1)}@keyframes egg-bounce-in{0%{opacity:0;transform:translateY(20px)scale(.5)}60%{opacity:1;transform:translateY(-6px)scale(1.1)}80%{transform:translateY(3px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.egg-toggle:hover{background-color:color(display-p3 .882679 .882679 .882679);background-color:lab(89.56% -.0000298023 -.0000119209);transform:scale(1.1)rotate(10deg)}:root[data-theme=dark] .egg-toggle:hover{background-color:color(display-p3 .198916 .198916 .198916);background-color:lab(21.12% 0 0)}.egg-toggle svg{width:var(--space-2-5);height:var(--space-2-5);fill:currentColor}.email-link{padding:var(--space-2) var(--space-4);color:var(--text-inverted);background-color:var(--accent-color);border:none;border-radius:12px;align-items:center;font-size:1.1rem;font-weight:700;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex}.email-link:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 4px 12px color(display-p3 .743206 .743206 .743206);box-shadow:0 4px 12px lab(76.8% -.0000298023 0)}.performance-badges{gap:var(--space-2);width:100%;margin-top:var(--space-2);flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.perf-pill{border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-color);background-color:var(--card-bg);align-items:center;font-size:.85rem;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex;overflow:hidden}.perf-pill:hover{transform:translateY(-2px);box-shadow:0 4px 12px color(display-p3 .869816 .869817 .869816);box-shadow:0 4px 12px lab(88.4% 0 .0000119209)}.perf-pill .pill-label{padding:var(--space-1) var(--space-2);font-weight:500}.perf-pill .pill-score{padding:var(--space-1) var(--space-2);border-left:1px solid var(--border-subtle);color:color(display-p3 1 1 1);color:lab(100% 0 0);font-weight:700}.perf-pill.eco-pill .pill-score,.perf-pill.pagespeed-pill .pill-score,.perf-pill.schema-pill .pill-score,.perf-pill.security-pill .pill-score,.perf-pill.observatory-pill .pill-score{background-color:var(--color-green-700)}body.a11y-dys-font,body.a11y-dys-font h1,body.a11y-dys-font h2,body.a11y-dys-font h3,body.a11y-dys-font p,body.a11y-dys-font li,body.a11y-dys-font a,body.a11y-dys-font span,body.a11y-dys-font div{letter-spacing:.05em!important;word-spacing:.1em!important;font-family:Atkinson Hyperlegible,sans-serif!important;line-height:1.6!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body.a11y-reduce-motion *,body.a11y-reduce-motion :before,body.a11y-reduce-motion :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.settings-toggle{top:calc(var(--space-3) + var(--control-size) + var(--space-1-5));right:var(--space-3);background:var(--bg-color);color:var(--text-color);width:var(--control-size);height:var(--control-size);cursor:pointer;z-index:1000;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:fixed}.settings-toggle:hover{background-color:color(display-p3 .882679 .882679 .882679);background-color:lab(89.56% -.0000298023 -.0000119209);transform:scale(1.1)}:root[data-theme=dark] .settings-toggle:hover{background-color:color(display-p3 .198916 .198916 .198916);background-color:lab(21.12% 0 0)}.settings-toggle svg{width:var(--icon-size-sm);height:var(--icon-size-sm)}dialog.a11y-modal{border-radius:var(--radius-lg);padding:var(--space-5);background:var(--modal-bg);width:90%;max-width:720px;color:var(--text-color);max-height:90vh;box-sizing:border-box;border:none;max-height:90dvh;margin:auto;position:fixed;top:0;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 25px 50px color(display-p3 .179236 .179236 .179236);box-shadow:0 25px 50px lab(18.8% 0 0)}@media (max-width:600px){dialog.a11y-modal{padding:var(--space-3);width:calc(100% - var(--space-4))}}@media (max-width:480px){dialog.a11y-modal{border-radius:var(--radius-md)}}@media (max-width:360px){dialog.a11y-modal{padding:var(--space-2);width:calc(100% - var(--space-2))}.a11y-option-text h3{font-size:.95rem}}dialog.a11y-modal::backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:color(display-p3 .01292 .01292 .01292/.6);background:lab(.903296% 0 0/.6)}.a11y-modal-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.a11y-modal-header h2{margin:0}.close-modal-btn{background:var(--modal-bg);color:var(--text-color);cursor:pointer;width:var(--space-4);height:var(--space-4);border:none;border-radius:50%;font-size:1.5rem;font-weight:700;transition:background .2s}.close-modal-btn:hover{background-color:var(--badge-bg)}.a11y-options{gap:var(--space-3);flex-direction:column;display:flex}.a11y-option{padding-bottom:var(--space-3);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.a11y-option:last-child{border-bottom:none;padding-bottom:0}.a11y-option-text h3{margin:0 0 var(--space-0-5) 0;font-size:1.05rem}.a11y-option-text a{color:var(--link-color)}.a11y-option-text p{color:color(display-p3 .333837 .333837 .333837);color:lab(36.2% 0 .00000596046);margin:0;font-size:.85rem}.toggle-switch{width:var(--control-size);height:var(--space-3);flex-shrink:0;display:inline-block;position:relative}.toggle-switch input{opacity:0;cursor:pointer;z-index:2;border:0;width:100%;height:100%;margin:0;padding:0;position:absolute;top:0;left:0}.toggle-switch input:focus-visible+.slider{outline:3px solid var(--focus-color);outline-offset:var(--space-0-5)}.toggle-switch .slider{cursor:pointer;background-color:var(--border-color);border-radius:var(--radius-lg);transition:all .4s;position:absolute;top:0;bottom:0;left:0;right:0}.toggle-switch .slider:before{content:"";height:var(--icon-size-sm);width:var(--icon-size-sm);left:var(--space-0-5);bottom:var(--space-0-5);background-color:var(--text-inverted);border-radius:50%;transition:all .4s;position:absolute;box-shadow:0 2px 4px color(display-p3 .743206 .743206 .743206);box-shadow:0 2px 4px lab(76.8% -.0000298023 0)}.toggle-switch input:checked+.slider{background-color:var(--accent-color)}.toggle-switch input:checked+.slider:before{transform:translateX(var(--space-2-5))}.sw-update-banner{bottom:var(--space-3);transform:translateX(-50%) translateY(calc(100% + var(--space-3)));align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--text-color);color:var(--bg-color);border-radius:var(--radius-full);z-index:2000;opacity:0;white-space:nowrap;font-size:.9rem;font-weight:500;transition:transform .4s cubic-bezier(.34,1.56,.64,1),opacity .3s;display:flex;position:fixed;left:50%;box-shadow:0 8px 24px color(display-p3 0 0 0/.2);box-shadow:0 8px 24px lab(0% 0 0/.2)}.sw-update-banner--visible{opacity:1;transform:translate(-50%)translateY(0)}.sw-update-banner__btn{background:var(--accent-color);color:var(--text-inverted);border-radius:var(--radius-full);padding:var(--space-0-75) var(--space-2);cursor:pointer;font-size:.85rem;font-weight:700;font-family:var(--font-main);border:none;transition:filter .2s}.sw-update-banner__btn:hover{filter:brightness(1.15);outline:2px solid var(--color-neutral-0);outline-offset:var(--space-0-25)}.sw-update-banner__btn:focus-visible{filter:brightness(1.15);outline:2px solid var(--color-neutral-0);outline-offset:var(--space-0-25)}.sw-update-banner__close{color:inherit;cursor:pointer;opacity:.6;padding:0 var(--space-1);font-size:.9rem;line-height:1;font-family:var(--font-main);background:0 0;border:none;transition:opacity .2s}.sw-update-banner__close:hover{opacity:1;outline-offset:var(--space-0-25);outline:2px solid}.sw-update-banner__close:focus-visible{opacity:1;outline-offset:var(--space-0-25);outline:2px solid}@media (max-width:480px){.sw-update-banner{width:calc(100% - var(--space-4));white-space:normal;border-radius:var(--radius-md);flex-wrap:wrap;justify-content:space-between}}@media (prefers-reduced-motion:reduce){.sw-update-banner{transition:opacity .2s;transform:translate(-50%)translateY(0)}.sw-update-banner:not(.sw-update-banner--visible){opacity:0;pointer-events:none}}.u-text-underline{text-decoration:underline}.u-icon-inline{margin-left:var(--space-0-25);vertical-align:middle}.u-icon-inline-lg{margin-left:var(--space-0-5)}.u-list-unstyled{padding:0;list-style:none}.u-text-center{text-align:center}.u-text-muted-sm{margin-top:var(--space-1-5);font-size:.9rem}.u-mb-6{margin-bottom:var(--space-6,3rem)}.u-mt-2{margin-top:var(--space-2,1rem)}.u-mt-4{margin-top:var(--space-4,2rem)}.u-flex-100{text-align:center;margin-top:var(--space-3);opacity:.8;flex-basis:100%;font-size:.9rem}.u-flex-row{gap:var(--space-1);display:flex}.u-flex-end{margin-top:var(--space-3);justify-content:flex-end;gap:var(--space-1);display:flex}.toolbox-muted{color:var(--muted);font-size:.85rem}.toolbox-muted-sm{color:var(--muted);margin-top:var(--space-0-5);font-size:.75rem}.toolbox-muted-geo{margin-top:var(--space-1);color:var(--muted);font-size:.83rem}.toolbox-title-screen{color:#6c63ff}.toolbox-title-browser{color:#38bdf8}.toolbox-title-system{color:#34d399}.toolbox-title-network{color:#fb923c}.toolbox-title-battery{color:#facc15}.toolbox-title-location{color:#f472b6}.toolbox-title-perms{color:#a78bfa}.toolbox-mt-row{margin-top:var(--space-2)}.toolbox-mt-history{margin-top:var(--space-1-5)}.a11y-modal-title{font-size:1.3rem;font-family:var(--font-heading);color:var(--text-color);outline:none;margin-top:0;line-height:1.4}.a11y-modal-highlight{color:var(--accent-color);font-weight:500}.a11y-modal-padding{padding:0 var(--space-4) var(--space-4) var(--space-4)}.a11y-modal-right{justify-content:flex-end;margin-bottom:0}.a11y-modal-max{text-align:center;max-width:600px}.lexique-ul{margin:var(--space-1-5) 0 var(--space-1-5) var(--space-2-5);gap:var(--space-1);flex-direction:column;display:flex}.lexique-ul-sm{margin:var(--space-1) 0 var(--space-1-5) var(--space-2-5);gap:var(--space-0-5);flex-direction:column;display:flex}.lexique-ul-mt{margin:var(--space-1-5) 0 0 var(--space-2-5);gap:var(--space-1);flex-direction:column;display:flex}.log-mt-0{margin-top:0}.sg-version{color:var(--text-muted);font-size:.8rem}.u-d-none{display:none}.egg-modal-max{text-align:center;max-width:560px}.egg-modal-emoji{margin-bottom:var(--space-2);font-size:2.5rem}.egg-modal-title{font-family:var(--font-heading);margin:0 0 var(--space-2) 0;color:var(--accent-color);font-size:1.3rem}.egg-modal-text{color:var(--text-color);margin:0;font-size:1rem;line-height:1.6}.egg-modal-highlight{color:var(--accent-color)}.u-text-opacity-sm{margin-top:var(--space-3);opacity:.8;font-size:.9em;line-height:1.6}.btn-font-main{cursor:pointer;font-family:var(--font-main)}h1,h2,h3,.case-title,.case-subtitle,.section-title{text-wrap:balance}main p,main li,main dd{text-wrap:pretty}.cv-auto{content-visibility:auto;contain-intrinsic-size:auto 660px;overflow-clip-margin:1rem}.cv-auto--tall{contain-intrinsic-size:auto 950px}