.RegexTool-module__V0gPPa__root{gap:var(--space-5);flex-direction:column;display:flex}.RegexTool-module__V0gPPa__patternRow{align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--transition-fast);display:flex}.RegexTool-module__V0gPPa__patternRow:focus-within{border-color:var(--primary)}.RegexTool-module__V0gPPa__slash{font-family:var(--font-mono);color:var(--primary-text);flex-shrink:0;font-size:1.25rem;line-height:2rem}.RegexTool-module__V0gPPa__patternWrap{flex:1;min-width:0}.RegexTool-module__V0gPPa__patternInput{width:100%;font-family:var(--font-mono);color:var(--text);caret-color:var(--primary);padding:var(--space-1) 0;background:0 0;border:none;outline:none;font-size:1rem;line-height:1.6}.RegexTool-module__V0gPPa__patternInput::placeholder{color:var(--text-subtle)}.RegexTool-module__V0gPPa__patternError{color:var(--error)}.RegexTool-module__V0gPPa__errorMsg{color:var(--error);margin-top:var(--space-1);font-size:.8rem;font-family:var(--font-mono)}.RegexTool-module__V0gPPa__flagsDisplay{font-family:var(--font-mono);color:var(--text-muted);padding:0 var(--space-1);flex-shrink:0;font-size:.9rem;line-height:2rem}.RegexTool-module__V0gPPa__flagsRow{gap:var(--space-2);flex-wrap:wrap;display:flex}.RegexTool-module__V0gPPa__flagBtn{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);background:var(--bg-alt);border:1.5px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);display:flex}.RegexTool-module__V0gPPa__flagBtn:hover{border-color:var(--primary)}.RegexTool-module__V0gPPa__flagBtn code{font-family:var(--font-mono);color:var(--text-muted);font-size:.875rem}.RegexTool-module__V0gPPa__flagBtn span{color:var(--text-muted);font-size:.8rem}.RegexTool-module__V0gPPa__flagOn{background:var(--primary-light);border-color:var(--primary)}.RegexTool-module__V0gPPa__flagOn code{color:var(--primary-text);font-weight:600}.RegexTool-module__V0gPPa__flagOn span{color:var(--primary-text)}.RegexTool-module__V0gPPa__examplesRow{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.RegexTool-module__V0gPPa__exLabel{color:var(--text-subtle);font-size:.8rem;font-weight:500}.RegexTool-module__V0gPPa__exBtn{padding:var(--space-1) var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-full);cursor:pointer;color:var(--text-muted);transition:all var(--transition-fast);font-size:.8rem}.RegexTool-module__V0gPPa__exBtn:hover{background:var(--primary-light);color:var(--primary-text);border-color:var(--primary)}.RegexTool-module__V0gPPa__testSection{gap:var(--space-2);flex-direction:column;display:flex}.RegexTool-module__V0gPPa__testHeader{justify-content:space-between;align-items:center;display:flex}.RegexTool-module__V0gPPa__label{color:var(--text);font-size:.875rem;font-weight:600}.RegexTool-module__V0gPPa__matchBadge{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:.8rem;font-weight:600}.RegexTool-module__V0gPPa__matchFound{background:var(--primary-light);color:var(--primary-text)}.RegexTool-module__V0gPPa__matchNone{background:var(--bg-alt);color:var(--text-muted)}.RegexTool-module__V0gPPa__editorWrap{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--transition-fast);position:relative;overflow:hidden}.RegexTool-module__V0gPPa__editorWrap:focus-within{border-color:var(--primary)}.RegexTool-module__V0gPPa__highlightLayer,.RegexTool-module__V0gPPa__textarea{font-family:var(--font-mono);padding:var(--space-4);white-space:pre-wrap;word-break:break-all;min-height:130px;font-size:.9rem;line-height:1.65}.RegexTool-module__V0gPPa__highlightLayer{color:#0000;pointer-events:none;position:absolute;inset:0;overflow:hidden}.RegexTool-module__V0gPPa__textarea{width:100%;color:var(--text);resize:vertical;caret-color:var(--primary);z-index:1;background:0 0;border:none;outline:none;position:relative}.RegexTool-module__V0gPPa__highlight{border-bottom:2px solid var(--primary);color:#0000;background:#6c63ff40;border-radius:2px}[data-theme=dark] .RegexTool-module__V0gPPa__highlight{background:#a78bfa33}.RegexTool-module__V0gPPa__matchList{gap:var(--space-2);flex-direction:column;display:flex}.RegexTool-module__V0gPPa__matchListHeader{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:600}.RegexTool-module__V0gPPa__matchItem{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);border-left:3px solid var(--primary);flex-wrap:wrap;display:flex}.RegexTool-module__V0gPPa__matchIdx{color:var(--text-subtle);min-width:28px;font-size:.75rem;font-weight:700}.RegexTool-module__V0gPPa__matchVal{font-family:var(--font-mono);color:var(--text);flex:1;min-width:0;font-size:.875rem}.RegexTool-module__V0gPPa__matchPos{color:var(--text-subtle);font-size:.75rem;font-family:var(--font-mono);margin-left:auto}.RegexTool-module__V0gPPa__groups{gap:var(--space-2);width:100%;margin-top:var(--space-1);flex-wrap:wrap;display:flex}.RegexTool-module__V0gPPa__group{color:var(--text-muted);font-size:.75rem}.RegexTool-module__V0gPPa__group code{color:var(--primary-text);font-family:var(--font-mono)}
