:root{--color-bg: #f8f8f8;--color-text: #1a1a1a;--color-text-muted: #555555;--color-border: #e0e0e0;--font-body: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--font-heading: Georgia, 'Times New Roman', serif;--font-size-base: 18px;--line-height: 1.65;--max-width: 38rem;--spacing-unit: 1.5rem;--transition-speed: 0.3s}[data-theme="dark"]{--color-bg: #1a1a1a;--color-text: #e8e8e8;--color-text-muted: #999999;--color-border: #333333}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--color-bg: #1a1a1a;--color-text: #e8e8e8;--color-text-muted: #999999;--color-border: #333333}}[data-lang="en"] [lang="fr"]{display:none}[data-lang="fr"] [lang="en"]{display:none}*,*::before,*::after{box-sizing:border-box}html{font-size:var(--font-size-base);scroll-behavior:smooth}body{font-family:var(--font-body);font-size:1rem;line-height:var(--line-height);color:var(--color-text);background-color:var(--color-bg);margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-speed) ease,color var(--transition-speed) ease}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:normal;line-height:1.3;margin-top:calc(var(--spacing-unit) * 2);margin-bottom:var(--spacing-unit)}h1{font-size:2.2rem;font-weight:400}h2{font-size:1.75rem}h3{font-size:1.4rem}h4{font-size:1.2rem}p{margin-top:0;margin-bottom:var(--spacing-unit);font-size:15px}a{color:var(--color-text);text-decoration:underline;text-underline-offset:0.15em;transition:opacity var(--transition-speed) ease}a:hover{opacity:0.7}ul,ol{margin-top:0;margin-bottom:var(--spacing-unit);padding-left:1.5em;font-size:15px}li{margin-bottom:0.5em}ul{list-style-type:disc}blockquote{margin:var(--spacing-unit) 0;padding-left:var(--spacing-unit);border-left:3px solid var(--color-border);color:var(--color-text-muted);font-style:italic}code{font-family:'SF Mono', 'Consolas', 'Monaco', monospace;font-size:0.9em;background-color:var(--color-border);padding:0.15em 0.35em;border-radius:3px}pre{background-color:var(--color-border);padding:var(--spacing-unit);overflow-x:auto;border-radius:4px;margin-bottom:var(--spacing-unit)}pre code{background:none;padding:0}hr{border:none;border-top:1px solid var(--color-border);margin:calc(var(--spacing-unit) * 2) 0}.site-wrapper{min-height:100vh;display:flex;flex-direction:column}.site-header{padding:var(--spacing-unit) var(--spacing-unit);border-bottom:1px solid var(--color-border);position:sticky;top:0;background-color:var(--color-bg);z-index:100;transition:background-color var(--transition-speed) ease}.header-inner{max-width:var(--max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:center}.site-title{font-family:var(--font-heading);font-size:1.4rem;font-weight:normal;margin:0}.site-title a{text-decoration:none}.site-title a:hover{opacity:1}.site-description{font-size:0.9rem;color:var(--color-text-muted);margin:0.25rem 0 0 0}.header-controls{display:flex;align-items:center;gap:0.75rem}.site-main{flex:1;padding:var(--spacing-unit) var(--spacing-unit) calc(var(--spacing-unit) * 2)}.content{max-width:var(--max-width);margin:0 auto}.site-footer{padding:var(--spacing-unit);border-top:1px solid var(--color-border);text-align:center;font-size:0.85rem;color:var(--color-text-muted)}.footer-inner{max-width:var(--max-width);margin:0 auto}.footer-links{list-style:none;padding:0;margin:0 0 0.5rem 0;display:flex;justify-content:center;gap:1.5rem}.footer-links li{margin:0}.footer-license{font-size:0.8rem;color:var(--color-text-muted);margin:0.5rem 0 0 0}.theme-toggle{background:none;border:2px solid var(--color-text);border-radius:1rem;width:3rem;height:1.6rem;cursor:pointer;position:relative;transition:border-color var(--transition-speed) ease;flex-shrink:0}.theme-toggle::after{content:'';position:absolute;top:3px;left:4px;width:1rem;height:1rem;background-color:var(--color-text);border-radius:50%;transition:transform var(--transition-speed) ease,background-color var(--transition-speed) ease}[data-theme="dark"] .theme-toggle::after,.theme-toggle.dark::after{transform:translateX(1.2rem)}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .theme-toggle::after{transform:translateX(1.2rem)}}.theme-toggle:hover{opacity:0.7}.theme-toggle:focus{outline:2px solid var(--color-text);outline-offset:2px}.theme-toggle-floating{position:fixed;top:1rem;right:1rem;opacity:0;pointer-events:none;transition:opacity var(--transition-speed) ease;z-index:1000}.theme-toggle-floating.visible{opacity:1;pointer-events:auto}.lang-toggle{background:none;border:2px solid var(--color-text);border-radius:0.3rem;padding:0.15rem 0.5rem;font-family:var(--font-body);font-size:0.8rem;font-weight:600;color:var(--color-text);cursor:pointer;transition:border-color var(--transition-speed) ease,color var(--transition-speed) ease;flex-shrink:0;letter-spacing:0.05em}.lang-toggle:hover{opacity:0.7}.lang-toggle:focus{outline:2px solid var(--color-text);outline-offset:2px}.screenshot{margin:var(--spacing-unit) 0}.screenshot img{max-width:100%;height:auto;border-radius:6px;border:1px solid var(--color-border)}.screenshot-dark{display:none}.screenshot-light{display:block}[data-theme="dark"] .screenshot-light{display:none}[data-theme="dark"] .screenshot-dark{display:block}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .screenshot-light{display:none}:root:not([data-theme="light"]) .screenshot-dark{display:block}}.features-list{list-style:none;padding:0;margin:var(--spacing-unit) 0}.features-list li{padding:0.75rem 0;border-bottom:1px solid var(--color-border);font-size:15px}.features-list li:last-child{border-bottom:none}.features-list strong{display:block;font-family:var(--font-heading);font-size:1.1rem;margin-bottom:0.25rem}@media (max-width: 600px){:root{--font-size-base: 17px}h1{font-size:1.8rem}h2{font-size:1.5rem}p,ul,ol{font-size:14px}.site-header{padding:1rem}.header-inner{flex-wrap:wrap;gap:0.5rem}.site-main{padding:1.5rem 1rem}.features-list strong{font-size:1rem}}@media print{body{background:white;color:black}.theme-toggle,.theme-toggle-floating,.lang-toggle{display:none}.site-header{position:static;border-bottom:1px solid #ccc}}
