/* Test CSS */
body {
    font-family: Open Sans,Arial,sans-serif;
    font-size: 0.9em;
    color: #666;
    background-color: #fff;
    line-height: 1.7em;
    font-weight: 500;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin:0px !important;
    padding:0px !important;
    background-color:#F2F2F2;
}

body #wrapper {
	max-width:1080px;
   	background-color:white;
    margin:0 auto;
    padding: 20px 40px 80px 40px;
}

h1 {
	color:black;
    font-weight: 700;
    line-height: 1.3em;
}

h2 {
	font-size: 22px; 
    font-weight: 700;
    color: #48b1d8!important;
    line-height: 1.3em;
}

h3 {
	font-size: 18px; 
    font-weight: 700;
    line-height: 1.3em;
}

pre {
	background-color:#F2F2F2;
    padding:12px 12px 0 12px;
  	overflow-x: auto;
}

code, pre {
  font-family: monospace;
}

a sup {
    text-decoration: none;
    display: inline-block;
}

img {
 /* box-shadow: 0px 2px 18px 0px rgba(0,0,0,0.3); */
 border: 10px solid black;
 background-color:black;
 width:100%;
 max-width:800px;
}

ul {
	padding-left:20px;
    list-style: square;
}

html {
    scroll-behavior: smooth;
}

#dynamic-toc {
    margin: 2rem 0;
    padding: 1.5rem;
    border: 1px solid #d9d9d9;
    background: #f8f8f8;
    border-radius: 8px;
}

#dynamic-toc .toc-title {
    margin: 0 0 1rem 0;
    font-size: 1.4rem;
}

#dynamic-toc .toc-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

#dynamic-toc .toc-item {
    margin: 0.35rem 0;
}

#dynamic-toc .toc-item a {
    text-decoration: none;
    color: #666;
}

#dynamic-toc .toc-item a:hover,
#dynamic-toc .toc-item a:focus {
    text-decoration: underline;
}

#dynamic-toc .toc-h1 {
    font-weight: 700;
}

#dynamic-toc .toc-h2 {
    padding-left: 1rem;
}

#dynamic-toc .toc-h3 {
    padding-left: 2rem;
    font-size: 0.96em;
}

#scroll-top-button {
    position: fixed;
    right: 1rem;
    bottom: 1rem;
    z-index: 9999;
    width: 3rem;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 999px;
    background: #48b1d8;
    color: #fff;
    font-size: 1.4rem;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.2);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition:
        opacity 0.25s ease,
        transform 0.25s ease,
        visibility 0.25s ease,
        background 0.25s ease;
    -webkit-tap-highlight-color: transparent;
}

#scroll-top-button.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

#scroll-top-button:hover,
#scroll-top-button:focus {
    background: rgba(20, 20, 20, 1);
    outline: none;
}

#scroll-top-button:focus-visible {
    box-shadow:
        0 0 0 3px rgba(255, 255, 255, 0.7),
        0 0 0 6px rgba(20, 20, 20, 0.35);
}


@media (max-width: 767px) {

    body #wrapper {
    }

    img {
        max-width:100%;
        border:1px solid black;
    }

    #dynamic-toc {
        padding: 1rem;
    }

    #dynamic-toc .toc-title {
        font-size: 1.2rem;
    }

    #dynamic-toc .toc-h2 {
        padding-left: 0.75rem;
    }

    #dynamic-toc .toc-h3 {
        padding-left: 1.5rem;
    }

    #scroll-top-button {
        right: 0.75rem;
        bottom: 0.75rem;
        width: 2.75rem;
    }
}

/* Positionnement des titres */
#wrapper h1,
#wrapper h2,
#wrapper h3 {
    position: relative;
}

/* Icône d’ancre */
.anchor-link {
    position: absolute;
    left: -1.5rem;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0;
    text-decoration: none;
    color: #888;
    transition: opacity 0.2s ease, color 0.2s ease;
}

/* Affichage au hover */
#wrapper h1:hover .anchor-link,
#wrapper h2:hover .anchor-link,
#wrapper h3:hover .anchor-link {
    opacity: 1;
}

/* Hover effet */
.anchor-link:hover {
    color: #000;
}

/* Feedback copie */
.anchor-link.copied {
    color: green;
}

/* Mobile : toujours visible (pas de hover) */
@media (max-width: 767px) {
    .anchor-link {
        opacity: 1;
        left: -1.25rem;
    }
}

/* Default CSS */

div.p { margin-top: 7pt;}
td div.comp { margin-top: -0.6ex; margin-bottom: -1ex;}
td div.comb { margin-top: -0.6ex; margin-bottom: -.6ex;}
td div.hrcomp { line-height: 0.9; margin-top: -0.8ex; margin-bottom: -1ex;}
td div.norm {line-height:normal;}
span.roman {font-family: serif; font-style: normal; font-weight: normal;} 
span.overacc2 {position: relative;  left: .8em; top: -1.2ex;}
span.overacc1 {position: relative;  left: .6em; top: -1.2ex;} 
.tiny {font-size:30%;}
.scriptsize {font-size:xx-small;}
.footnotesize {font-size:x-small;}
.smaller {font-size:smaller;}
.small {font-size:small;}
.normalsize {font-size:medium;}
.large {font-size:large;}
.larger {font-size:x-large;}
.largerstill {font-size:xx-large;}
.huge {font-size:300%;}