.tm-duplicate-line-remover{width:100%}.tm-duplicate-line-remover .tw-primary{padding:0;border-right:none}.tm-duplicate-line-remover .tw-tab-actions{flex:1;min-width:0;padding-left:24px}.tm-duplicate-line-remover .tool-tabs{padding:0;border-bottom:none;width:100%}.tm-duplicate-line-remover .tw-controls{display:flex;flex-direction:column;gap:16px}.tm-duplicate-line-remover .tw-below .dup-removed{border-top:none}.tool-tabs{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 16px 0 24px;border-bottom:1px solid var(--color-border)}.tool-tablist{display:flex}.tool-tabs-actions{display:flex;align-items:center;gap:14px}.tool-tab{display:flex;align-items:center;min-height:44px;margin-right:24px;padding:14px 0;border:0;border-bottom:2px solid transparent;background:none;font:inherit;font-size:var(--fs-body-sm, .875rem);font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:color .15s,border-color .15s}.tool-tab:hover{color:var(--color-text)}.tool-tab[aria-selected=true]{color:var(--color-accent);border-bottom-color:var(--color-accent)}.tool-tab:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.kbd-hint{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-caption, .75rem);color:var(--color-text-muted);white-space:nowrap}.kbd-hint .kbd-sep{opacity:.4;margin:0 1px}.kbd-hint kbd{font-family:DM Mono,Cascadia Code,Fira Code,monospace;font-size:11px;line-height:1;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);padding:3px 6px;border-radius:5px;min-width:18px;text-align:center}@media(max-width:680px){.kbd-hint{display:none}}.dup-fsbtn{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 11px;border:1px solid var(--color-border);border-radius:8px;background:transparent;font-family:inherit;font-size:var(--fs-body-sm, .875rem);font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:all .15s}.dup-fsbtn:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-dim)}.dup-fsbtn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.dup-fsbtn .dup-fs-exit-ico,.dup-fsbtn[aria-pressed=true] .dup-fs-enter-ico{display:none}.dup-fsbtn[aria-pressed=true] .dup-fs-exit-ico{display:inline-flex;align-items:center}.dup-body{padding:22px 24px;display:flex;flex-direction:column;gap:16px;min-width:0}.dup-boxes{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch}@media(max-width:760px){.dup-boxes{grid-template-columns:1fr}}.dup-col{display:flex;flex-direction:column;gap:8px;min-width:0}.dup-field-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:24px}.dup-label{font-size:var(--fs-caption, .75rem);font-weight:500;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted)}.dup-count{font-family:DM Mono,Cascadia Code,Fira Code,Consolas,monospace;font-size:var(--fs-caption, .75rem);font-weight:500;color:var(--color-accent);background:var(--color-accent-dim);border:1px solid var(--color-accent);padding:2px 9px;border-radius:100px;white-space:nowrap}.dup-input,.dup-output{width:100%;flex:1 1 auto;min-height:300px;resize:vertical;font-family:DM Mono,Cascadia Code,Fira Code,Consolas,monospace;font-size:var(--fs-body-sm, .875rem);line-height:1.6;color:var(--color-text);border-radius:10px;padding:14px 15px;transition:border-color .15s,box-shadow .15s,opacity .18s ease}.dup-input{background:var(--color-code-bg);border:1px solid var(--color-border)}.dup-input:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-dim)}.dup-input::placeholder{color:var(--color-text-muted)}.dup-input.dup-dragover{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-dim)}.dup-output{background:var(--color-accent-dim);border:1px solid var(--color-accent)}.dup-output:focus-visible{outline:2px solid var(--color-accent);outline-offset:-1px}.dup-output.dup-empty{color:var(--color-text-muted);font-style:italic}.dup-rowbtns{display:flex;flex-wrap:wrap;gap:8px;min-height:36px}.dup-minibtn{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:7px 12px;border:1px solid var(--color-border);border-radius:8px;background:transparent;font-family:inherit;font-size:var(--fs-body-sm, .875rem);font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:all .15s}.dup-minibtn:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-dim)}.dup-minibtn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.dup-minibtn svg{width:14px;height:14px}.dup-rowbtns .btn{min-height:36px;padding:8px 14px}.dup-rowbtns .btn svg{width:15px;height:15px}.dup-rowbtns .btn[disabled]{opacity:.5;cursor:not-allowed}.dup-fileerr{display:none;align-items:flex-start;gap:8px;font-size:var(--fs-caption, .75rem);line-height:1.5;color:#b91c1c;background:#fef2f2;border:1px solid #FECACA;border-radius:8px;padding:9px 11px}[data-theme=dark] .dup-fileerr{color:#fca5a5;background:#2a1212;border-color:#5c1a1a}.dup-fileerr.show{display:flex}.dup-optbar{display:flex;align-items:center;justify-content:space-between;gap:14px 18px;flex-wrap:wrap;padding:12px 14px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-card-bg, var(--color-surface))}.dup-optgroup{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap}.dup-opt{display:inline-flex;align-items:center;gap:9px;cursor:pointer}.dup-opt-label{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-body-sm, .875rem);font-weight:500;color:var(--color-text);white-space:nowrap}.dup-help-dot{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;flex-shrink:0;border-radius:50%;border:1px solid var(--color-border);color:var(--color-text-muted);font-size:10px;font-weight:500;cursor:help}.dup-switch{flex-shrink:0;width:42px;height:25px;min-height:25px;border-radius:100px;border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;position:relative;transition:background .18s,border-color .18s;padding:0}.dup-switch-knob{position:absolute;top:2px;left:2px;width:19px;height:19px;border-radius:50%;background:var(--color-text-muted);transition:transform .18s,background .18s}.dup-switch[aria-checked=true]{background:var(--color-accent);border-color:var(--color-accent)}.dup-switch[aria-checked=true] .dup-switch-knob{transform:translate(17px);background:#fff}.dup-switch:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.dup-run{flex-shrink:0}.dup-stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--color-border);border-radius:10px;overflow:hidden;background:var(--color-code-bg)}.dup-stat{padding:12px 14px;border-right:1px solid var(--color-border);display:flex;flex-direction:column;gap:3px}.dup-stat:last-child{border-right:none}.dup-stat-num{font-family:DM Mono,Cascadia Code,Consolas,monospace;font-size:var(--fs-heading-md, 1.125rem);font-weight:500;color:var(--color-text);line-height:1.1}.dup-stat-label{font-size:var(--fs-caption, .75rem);color:var(--color-text-muted);line-height:1.2}.dup-stat.dup-stat-reduction{background:var(--color-accent-dim)}.dup-stat.dup-stat-reduction .dup-stat-num{color:var(--color-accent)}@container (max-width: 460px){.dup-stats{grid-template-columns:1fr 1fr}.dup-stat:nth-child(2){border-right:none}.dup-stat:nth-child(1),.dup-stat:nth-child(2){border-bottom:1px solid var(--color-border)}}.dup-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.dup-reveal{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:6px 12px;border:1px solid var(--color-border);border-radius:8px;background:transparent;font-family:inherit;font-size:var(--fs-body-sm, .875rem);font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:all .15s}.dup-reveal:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-dim)}.dup-reveal:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.dup-reveal svg{transition:transform .18s}.dup-reveal[aria-expanded=true] svg{transform:rotate(180deg)}.dup-note{display:inline-flex;align-items:center;gap:7px;font-size:var(--fs-caption, .75rem);color:var(--color-text-muted);line-height:1.5}.dup-note svg{width:13px;height:13px;color:var(--color-accent);flex-shrink:0}.dup-removed{display:none;border-top:1px solid var(--color-border);padding:20px 24px 22px}.dup-removed.show{display:block}.dup-removed-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.dup-removed-title{font-size:var(--fs-body-sm, .875rem);font-weight:500;color:var(--color-text);display:flex;align-items:center;gap:8px}.dup-removed-badge{font-family:DM Mono,Cascadia Code,Consolas,monospace;font-size:var(--fs-caption, .75rem);font-weight:500;color:#b91c1c;background:#fef2f2;border:1px solid #FECACA;padding:2px 9px;border-radius:100px}[data-theme=dark] .dup-removed-badge{color:#fca5a5;background:#2a1212;border-color:#5c1a1a}.dup-removed-close{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;border:1px solid var(--color-border);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:all .15s}.dup-removed-close:hover{color:var(--color-text);border-color:var(--color-text-muted)}.dup-removed-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.dup-removed-close svg{width:14px;height:14px}.dup-removed-empty{font-size:var(--fs-body-sm, .875rem);color:var(--color-text-muted);font-style:italic;text-align:center;padding:8px}.dup-removed-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;list-style:none;margin:0;padding:0;max-height:280px;overflow-y:auto}@media(max-width:640px){.dup-removed-list{grid-template-columns:1fr}}.dup-removed-row{display:flex;align-items:baseline;gap:10px;padding:9px 12px;background:var(--color-code-bg);border:1px solid var(--color-border);border-left:3px solid #DC2626;border-radius:8px;font-size:var(--fs-body-sm, .875rem)}.dup-removed-loc{font-family:DM Mono,Cascadia Code,Consolas,monospace;font-size:var(--fs-caption, .75rem);font-weight:500;color:var(--color-text-muted);white-space:nowrap;flex-shrink:0}.dup-removed-loc b{color:var(--color-accent);font-weight:500}.dup-removed-text{font-family:DM Mono,Cascadia Code,Consolas,monospace;color:var(--color-text);word-break:break-all;min-width:0}body.dup-fs-lock{overflow:hidden}body.dup-fs-lock .tm-duplicate-line-remover .tw-tabs{position:fixed;top:0;left:0;right:0;z-index:201;background:var(--color-card-bg, var(--color-surface));border-bottom:1px solid var(--color-border)}#dup-app.dup-fs{position:fixed;inset:48px 0 0;z-index:200;height:calc(100dvh - 48px);display:flex;flex-direction:column;background:var(--color-card-bg, var(--color-surface));overflow:auto}#dup-app.dup-fs .dup-body{flex:1 1 auto;min-height:0;overflow:auto}#dup-app.dup-fs .dup-boxes{flex:1 1 auto;min-height:0}#dup-app.dup-fs .dup-input,#dup-app.dup-fs .dup-output{min-height:0;flex:1 1 auto}@container (min-width: 900px){.tm-duplicate-line-remover .tw-below .dup-removed-list{grid-template-columns:repeat(3,minmax(0,1fr))}}.dup-toast{position:fixed;bottom:32px;left:50%;transform:translate(-50%) translateY(12px);background:var(--color-accent);color:#fff;padding:9px 20px;border-radius:9px;font-size:var(--fs-body-sm, .875rem);font-weight:500;box-shadow:0 4px 16px #0000002e;pointer-events:none;opacity:0;transition:opacity .18s ease,transform .18s ease;z-index:1000}.dup-toast.show{opacity:1;transform:translate(-50%) translateY(0)}@media(max-width:640px){.dup-body{padding:16px}.dup-removed{padding:18px 16px 20px}}
