[data-tool="bacon-cipher"]{--bacon-cipher-action: var(--outil-action);--bacon-cipher-action-hover: var(--outil-action-hover);--bacon-cipher-action-text: var(--outil-action-texte);--bacon-cipher-border: var(--outil-bord);--bacon-cipher-surface: var(--outil-surface);--bacon-cipher-surface-hover: var(--outil-surface-hover);--bacon-cipher-text: var(--outil-texte);--bacon-cipher-strong: var(--outil-fonce);display: grid;gap: 1rem}[data-tool="bacon-cipher"] *,[data-tool="bacon-cipher"] *::before,[data-tool="bacon-cipher"] *::after{box-sizing: border-box}.bacon-cipher-intro,.bacon-cipher-field-status{margin: 0;color: var(--bacon-cipher-text);line-height: 1.55}.bacon-cipher-main-grid{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 1rem;align-items: stretch}.bacon-cipher-editor,.bacon-cipher-result-panel,.bacon-cipher-settings{min-width: 0}.bacon-cipher-editor,.bacon-cipher-result-panel{display: grid;grid-template-rows: auto minmax(0,1fr) auto;border: 1px solid var(--bacon-cipher-border);border-radius: 10px;background: #fff;overflow: hidden}.bacon-cipher-panel-top,.bacon-cipher-panel-bottom{display: flex;flex-wrap: wrap;gap: 0.55rem;align-items: center;justify-content: space-between;background: var(--bacon-cipher-surface);padding: 0.55rem}.bacon-cipher-panel-top{border-bottom: 1px solid var(--bacon-cipher-border)}.bacon-cipher-panel-bottom{border-top: 1px solid var(--bacon-cipher-border)}.bacon-cipher-editor h2,.bacon-cipher-result-panel h2,.bacon-cipher-settings h2{margin: 0;color: var(--bacon-cipher-strong);font-size: 1.06rem;font-weight: 900;line-height: 1.2}.bacon-cipher-settings h2{grid-column: 1 / -1;text-align: center}.bacon-cipher-action-group{display: flex;flex-wrap: wrap;gap: 0.35rem;align-items: center;justify-content: flex-end}.bacon-cipher-action{min-height: 2.35rem;border: 1px solid var(--bacon-cipher-border);border-radius: 8px;background: #fff;color: var(--bacon-cipher-strong);cursor: pointer;display: inline-flex;align-items: center;justify-content: center;gap: 0.35rem;font: inherit;font-size: 0.9rem;font-weight: 850;line-height: 1.15;padding: 0.38rem 0.52rem;text-align: center;transition: transform 0.12s ease,border-color 0.16s ease,background-color 0.16s ease,color 0.16s ease,box-shadow 0.16s ease,opacity 0.16s ease}.bacon-cipher-action-primary{border-color: var(--bacon-cipher-action);background: var(--bacon-cipher-action);color: var(--bacon-cipher-action-text)}.bacon-cipher-action-icon{width: 18px;height: 18px;flex: 0 0 auto}.bacon-cipher-action:not(:disabled):hover,.bacon-cipher-action:not(:disabled):focus-visible{border-color: var(--bacon-cipher-action-hover);color: var(--bacon-cipher-action-hover);background: var(--bacon-cipher-surface-hover);box-shadow: 0 0 0 3px color-mix(in srgb,var(--bacon-cipher-action) 15%,transparent);outline: 0}.bacon-cipher-action-primary:not(:disabled):hover,.bacon-cipher-action-primary:not(:disabled):focus-visible{background: var(--bacon-cipher-action-hover);color: var(--bacon-cipher-action-text)}.bacon-cipher-action:active{transform: translateY(1px)}.bacon-cipher-action:disabled{cursor: not-allowed;opacity: 0.58;transform: none;box-shadow: none}.bacon-cipher-textarea{width: 100%;min-width: 0;border: 0;border-radius: 0;box-shadow: none;outline-offset: -3px;background: #fff;color: var(--bacon-cipher-strong);font: inherit;font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size: 0.98rem;font-weight: 780;line-height: 1.55;padding: 0.85rem;resize: none;appearance: none}.bacon-cipher-source-textarea,.bacon-cipher-result-textarea{min-height: 17rem}.bacon-cipher-result-textarea,.bacon-cipher-textarea[readonly]{background: var(--bacon-cipher-surface);cursor: default}.bacon-cipher-textarea::placeholder,.bacon-cipher-custom-separator input::placeholder{color: color-mix(in srgb,var(--bacon-cipher-text) 72%,#fff)}.bacon-cipher-textarea:focus,.bacon-cipher-action:focus-visible,.bacon-cipher-selector-button:focus-visible,.bacon-cipher-custom-separator input:focus{outline: 3px solid color-mix(in srgb,var(--outil-focus) 30%,transparent);outline-offset: 2px}.bacon-cipher-field-status{min-height: 1.25rem;color: var(--bacon-cipher-strong);font-size: 0.9rem;font-weight: 850}.bacon-cipher-settings{display: grid;grid-column: 1 / -1;grid-template-columns: repeat(2,minmax(0,1fr));gap: 0.85rem;align-content: start;border: 1px solid var(--bacon-cipher-border);border-radius: 10px;background: #fff;padding: 0.85rem}.bacon-cipher-setting-row{display: grid;gap: 0.55rem;align-content: start;border: 1px solid var(--bacon-cipher-border);border-radius: 10px;background: var(--bacon-cipher-surface);padding: 0.75rem}.bacon-cipher-setting-row[data-bacon-separator-row]{grid-column: 1 / -1}.bacon-cipher-setting-row>p{margin: 0;color: var(--bacon-cipher-strong);font-weight: 900;text-align: center}.bacon-cipher-selector{display: grid;gap: 0.25rem;border: 1px solid var(--bacon-cipher-border);border-radius: 14px;background: #fff;padding: 0.25rem}.bacon-cipher-selector-two{grid-template-columns: repeat(2,minmax(0,1fr))}.bacon-cipher-selector-four{grid-template-columns: repeat(4,minmax(0,1fr))}.bacon-cipher-selector-button{min-width: 0;min-height: 2.55rem;border: 0;border-radius: 10px;background: transparent;color: var(--bacon-cipher-strong);cursor: pointer;font: inherit;font-weight: 900;line-height: 1.12;padding: 0.5rem 0.45rem;transition: transform 0.12s ease,background-color 0.16s ease,color 0.16s ease}.bacon-cipher-selector-button:not(.is-active):hover,.bacon-cipher-selector-button:not(.is-active):focus-visible{background: var(--bacon-cipher-surface-hover);color: var(--bacon-cipher-action-hover)}.bacon-cipher-selector-button.is-active{background: var(--bacon-cipher-action);color: var(--bacon-cipher-action-text)}.bacon-cipher-selector-button:active{transform: translateY(1px)}.bacon-cipher-custom-separator{display: flex;flex-wrap: wrap;gap: 0.6rem;align-items: center;justify-content: space-between;border: 1px solid var(--bacon-cipher-border);border-radius: 10px;background: var(--bacon-cipher-surface);color: var(--bacon-cipher-strong);font-weight: 850;padding: 0.55rem}.bacon-cipher-custom-separator input{width: 6.5rem;min-height: 2.35rem;border: 1px solid var(--bacon-cipher-border);border-radius: 8px;background: #fff;color: var(--bacon-cipher-strong);font: inherit;font-weight: 850;padding: 0.35rem 0.5rem;text-align: center}.bacon-cipher-custom-separator input:disabled{background: color-mix(in srgb,#fff 70%,var(--bacon-cipher-border));color: color-mix(in srgb,var(--bacon-cipher-strong) 62%,#fff);opacity: 1;cursor: not-allowed}.bacon-cipher-copy-proxy{position: fixed;top: -9999px;left: -9999px;width: 1px;height: 1px;opacity: 0}.bacon-cipher-info-grid{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 0.9rem;margin: 1.15rem 0}.bacon-cipher-info-card{border: 2px solid var(--bacon-cipher-border,var(--outil-bord));border-radius: 10px;background: #fff;box-shadow: 0 8px 22px rgb(var(--outil-ombre-rgb) / 0.06);padding: 0.95rem}.bacon-cipher-info-card h3{color: var(--bacon-cipher-strong,var(--outil-fonce));font-size: 1rem;font-weight: 900;line-height: 1.2;margin: 0 0 0.55rem;text-align: center}.bacon-cipher-info-card p{color: var(--bacon-cipher-text,var(--outil-texte));line-height: 1.58;margin: 0}.bacon-cipher-info-code{color: var(--bacon-cipher-strong,var(--outil-fonce));font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-weight: 900}.bacon-cipher-info-table{width: 100%;border-collapse: collapse;margin: 1rem 0;overflow-wrap: anywhere;border: 2px solid var(--bacon-cipher-border,var(--outil-bord));background: #fff}.bacon-cipher-info-table caption{color: var(--bacon-cipher-strong,var(--outil-fonce));font-weight: 900;margin-bottom: 0.55rem;text-align: left}.bacon-cipher-info-table th,.bacon-cipher-info-table td{border: 1px solid var(--bacon-cipher-border,var(--outil-bord));padding: 0.62rem 0.55rem;text-align: center;vertical-align: middle}.bacon-cipher-info-table th{background: var(--bacon-cipher-surface,var(--outil-surface));color: var(--bacon-cipher-strong,var(--outil-fonce));font-weight: 900}.bacon-cipher-info-table tbody tr:nth-child(even){background: color-mix(in srgb,var(--bacon-cipher-surface,var(--outil-surface)) 58%,#fff)}.bacon-cipher-info-table td:nth-child(odd){background: var(--bacon-cipher-surface,var(--outil-surface));color: var(--bacon-cipher-strong,var(--outil-fonce));font-weight: 900}@media (max-width: 980px){.bacon-cipher-main-grid,.bacon-cipher-info-grid,.bacon-cipher-settings{grid-template-columns: 1fr}}@media (max-width: 680px){.bacon-cipher-selector-four{grid-template-columns: repeat(2,minmax(0,1fr))}.bacon-cipher-info-table{font-size: 0.92rem}.bacon-cipher-info-table th,.bacon-cipher-info-table td{padding: 0.45rem 0.35rem}}@media (max-width: 560px){.bacon-cipher-panel-top,.bacon-cipher-panel-bottom{display: grid;justify-items: stretch}.bacon-cipher-action-group,.bacon-cipher-action{width: 100%}}@media (prefers-reduced-motion: reduce){[data-tool="bacon-cipher"] *,[data-tool="bacon-cipher"] *::before,[data-tool="bacon-cipher"] *::after{animation-duration: 0.01ms;transition-duration: 0.01ms}}