<commit_before><!DOCTYPE HTML>
<title>Password Hasher</title>
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
body {
	font-family: sans-serif;
	display: flex;
	flex-flow: column;
	align-items: center;
}

#hash-word {
	font-family: monospace;
}

fieldset {
	border: none;
	background: #eee;
	margin-top: .5em;
	display: flex;
	flex-flow: column;
}

legend {
	background: #eee;
	padding: 1px;
}

fieldset .buttons {
	display: flex;
	padding-top: .5em;
}

fieldset .buttons > button {
	flex: 1 auto;
}

fieldset > ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

fieldset.size > ul {
	-webkit-columns: 2;
	-moz-columns: 2;
	columns: 2;
}
</style>

<form>
	<fieldset>
		<legend>Site Tag</legend>
		<input type=text id="site-tag" autofocus>
	</fieldset>
	<fieldset>
		<legend>Master Key</legend>
		<input id="master-key" type="password">
	</fieldset>
	<fieldset>
		<legend>Hash Word</legend>
		<input type=text id="hash-word">
		<div class='buttons'>
			<button type=button onclick='generatePassword(12)'>Short</button>
			<button type=button onclick='generatePassword(26)'>Long</button>
		</div>
	</fieldset>
	<details>
		<summary>More Options</summary>
		<p><button type=button onclick='generatePassword(8)'>Unsafe 8 Character</button></p>
		<p><button type=button onclick='generateCustomPassword()'>Generate Custom</button></p>
		<fieldset>
			<legend>Requirements</legend>
			<ul>
				<li><label><input type="checkbox" id="digit" checked> Digits</label></li>
				<li><label><input type="checkbox" id="punctuation"> Punctuation</label></li>
				<li><label><input type="checkbox" id="mixedCase" checked> Mixed Case</label></li>
			</ul>
		</fieldset>
		<fieldset>
			<legend>Restrictions</legend>
			<ul>
				<li><label><input type="checkbox" id="noSpecial"> No Special</label></li>
				<li><label><input type="checkbox" id="digitsOnly"> Digits Only</label></li>
			</ul>
		</fieldset>
		<fieldset class='size'>
			<legend>Size</legend>
			<ul>
				<li><label><input type=radio name=size value=4> 4</label></li>
				<li><label><input type=radio name=size value=6> 6</label></li>
				<li><label><input type=radio name=size value=8 checked> 8</label></li>
				<li><label><input type=radio name=size value=10> 10</label></li>
				<li><label><input type=radio name=size value=12> 12</label></li>
				<li><label><input type=radio name=size value=14> 14</label></li>
				<li><label><input type=radio name=size value=16> 16</label></li>
				<li><label><input type=radio name=size value=18> 18</label></li>
				<li><label><input type=radio name=size value=20> 20</label></li><commit_msg>Update CSS and custom defaults<commit_after>
<!DOCTYPE HTML>
<title>Password Hasher</title>
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
:root {
	--bg: white;
	--fg: black;
	--accent-bg: #eee;
	--button-bg: #ddd;
	--input-bg: white;
}
@media (prefers-color-scheme: dark) {
	:root {
		--bg: black;
		--fg: #ccc;
		--accent-bg: #111;
		--button-bg: #222;
		--input-bg: #222;
	}
}
body {
	font-family: sans-serif;
	display: flex;
	flex-flow: column;
	align-items: center;
	background: var(--bg);
	color: var(--fg);
	color-scheme: light dark;
}

#hash-word {
	font-family: monospace;
}

input[type=text], input[type=password], input:not([type]) {
	width: 175px;
}

fieldset {
	border: none;
	background: var(--accent-bg);
	margin-top: .5em;
	display: flex;
	flex-flow: column;
}

legend {
	background: var(--accent-bg);
	padding: 1px;
}

fieldset .buttons {
	display: flex;
	padding-top: .5em;
}

fieldset .buttons > button {
	flex: 1 auto;
}

fieldset > ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

fieldset.size > ul {
	-webkit-columns: 2;
	-moz-columns: 2;
	columns: 2;
}

@supports not (color-scheme: dark) {
	input {
		background: var(--input-bg);
		color: var(--fg);
		border-color: var(--accent-bg);
	}
	button {
		background: var(--button-bg);
		color: var(--fg);
		border-color: var(--accent-bg);
	}
}
</style>

<form>
	<fieldset>
		<legend>Site Tag</legend>
		<input type=text id="site-tag" autofocus>
	</fieldset>
	<fieldset>
		<legend>Master Key</legend>
		<input id="master-key" type="password">
	</fieldset>
	<fieldset>
		<legend>Hash Word</legend>
		<input type=text id="hash-word">
		<div class='buttons'>
			<button type=button onclick='generatePassword(12)'>Short</button>
			<button type=button onclick='generatePassword(26)'>Long</button>
		</div>
	</fieldset>
	<details>
		<summary>More Options</summary>
		<p><button type=button onclick='generatePassword(8)'>Unsafe 8 Character</button></p>
		<p><button type=button onclick='generateCustomPassword()'>Generate Custom</button></p>
		<fieldset>
			<legend>Requirements</legend>
			<ul>
				<li><label><input type="checkbox" id="digit" checked> Digits</label></li>
				<li><label><input type="checkbox" id="punctuation" checked> Punctuation</label></li>
				<li><label><input type="checkbox" id="mixedCase" checked> Mixed Case</label></li>
			</ul>
		</fieldset>
		<fieldset>
			<legend>Restrictions</legend>
			<ul>
				<li><label><input type="checkbox" id="noSpecial"> No Special</label></li>
				<li><label><input type="checkbox" id="digitsOnly"> Digits Only</label></li>
			</ul>
		</fieldset>
		<fieldset class='size'>
			<legend>Size</legend>
			<ul>
				<li><label><input type=radio name=size value=4> 4</label></li>
				<li><label><input type=radio name=size value=6> 6</label></li>
				<li><label><input type=radio name=size value=8> 8</label></li>
				<li><label><input type=radio name=size value=10> 10</label></li>
				<li><label><input type=radio name=size value=12 checked> 12</label></li>
				<li><label><input type=radio name=size value=14> 14</label></li>
				<li><label><input type=radio name=size value=16> 16</label></li>
				<li><label><input type=radio name=size value=18> 18</label></li>
				<li><label><input type=radio name=size value=20> 20</label></li>
{'fraction_non_alphanumeric': 0.19824827353882432, 'fraction_numerical': 0.017854135085059796, 'mean_word_length': 4.586077140169332, 'pattern_counts': {'":': 0, '<': 255, '<?xml version=': 0, '>': 261, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7073028', 'n_tokens_mistral': 2478, 'n_tokens_neox': 2193, 'n_words': 454}