.letter-duplicates-tool{--duplicates-primary: var(--primary-dark,#123b69);--duplicates-action: var(--outil-action,#8a4f0f);--duplicates-action-dark: var(--outil-action-dark,#744006);--duplicates-border: var(--outil-bord,#e3cf75);--duplicates-surface: var(--outil-surface,#fff7d7);color: var(--duplicates-primary)}.letter-duplicates-tool *{box-sizing: border-box}.letter-duplicates-intro{margin: 0 0 1rem;color: var(--duplicates-primary);font-size: 1rem;line-height: 1.55}.letter-duplicates-grid{display: grid;grid-template-columns: minmax(0,1fr) minmax(19rem,0.92fr);gap: 1rem}.letter-duplicates-card{min-width: 0;border: 1px solid var(--duplicates-border);border-radius: 10px;background: var(--duplicates-surface);display: flex;flex-direction: column;overflow: hidden}.letter-duplicates-card-head,.letter-duplicates-card-bottom{background: var(--duplicates-surface);padding: 0.65rem 0.75rem}.letter-duplicates-card-head{border-bottom: 1px solid var(--duplicates-border);display: flex;align-items: center;justify-content: space-between;gap: 0.75rem}.letter-duplicates-card-head-centered{justify-content: center}.letter-duplicates-title{margin: 0;color: var(--duplicates-action-dark);font-size: 1.08rem;font-weight: 900;line-height: 1.2}.letter-duplicates-head-actions,.letter-duplicates-actions{display: flex;flex: 0 0 auto;flex-wrap: wrap;gap: 0.45rem;justify-content: flex-end;min-width: 0}.letter-duplicates-textarea{display: block;width: 100%;min-height: 16rem;flex: 1 1 auto;border: 0;border-radius: 0;background: #fff;color: var(--duplicates-primary);font: inherit;font-weight: 650;line-height: 1.5;padding: 0.85rem;resize: none}.letter-duplicates-textarea:focus{outline: 2px solid color-mix(in srgb,var(--duplicates-action) 38%,transparent);outline-offset: -2px}.letter-duplicates-card-bottom{border-top: 1px solid var(--duplicates-border);display: flex;align-items: center;justify-content: space-between;gap: 0.75rem}.letter-duplicates-status{flex: 1 1 auto;min-width: 8rem;margin: 0;color: var(--duplicates-primary);font-weight: 800;line-height: 1.35}.letter-duplicates-result-body{display: grid;gap: 0.75rem;background: #fff;padding: 0.85rem;flex: 1 1 auto}.letter-duplicates-summary,.letter-duplicates-panel{border: 1px solid var(--duplicates-border);border-radius: 10px;background: var(--duplicates-surface);padding: 0.75rem}.letter-duplicates-summary{color: var(--duplicates-primary);font-weight: 850;line-height: 1.4;text-align: center}.letter-duplicates-panel{display: grid;gap: 0.55rem}.letter-duplicates-panel h3{margin: 0;color: var(--duplicates-action-dark);font-size: 0.98rem;font-weight: 900;line-height: 1.2}.letter-duplicates-list{display: flex;flex-wrap: wrap;gap: 0.35rem;min-height: 2.25rem}.letter-duplicates-chip{display: inline-flex;align-items: center;justify-content: center;min-width: 2rem;height: 2rem;border: 1px solid var(--duplicates-border);border-radius: 8px;background: #fff;color: var(--duplicates-primary);font-weight: 900}.letter-duplicates-chip.is-present{background: color-mix(in srgb,var(--duplicates-primary) 12%,#fff);border-color: color-mix(in srgb,var(--duplicates-primary) 32%,var(--duplicates-border))}.letter-duplicates-chip.is-missing{background: color-mix(in srgb,var(--duplicates-surface) 78%,#fff);color: var(--duplicates-action-dark)}.letter-duplicates-empty{display: block;width: 100%;text-align: center;color: var(--duplicates-primary);font-weight: 800}.letter-duplicates-result-bottom{display: grid;grid-template-columns: minmax(0,1fr) minmax(10.5rem,13rem);gap: 0.75rem;align-items: center}.letter-duplicates-result-bottom .letter-duplicates-actions{display: flex;flex-direction: column;flex: 0 0 auto;width: 100%}.letter-duplicates-result-bottom .letter-duplicates-button{width: 100%;justify-content: center}.letter-duplicates-button,.letter-duplicates-file-button{min-width: 0;min-height: 2.55rem;border: 1px solid var(--duplicates-border);border-radius: 8px;background: #fff;color: var(--duplicates-action-dark);display: inline-flex;align-items: center;justify-content: center;gap: 0.45rem;padding: 0.55rem 0.75rem;cursor: pointer;font: inherit;font-size: 0.95rem;font-weight: 900;line-height: 1.15;text-align: center;text-decoration: none}.letter-duplicates-button-main{background: var(--duplicates-action);border-color: var(--duplicates-action);color: #fff}.letter-duplicates-button:hover,.letter-duplicates-button:focus-visible,.letter-duplicates-file-button:hover,.letter-duplicates-file-button:focus-within{background: color-mix(in srgb,var(--duplicates-border) 28%,#fff);outline: 0}.letter-duplicates-button-main:hover,.letter-duplicates-button-main:focus-visible{background: var(--duplicates-action-dark);border-color: var(--duplicates-action-dark);color: #fff}.letter-duplicates-button:active,.letter-duplicates-file-button:active{transform: translateY(1px) scale(0.99)}.letter-duplicates-button:disabled{cursor: not-allowed;opacity: 0.58;transform: none}.letter-duplicates-file-button input{position: absolute;width: 1px;height: 1px;opacity: 0;pointer-events: none}.letter-duplicates-action-icon{flex: 0 0 auto}.letter-duplicates-copy-proxy{position: fixed;left: -9999px;top: 0}.letter-info-grid{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 0.85rem;margin: 1rem 0}.letter-info-card,.letter-info-note{border: 1px solid var(--outil-bord,#e3cf75);border-radius: 8px;background: var(--outil-surface,#fff7d7);padding: 0.85rem}.letter-info-card h3,.letter-info-note h3{margin: 0 0 0.45rem;color: var(--outil-action-dark,#744006)}.letter-info-card p,.letter-info-note p{margin: 0}.letter-info-table{width: 100%;border-collapse: collapse;margin: 0.85rem 0 1rem;border: 1px solid var(--outil-bord,#e3cf75)}.letter-info-table th,.letter-info-table td{border: 1px solid var(--outil-bord,#e3cf75);padding: 0.65rem;vertical-align: top}.letter-info-table th{background: var(--outil-surface,#fff7d7);color: var(--outil-action-dark,#744006);font-weight: 900}.letter-info-table td{background: #fff}.letter-info-link{color: var(--outil-action-dark,#744006);font-weight: 900;text-decoration: underline;cursor: pointer}@media (max-width: 760px){.letter-info-grid{grid-template-columns: 1fr}}@media (max-width: 860px){.letter-duplicates-grid{grid-template-columns: 1fr}}@media (max-width: 560px){.letter-duplicates-card-head,.letter-duplicates-card-bottom{align-items: stretch;flex-direction: column}.letter-duplicates-head-actions,.letter-duplicates-actions{justify-content: flex-start}.letter-duplicates-result-bottom{grid-template-columns: 1fr}.letter-duplicates-result-bottom .letter-duplicates-actions{width: 100%}}.letter-duplicates-panels{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 0.75rem}.letter-duplicates-panel h3,.letter-duplicates-table-wrap h3{text-align: center}.letter-duplicates-panel .letter-duplicates-list{justify-content: center}.letter-duplicates-summary{text-align: left}.letter-duplicates-summary-title{margin: 0 0 0.45rem;color: var(--duplicates-primary);font-weight: 900}.letter-duplicates-summary ul{margin: 0;padding-left: 1.25rem}.letter-duplicates-summary li + li{margin-top: 0.2rem}.letter-duplicates-chip-count{color: var(--duplicates-action-dark);font-size: 0.78rem;font-weight: 900}.letter-duplicates-table-wrap{border: 1px solid var(--duplicates-border);border-radius: 10px;background: var(--duplicates-surface);overflow: hidden}.letter-duplicates-table-wrap h3{margin: 0;padding: 0.7rem 0.75rem;color: var(--duplicates-action-dark);font-size: 0.98rem;font-weight: 900}.letter-duplicates-table{width: 100%;border-collapse: collapse;background: #fff}.letter-duplicates-table th,.letter-duplicates-table td{border-top: 1px solid var(--duplicates-border);padding: 0.55rem 0.75rem;text-align: center;vertical-align: middle}.letter-duplicates-table th{color: var(--duplicates-action-dark);background: var(--duplicates-surface)}.letter-duplicates-table td:first-child{color: var(--duplicates-primary);font-weight: 900}@media (max-width: 760px){.letter-duplicates-panels{grid-template-columns: 1fr}}