:root{color-scheme:light dark;--color-bg: #fff8f1;--color-surface: #ffffff;--color-border: #f3e2d3;--color-text: #2b1d14;--color-text-muted: #6b4f3f;--color-accent: #b93d0a;--color-accent-text: #ffffff;--color-focus: #b93d0a;--color-dropzone-bg: #fdeee2;--color-error: #b42318;--shadow: 0 1px 2px rgb(124 45 18 / .06), 0 4px 12px rgb(124 45 18 / .08);--font-body: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 2rem;--radius: .75rem;--radius-pill: 999px;--max-width: 48rem}@media(prefers-color-scheme:dark){:root{--color-bg: #1a120d;--color-surface: #281c15;--color-border: #3d2b20;--color-text: #fbefe6;--color-text-muted: #d4bba9;--color-accent: #fdba74;--color-accent-text: #1a120d;--color-focus: #fdba74;--color-dropzone-bg: #3a281d;--color-error: #fca5a5;--shadow: 0 1px 2px rgb(0 0 0 / .3), 0 4px 12px rgb(0 0 0 / .25)}}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-body);line-height:1.6;color:var(--color-text);background:var(--color-bg)}a{color:var(--color-accent)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}[hidden]{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:absolute;left:var(--space-md);top:-3rem}.skip-link:focus{top:var(--space-md)}.site-header,main{max-width:var(--max-width);margin-inline:auto;padding:var(--space-md)}main{display:flex;flex-direction:column;gap:var(--space-md);padding-bottom:var(--space-lg)}h1{margin:0;font-size:clamp(2rem,6vw,3rem);line-height:1.1;letter-spacing:-.03em}h2{margin:0;font-size:1.25rem}.intro,.muted{margin:0;color:var(--color-text-muted)}.panel{padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow)}#settings{display:grid;gap:var(--space-md)}fieldset{min-width:0;margin:0;padding:0;border:0}legend{margin-bottom:var(--space-sm);padding:0;font-weight:600}.hint{margin:var(--space-xs) 0 0;color:var(--color-text-muted);font-size:.875rem}.seg{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-sm)}.seg label{position:relative}.seg input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.pill{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:3.75rem;padding:var(--space-sm) var(--space-xs);border:1.5px solid var(--color-border);border-radius:.625rem;background:var(--color-bg);text-align:center;line-height:1.3;transition:background-color .15s,border-color .15s,color .15s}.pill b{font-weight:600}.pill small{color:var(--color-text-muted);font-size:.8rem}.seg input:hover:not(:disabled)+.pill{border-color:var(--color-accent)}.seg input:disabled{cursor:not-allowed}.seg input:disabled+.pill{opacity:.5}.seg input:checked+.pill{border-color:var(--color-accent);color:var(--color-accent-text);background:var(--color-accent)}.seg input:checked+.pill small{color:inherit;opacity:.85}.seg input:focus-visible+.pill{outline:3px solid var(--color-focus);outline-offset:2px}.more{padding-top:var(--space-md);border-top:1px solid var(--color-border)}.more summary{display:inline-flex;align-items:center;min-height:2.75rem;gap:var(--space-sm);color:var(--color-accent);font-weight:600;list-style:none;cursor:pointer}.more summary::-webkit-details-marker{display:none}.more summary:before{content:"";width:.5rem;height:.5rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .2s}.more[open] summary:before{transform:rotate(45deg)}.more-content{display:grid;gap:var(--space-md);margin-top:var(--space-md)}.row{display:grid;grid-template-columns:14rem 1fr;align-items:center;gap:var(--space-sm) var(--space-md)}.row>label,.row-label{font-weight:600}.check{display:inline-flex;align-items:center;gap:var(--space-sm);min-height:2.75rem;cursor:pointer}.check input{width:1.125rem;height:1.125rem;margin:0;accent-color:var(--color-accent)}.row-control{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm) var(--space-md)}.row-control .hint{margin:0}.row>.hint{grid-column:2;margin:0}.settings-example{padding:var(--space-sm) var(--space-md);border-radius:var(--radius);background:var(--color-dropzone-bg)}.settings-example .hint{margin-top:var(--space-xs)}.settings-example-result{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-xs) var(--space-md)}.settings-example-name{color:var(--color-text-muted);font-size:.9rem}.settings-example-sizes{font-weight:700;font-variant-numeric:tabular-nums}.settings-example-gain{color:var(--color-accent);font-weight:600}@media(max-width:560px){.seg{grid-template-columns:repeat(2,1fr)}.row{grid-template-columns:1fr}.row>.hint{grid-column:auto}}input,button{font:inherit}input[type=number]{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-text-muted);border-radius:.375rem;color:inherit;background:var(--color-bg)}input[type=number]{width:7rem}input[type=range],progress{accent-color:var(--color-accent)}.dropzone{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-lg) var(--space-md);border:2px dashed var(--color-accent);border-radius:var(--radius);text-align:center;color:var(--color-text-muted);background:var(--color-surface);cursor:pointer}.dropzone>*{pointer-events:none}.dropzone:hover,.dropzone.is-dragover{background:var(--color-dropzone-bg)}.dropzone.is-disabled{opacity:.5;cursor:not-allowed}.dropzone.is-disabled:hover{background:var(--color-surface)}.dropzone:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.dropzone-title{font-size:1.125rem;font-weight:600;color:var(--color-text)}.pointer-coarse{display:none}@media(pointer:coarse){.pointer-fine{display:none}.pointer-coarse{display:inline}}.dropzone-formats{margin-top:var(--space-xs);font-size:.875rem}.files-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-sm)}.file-list{margin:0;padding:0;list-style:none}.file-list li{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border)}.file-text{display:flex;flex:1;flex-direction:column;min-width:0}.file-thumb{object-fit:contain;flex-shrink:0;align-self:flex-start;width:3.5rem;height:3.5rem;border-radius:.5rem;background:var(--color-border)}.file-gain{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--space-sm);margin-block:var(--space-xs)}.file-bar{flex:1 1 10rem;height:.5rem;overflow:hidden;border-radius:var(--radius-pill);background:var(--color-border)}.file-bar>span{--bar-color: var(--color-accent);display:block;height:100%;border-radius:inherit;background:var(--bar-color)}.file-bar>.is-kept{--bar-color: var(--color-text-muted)}.file-bar>.is-estimate{background:repeating-linear-gradient(-45deg,var(--bar-color) 0 .25rem,transparent .25rem .5rem);box-shadow:inset 0 0 0 1px var(--bar-color)}.file-sizes{min-width:8.5rem;margin-left:auto;color:var(--color-text-muted);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.file-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 var(--space-md);color:var(--color-text-muted)}.file-percent{color:var(--color-text);font-weight:600;font-variant-numeric:tabular-nums}.file-remove{flex-shrink:0;width:2.75rem;height:2.75rem;padding:0;border:1px solid transparent;border-radius:50%;color:var(--color-text-muted);background:transparent;font-size:1.25rem;line-height:1;cursor:pointer}.file-remove:hover:not(:disabled){border-color:var(--color-border);color:var(--color-error)}.file-remove:disabled{opacity:.4;cursor:not-allowed}.file-name{overflow-wrap:anywhere}.file-done{margin-right:var(--space-xs);color:var(--color-accent);font-weight:700}.file-info{color:var(--color-text-muted);font-variant-numeric:tabular-nums}.file-info.is-error,.message.is-error{color:var(--color-error)}.file-info.is-warning{color:var(--color-text)}.file-info.is-warning:before{content:"\26a0  ";content:"\26a0  " / "Avertissement : ";color:var(--color-accent)}.message{margin:0 0 var(--space-sm)}.progress-text{margin:0;color:var(--color-text-muted);overflow-wrap:anywhere}.progress-text:empty{display:none}.file-actions{display:flex;flex-wrap:wrap;gap:0 var(--space-md)}.link-button{min-height:2.75rem;padding:0;border:0;color:var(--color-accent);background:none;font:inherit;font-size:.875rem;text-decoration:underline;text-underline-offset:.15em;cursor:pointer}.link-button:hover{text-decoration-thickness:2px}.message:empty{display:none}.files-overview{display:grid;gap:var(--space-sm);margin-bottom:var(--space-md);padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg)}progress{width:100%}#summary{font-weight:600}#summary .file-meta{color:var(--color-text)}#summary .file-sizes{font-weight:400}#summary.is-loading{display:flex;align-items:center;gap:var(--space-sm);color:var(--color-text-muted)}#summary.is-loading:before{content:"";width:1em;height:1em;flex-shrink:0;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){#summary.is-loading:before{animation-duration:2.4s}.pill,.more summary:before{transition:none}}.button,.button-secondary{min-height:2.75rem;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-pill);cursor:pointer}.actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.button{border:0;color:var(--color-accent-text);background:var(--color-accent);font-weight:600}.button:hover:not(:disabled){filter:brightness(.9)}.button-secondary:hover:not(:disabled){background:var(--color-dropzone-bg)}.button:disabled{color:var(--color-text-muted);background:var(--color-border);cursor:not-allowed}.button-secondary:disabled{opacity:.5;cursor:not-allowed}.button-secondary{border:1px solid var(--color-border);color:var(--color-text);background:transparent}.compare{width:min(56rem,calc(100% - 2rem));max-width:none;max-height:calc(100% - 2rem);padding:0;border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);background:var(--color-surface);box-shadow:var(--shadow)}.compare::backdrop{background:#0009}.compare-content{display:grid;gap:var(--space-sm);padding:var(--space-md)}.compare-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.compare-header h2{overflow-wrap:anywhere}.compare-content .hint{margin:0}.compare-view{--split: 50%;position:relative;justify-self:center;max-width:100%;line-height:0}.compare-view canvas{max-width:100%;border:1px solid var(--color-border)}.compare-view #compare-before{position:absolute;inset:0 auto auto 0;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.compare-view:after{content:"";position:absolute;inset:0 auto 0 var(--split);width:2px;margin-left:-1px;background:var(--color-surface);box-shadow:0 0 0 1px #0000004d}.compare-slider{display:flex;align-items:center;gap:var(--space-sm);color:var(--color-text-muted);font-size:.875rem}.compare-slider input{flex:1;min-height:2.75rem}.editor{width:min(72rem,calc(100% - 2rem));height:calc(100% - 2rem);max-width:none;max-height:none;padding:0;border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);background:var(--color-surface);box-shadow:var(--shadow)}.editor::backdrop{background:#0009}.editor-content{display:grid;grid-template-rows:auto auto 1fr auto;gap:var(--space-sm);height:100%;padding:var(--space-md)}.editor-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.editor-header h2{margin:0}.editor-toolbar{display:grid;gap:var(--space-xs)}.editor-toolbar .hint,.editor-toolbar .file-info{margin:0}.editor-docs{min-height:0;overflow-y:auto;padding-block:var(--space-sm);border-block:1px solid var(--color-border)}.editor-doc+.editor-doc{margin-top:var(--space-md)}.editor-doc h3{margin:0 0 var(--space-sm);font-size:1rem;overflow-wrap:anywhere}.editor-doc-meta{color:var(--color-text-muted);font-size:.875rem;font-weight:400}.editor-notes{display:grid;margin:0 0 var(--space-sm);padding:0;list-style:none}.pages{display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:var(--space-sm);margin:0;padding:0;list-style:none}.page{display:grid;gap:var(--space-xs);min-width:0;padding:var(--space-xs);border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface);cursor:grab;user-select:none;-webkit-touch-callout:none}.page:hover{border-color:var(--color-text-muted)}.page-thumb{position:relative;display:grid;place-items:center;height:7rem;overflow:hidden;border-radius:.375rem;background:var(--color-bg)}.page-thumb canvas,.page-ghost canvas{max-width:7rem;max-height:7rem;box-shadow:0 0 0 1px var(--color-border);transform:rotate(var(--rotation, 0deg));transition:transform .2s}.page.is-disabled canvas{opacity:.35}.page.is-disabled .page-thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(to top right,transparent calc(50% - 1.5px),var(--color-error) calc(50% - 1.5px),var(--color-error) calc(50% + 1.5px),transparent calc(50% + 1.5px))}.page-label{overflow:hidden;color:var(--color-text-muted);font-size:.8125rem;text-align:center;text-overflow:ellipsis;white-space:nowrap}.page.is-disabled .page-label{text-decoration:line-through}.page-bar{display:flex;justify-content:center;gap:var(--space-sm)}.page-bar button{display:grid;place-items:center;width:2.75rem;height:2.75rem;padding:0;border:1px solid transparent;border-radius:50%;color:var(--color-text-muted);background:transparent;font-size:1.25rem;line-height:1;cursor:pointer}.page-bar button:hover{border-color:var(--color-border);color:var(--color-text)}.page-bar svg{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.page-toggle:hover{color:var(--color-error)}.page-toggle.is-restore,.page-toggle.is-restore:hover{border-color:currentColor;color:var(--color-accent)}.page.is-dragging{outline:2px dashed var(--color-accent);outline-offset:2px;opacity:.5}.page-ghost{position:fixed;inset:0 auto auto 0;z-index:1;padding:var(--space-xs);border-radius:.5rem;background:var(--color-surface);box-shadow:var(--shadow);line-height:0;pointer-events:none;transform:translate(-50%,-50%);cursor:grabbing}.editor-footer{display:grid;gap:var(--space-sm)}.editor-footer .message{margin:0}@media(prefers-reduced-motion:reduce){.page-thumb canvas,.page-ghost canvas{transition:none}}.site-footer{max-width:var(--max-width);margin-inline:auto;padding:0 var(--space-md) var(--space-lg);color:var(--color-text-muted);font-size:.875rem}.site-footer p{margin:0 0 var(--space-xs)}
