summaryrefslogtreecommitdiffstats
path: root/wp-content/plugins/akismet/_inc
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 07:56:49 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 07:56:49 +0000
commita415c29efee45520ae252d2aa28f1083a521cd7b (patch)
treef4ade4b6668ecc0765de7e1424f7c1427ad433ff /wp-content/plugins/akismet/_inc
parentInitial commit. (diff)
downloadwordpress-a415c29efee45520ae252d2aa28f1083a521cd7b.tar.xz
wordpress-a415c29efee45520ae252d2aa28f1083a521cd7b.zip
Adding upstream version 6.4.3+dfsg1.upstream/6.4.3+dfsg1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'wp-content/plugins/akismet/_inc')
-rw-r--r--wp-content/plugins/akismet/_inc/akismet-admin.css378
-rw-r--r--wp-content/plugins/akismet/_inc/akismet-admin.js7
-rw-r--r--wp-content/plugins/akismet/_inc/akismet-frontend.js376
-rw-r--r--wp-content/plugins/akismet/_inc/akismet.css648
-rw-r--r--wp-content/plugins/akismet/_inc/akismet.js421
-rw-r--r--wp-content/plugins/akismet/_inc/fonts/inter.css67
-rw-r--r--wp-content/plugins/akismet/_inc/img/akismet-refresh-logo.svg1
-rw-r--r--wp-content/plugins/akismet/_inc/img/akismet-refresh-logo@2x.pngbin0 -> 2783 bytes
-rw-r--r--wp-content/plugins/akismet/_inc/img/arrow-left.svg1
-rw-r--r--wp-content/plugins/akismet/_inc/img/icon-external.svg1
-rw-r--r--wp-content/plugins/akismet/_inc/img/logo-a-2x.pngbin0 -> 904 bytes
-rw-r--r--wp-content/plugins/akismet/_inc/img/logo-full-2x.pngbin0 -> 5052 bytes
-rw-r--r--wp-content/plugins/akismet/_inc/rtl/akismet-admin-rtl.css380
-rw-r--r--wp-content/plugins/akismet/_inc/rtl/akismet-rtl.css649
14 files changed, 2929 insertions, 0 deletions
diff --git a/wp-content/plugins/akismet/_inc/akismet-admin.css b/wp-content/plugins/akismet/_inc/akismet-admin.css
new file mode 100644
index 0000000..27d2f89
--- /dev/null
+++ b/wp-content/plugins/akismet/_inc/akismet-admin.css
@@ -0,0 +1,378 @@
+#akismet-plugin-container {
+ background-color: var(--akismet-color-light-grey);
+ font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen-Sans', 'Ubuntu', 'Cantarell', 'Helvetica Neue', sans-serif;
+ --akismet-color-charcoal: #272635;
+ --akismet-color-light-grey: #f6f7f7;
+ --akismet-color-mid-grey: #a7aaad;
+ --akismet-color-dark-grey: #646970;
+ --akismet-color-grey-80: #2c3338;
+ --akismet-color-grey-100: #101517;
+ --akismet-color-white: #fff;
+ --akismet-color-mid-green: #357b49;
+ --akismet-color-mid-red: #e82c3f;
+ --akismet-color-light-blue: #256eff;
+ --akismet-color-notice-light-green: #dbf0e1;
+ --akismet-color-notice-dark-green: #69bf82;
+ --akismet-color-notice-light-red: #ffdbde;
+ --akismet-color-notice-dark-red: #ff6676;
+}
+
+#akismet-plugin-container a {
+ color: var(--akismet-color-mid-green);
+}
+
+#akismet-plugin-container button:focus-visible,
+#akismet-plugin-container input:focus-visible {
+ border: 0;
+ box-shadow: none;
+ outline: 2px solid var(--akismet-color-light-blue);
+}
+
+.akismet-masthead {
+ box-shadow: none;
+}
+
+.akismet-masthead__logo {
+ margin: 20px 0;
+}
+
+.akismet-section-header {
+ box-shadow: none;
+ margin-bottom: 0;
+}
+
+.akismet-section-header__label {
+ color: var(--akismet-color-charcoal);
+ font-weight: 600;
+}
+
+.akismet-button, .akismet-button:hover {
+ background-color: var(--akismet-color-mid-green);
+ border: 0;
+ color: #fff;
+}
+
+/* Need this specificity to override the existing header rule */
+.akismet-new-snapshot h3.akismet-new-snapshot__header {
+ background: none;
+ font-size: 13px;
+ color: var(--akismet-color-charcoal);
+ text-align: left;
+ text-transform: none;
+}
+
+.akismet-new-snapshot .akismet-new-snapshot__number {
+ color: var(--akismet-color-charcoal);
+ letter-spacing: -1px;
+ text-align: left;
+}
+
+.akismet-new-snapshot li.akismet-new-snapshot__item {
+ color: var(--akismet-color-dark-grey);
+ font-size: 13px;
+ text-align: left;
+ text-transform: none;
+}
+
+.akismet-masthead__logo-link {
+ min-height: 50px;
+}
+
+.akismet-masthead__back-link-container {
+ margin-top: 16px;
+ margin-bottom: 2px;
+}
+
+/* Need this specificity to override the existing link rule */
+#akismet-plugin-container a.akismet-masthead__back-link {
+ background-image: url(img/arrow-left.svg);
+ background-position: left;
+ background-repeat: no-repeat;
+ background-size: 16px;
+ color: var(--akismet-color-charcoal);
+ font-weight: 400;
+ padding-left: 20px;
+ text-decoration: none;
+}
+
+#akismet-plugin-container a.akismet-masthead__back-link:hover {
+ text-decoration: underline;
+}
+
+.akismet-new-snapshot__item {
+ border-top: 1px solid var(--akismet-color-light-grey);
+ border-left: 1px solid var(--akismet-color-light-grey);
+ padding: 1em;
+}
+
+.akismet-new-snapshot li:first-child {
+ border-left: none;
+}
+
+.akismet-new-snapshot__list {
+ display: flex;
+ margin-bottom: 0;
+}
+
+.akismet-new-snapshot__item {
+ flex: 1 0 33.33%;
+ margin-bottom: 0;
+ padding-left: 1.5em;
+ padding-right: 1.5em;
+}
+
+.akismet-new-snapshot__chart {
+ padding: 1em;
+}
+
+.akismet-box {
+ border: 0;
+}
+
+.akismet-box,
+.akismet-card {
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06), 0 0 2px rgba(0, 0, 0, 0.16);
+ border-radius: 8px;
+ overflow: hidden;
+}
+
+.akismet-card {
+ margin: 32px auto 0 auto;
+}
+
+.akismet-lower {
+ padding-top: 0;
+}
+
+.akismet-lower .inside {
+ padding: 0;
+}
+
+.akismet-section-header__label {
+ margin: 0;
+}
+
+.akismet-settings__row {
+ border-bottom: 1px solid var(--akismet-color-light-grey);
+ display: block;
+ padding: 1em 1.5em;
+}
+
+.akismet-settings__row-input {
+ margin-left: auto;
+}
+
+.akismet-settings__row-title {
+ font-weight: 500;
+ font-size: 1em;
+ margin: 0;
+ margin-bottom: 1em;
+}
+
+.akismet-settings__row-description {
+ margin-top: 0.5em;
+}
+
+.akismet-card-actions {
+ display: flex;
+ justify-content: flex-end;
+ padding: 1em;
+}
+
+.akismet-card-actions__secondary-action {
+ align-self: center;
+ margin-right: auto;
+}
+
+.akismet-card-actions__secondary-action a[target="_blank"]::after {
+ background: url('img/icon-external.svg') no-repeat;
+ background-size: contain;
+ content: "";
+ display: inline-block;
+ height: 16px;
+ margin-left: 5px;
+ vertical-align: middle;
+ width: 16px;
+}
+
+.akismet-settings__row label {
+ padding-bottom: 1em;
+}
+
+.akismet-settings__row-note {
+ font-size: 0.9em;
+ margin-top: 0.4em;
+}
+
+.akismet-settings__row input[type="checkbox"],
+.akismet-settings__row input[type="radio"] {
+ accent-color: var(--akismet-color-mid-green);
+ box-shadow: none;
+ flex-shrink: 0;
+ margin: 2px 0 0 0;
+}
+
+.akismet-settings__row input[type="checkbox"] {
+ margin-top: 1px;
+ vertical-align: top;
+ -webkit-appearance: checkbox;
+}
+
+.akismet-settings__row input[type="radio"] {
+ -webkit-appearance: radio;
+}
+
+/* Fix up misbehaving wp-admin styles in Chrome (from forms and colors stylesheets) */
+.akismet-settings__row input[type="checkbox"]:checked:before {
+ content: '';
+}
+
+.akismet-settings__row input[type="radio"]:checked:before {
+ background: none;
+}
+
+.akismet-settings__row input[type="checkbox"]:checked:hover,
+.akismet-settings__row input[type="radio"]:checked:hover {
+ accent-color: var(--akismet-color-mid-green);
+}
+
+.akismet-button:disabled {
+ background-color: var(--akismet-color-mid-grey);
+ color: var(--akismet-color-white);
+ cursor: arrow;
+}
+
+.akismet-awaiting-stats,
+.akismet-account {
+ padding: 0 1rem 1rem 1rem;
+ margin: 0;
+}
+
+.akismet-account {
+ padding-bottom: 0;
+}
+
+.akismet-account th {
+ font-weight: 500;
+ padding-right: 1em;
+}
+
+.akismet-account th, .akismet-account td {
+ padding-bottom: 1em;
+}
+
+.akismet-settings__row-input-label {
+ align-items: center;
+ display: flex;
+}
+
+.akismet-settings__row-label-text {
+ padding-left: 0.5em;
+ margin-top: 2px;
+}
+
+.akismet-alert {
+ border-left: 8px solid;
+ border-radius: 8px;
+ margin: 20px 0;
+ padding: 0.2em 1em;
+}
+
+.akismet-alert__heading {
+ font-size: 1em;
+}
+
+.akismet-alert.is-good {
+ background-color: var(--akismet-color-notice-light-green);
+ border-left-color: var(--akismet-color-notice-dark-green);
+}
+
+.akismet-alert.is-neutral {
+ background-color: var(--akismet-color-white);
+ border-left-color: var(--akismet-color-dark-grey);
+}
+
+.akismet-alert.is-bad {
+ background-color: var(--akismet-color-notice-light-red);
+ border-left-color: var(--akismet-color-notice-dark-red);
+}
+
+#akismet-plugin-container .akismet-alert.is-good a,
+#akismet-plugin-container .akismet-alert.is-bad a {
+ /* For better contrast - green isn't great */
+ color: var(--akismet-color-grey-80);
+}
+
+/* Setup - API key input */
+.akismet-enter-api-key-box {
+ margin: 1.5rem 0;
+}
+
+.akismet-enter-api-key-box__reveal {
+ background: none;
+ border: 0;
+ color: var(--akismet-color-mid-green);
+ cursor: pointer;
+ text-decoration: underline;
+}
+
+.akismet-enter-api-key-box__form-wrapper {
+ display: none;
+ margin-top: 1.5rem;
+}
+
+.akismet-enter-api-key-box__input-wrapper {
+ box-sizing: border-box;
+ display: flex;
+ flex-wrap: nowrap;
+ padding: 0 1.5rem;
+ width: 100%;
+}
+
+.akismet-enter-api-key-box__key-input {
+ flex-grow: 1;
+ margin-right: 1rem;
+}
+
+h3.akismet-enter-api-key-box__header {
+ padding-top: 0;
+ padding-bottom: 1em;
+ text-align: left;
+}
+
+@media screen and (max-width: 782px) {
+ .akismet-new-snapshot__list {
+ display: block;
+ }
+
+ .akismet-new-snapshot__number {
+ float: right;
+ font-size: 20px;
+ font-weight: 500;
+ margin-top: -16px;
+ }
+
+ .akismet-new-snapshot__header {
+ font-size: 14px;
+ font-weight: 500;
+ }
+
+ .akismet-new-snapshot__text {
+ font-size: 12px;
+ }
+
+ .akismet-settings__row input[type="checkbox"],
+ .akismet-settings__row input[type="radio"] {
+ height: 24px;
+ width: 24px;
+ }
+
+ .akismet-settings__row-label-text {
+ padding-left: 0.8em;
+ }
+
+ .akismet-settings__row input[type="checkbox"],
+ .akismet-settings__row input[type="radio"] {
+ margin-top: 0;
+ }
+} \ No newline at end of file
diff --git a/wp-content/plugins/akismet/_inc/akismet-admin.js b/wp-content/plugins/akismet/_inc/akismet-admin.js
new file mode 100644
index 0000000..4a3f9fc
--- /dev/null
+++ b/wp-content/plugins/akismet/_inc/akismet-admin.js
@@ -0,0 +1,7 @@
+document.addEventListener( 'DOMContentLoaded', function() {
+ // Prevent aggressive iframe caching in Firefox
+ var statsIframe = document.getElementById( 'stats-iframe' );
+ if ( statsIframe ) {
+ statsIframe.contentWindow.location.href = statsIframe.src;
+ }
+} ); \ No newline at end of file
diff --git a/wp-content/plugins/akismet/_inc/akismet-frontend.js b/wp-content/plugins/akismet/_inc/akismet-frontend.js
new file mode 100644
index 0000000..40ebfe6
--- /dev/null
+++ b/wp-content/plugins/akismet/_inc/akismet-frontend.js
@@ -0,0 +1,376 @@
+/**
+ * Observe how the user enters content into the comment form in order to determine whether it's a bot or not.
+ *
+ * Note that no actual input is being saved here, only counts and timings between events.
+ */
+
+( function() {
+ // Passive event listeners are guaranteed to never call e.preventDefault(),
+ // but they're not supported in all browsers. Use this feature detection
+ // to determine whether they're available for use.
+ var supportsPassive = false;
+
+ try {
+ var opts = Object.defineProperty( {}, 'passive', {
+ get : function() {
+ supportsPassive = true;
+ }
+ } );
+
+ window.addEventListener( 'testPassive', null, opts );
+ window.removeEventListener( 'testPassive', null, opts );
+ } catch ( e ) {}
+
+ function init() {
+ var input_begin = '';
+
+ var keydowns = {};
+ var lastKeyup = null;
+ var lastKeydown = null;
+ var keypresses = [];
+
+ var modifierKeys = [];
+ var correctionKeys = [];
+
+ var lastMouseup = null;
+ var lastMousedown = null;
+ var mouseclicks = [];
+
+ var mousemoveTimer = null;
+ var lastMousemoveX = null;
+ var lastMousemoveY = null;
+ var mousemoveStart = null;
+ var mousemoves = [];
+
+ var touchmoveCountTimer = null;
+ var touchmoveCount = 0;
+
+ var lastTouchEnd = null;
+ var lastTouchStart = null;
+ var touchEvents = [];
+
+ var scrollCountTimer = null;
+ var scrollCount = 0;
+
+ var correctionKeyCodes = [ 'Backspace', 'Delete', 'ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight', 'Home', 'End', 'PageUp', 'PageDown' ];
+ var modifierKeyCodes = [ 'Shift', 'CapsLock' ];
+
+ var forms = document.querySelectorAll( 'form[method=post]' );
+
+ for ( var i = 0; i < forms.length; i++ ) {
+ var form = forms[i];
+
+ var formAction = form.getAttribute( 'action' );
+
+ // Ignore forms that POST directly to other domains; these could be things like payment forms.
+ if ( formAction ) {
+ // Check that the form is posting to an external URL, not a path.
+ if ( formAction.indexOf( 'http://' ) == 0 || formAction.indexOf( 'https://' ) == 0 ) {
+ if ( formAction.indexOf( 'http://' + window.location.hostname + '/' ) != 0 && formAction.indexOf( 'https://' + window.location.hostname + '/' ) != 0 ) {
+ continue;
+ }
+ }
+ }
+
+ form.addEventListener( 'submit', function () {
+ var ak_bkp = prepare_timestamp_array_for_request( keypresses );
+ var ak_bmc = prepare_timestamp_array_for_request( mouseclicks );
+ var ak_bte = prepare_timestamp_array_for_request( touchEvents );
+ var ak_bmm = prepare_timestamp_array_for_request( mousemoves );
+
+ var input_fields = {
+ // When did the user begin entering any input?
+ 'bib': input_begin,
+
+ // When was the form submitted?
+ 'bfs': Date.now(),
+
+ // How many keypresses did they make?
+ 'bkpc': keypresses.length,
+
+ // How quickly did they press a sample of keys, and how long between them?
+ 'bkp': ak_bkp,
+
+ // How quickly did they click the mouse, and how long between clicks?
+ 'bmc': ak_bmc,
+
+ // How many mouseclicks did they make?
+ 'bmcc': mouseclicks.length,
+
+ // When did they press modifier keys (like Shift or Capslock)?
+ 'bmk': modifierKeys.join( ';' ),
+
+ // When did they correct themselves? e.g., press Backspace, or use the arrow keys to move the cursor back
+ 'bck': correctionKeys.join( ';' ),
+
+ // How many times did they move the mouse?
+ 'bmmc': mousemoves.length,
+
+ // How many times did they move around using a touchscreen?
+ 'btmc': touchmoveCount,
+
+ // How many times did they scroll?
+ 'bsc': scrollCount,
+
+ // How quickly did they perform touch events, and how long between them?
+ 'bte': ak_bte,
+
+ // How many touch events were there?
+ 'btec' : touchEvents.length,
+
+ // How quickly did they move the mouse, and how long between moves?
+ 'bmm' : ak_bmm
+ };
+
+ var akismet_field_prefix = 'ak_';
+
+ if ( this.getElementsByClassName ) {
+ // Check to see if we've used an alternate field name prefix. We store this as an attribute of the container around some of the Akismet fields.
+ var possible_akismet_containers = this.getElementsByClassName( 'akismet-fields-container' );
+
+ for ( var containerIndex = 0; containerIndex < possible_akismet_containers.length; containerIndex++ ) {
+ var container = possible_akismet_containers.item( containerIndex );
+
+ if ( container.getAttribute( 'data-prefix' ) ) {
+ akismet_field_prefix = container.getAttribute( 'data-prefix' );
+ break;
+ }
+ }
+ }
+
+ for ( var field_name in input_fields ) {
+ var field = document.createElement( 'input' );
+ field.setAttribute( 'type', 'hidden' );
+ field.setAttribute( 'name', akismet_field_prefix + field_name );
+ field.setAttribute( 'value', input_fields[ field_name ] );
+ this.appendChild( field );
+ }
+ }, supportsPassive ? { passive: true } : false );
+
+ form.addEventListener( 'keydown', function ( e ) {
+ // If you hold a key down, some browsers send multiple keydown events in a row.
+ // Ignore any keydown events for a key that hasn't come back up yet.
+ if ( e.key in keydowns ) {
+ return;
+ }
+
+ var keydownTime = ( new Date() ).getTime();
+ keydowns[ e.key ] = [ keydownTime ];
+
+ if ( ! input_begin ) {
+ input_begin = keydownTime;
+ }
+
+ // In some situations, we don't want to record an interval since the last keypress -- for example,
+ // on the first keypress, or on a keypress after focus has changed to another element. Normally,
+ // we want to record the time between the last keyup and this keydown. But if they press a
+ // key while already pressing a key, we want to record the time between the two keydowns.
+
+ var lastKeyEvent = Math.max( lastKeydown, lastKeyup );
+
+ if ( lastKeyEvent ) {
+ keydowns[ e.key ].push( keydownTime - lastKeyEvent );
+ }
+
+ lastKeydown = keydownTime;
+ }, supportsPassive ? { passive: true } : false );
+
+ form.addEventListener( 'keyup', function ( e ) {
+ if ( ! ( e.key in keydowns ) ) {
+ // This key was pressed before this script was loaded, or a mouseclick happened during the keypress, or...
+ return;
+ }
+
+ var keyupTime = ( new Date() ).getTime();
+
+ if ( 'TEXTAREA' === e.target.nodeName || 'INPUT' === e.target.nodeName ) {
+ if ( -1 !== modifierKeyCodes.indexOf( e.key ) ) {
+ modifierKeys.push( keypresses.length - 1 );
+ } else if ( -1 !== correctionKeyCodes.indexOf( e.key ) ) {
+ correctionKeys.push( keypresses.length - 1 );
+ } else {
+ // ^ Don't record timings for keys like Shift or backspace, since they
+ // typically get held down for longer than regular typing.
+
+ var keydownTime = keydowns[ e.key ][0];
+
+ var keypress = [];
+
+ // Keypress duration.
+ keypress.push( keyupTime - keydownTime );
+
+ // Amount of time between this keypress and the previous keypress.
+ if ( keydowns[ e.key ].length > 1 ) {
+ keypress.push( keydowns[ e.key ][1] );
+ }
+
+ keypresses.push( keypress );
+ }
+ }
+
+ delete keydowns[ e.key ];
+
+ lastKeyup = keyupTime;
+ }, supportsPassive ? { passive: true } : false );
+
+ form.addEventListener( "focusin", function ( e ) {
+ lastKeydown = null;
+ lastKeyup = null;
+ keydowns = {};
+ }, supportsPassive ? { passive: true } : false );
+
+ form.addEventListener( "focusout", function ( e ) {
+ lastKeydown = null;
+ lastKeyup = null;
+ keydowns = {};
+ }, supportsPassive ? { passive: true } : false );
+ }
+
+ document.addEventListener( 'mousedown', function ( e ) {
+ lastMousedown = ( new Date() ).getTime();
+ }, supportsPassive ? { passive: true } : false );
+
+ document.addEventListener( 'mouseup', function ( e ) {
+ if ( ! lastMousedown ) {
+ // If the mousedown happened before this script was loaded, but the mouseup happened after...
+ return;
+ }
+
+ var now = ( new Date() ).getTime();
+
+ var mouseclick = [];
+ mouseclick.push( now - lastMousedown );
+
+ if ( lastMouseup ) {
+ mouseclick.push( lastMousedown - lastMouseup );
+ }
+
+ mouseclicks.push( mouseclick );
+
+ lastMouseup = now;
+
+ // If the mouse has been clicked, don't record this time as an interval between keypresses.
+ lastKeydown = null;
+ lastKeyup = null;
+ keydowns = {};
+ }, supportsPassive ? { passive: true } : false );
+
+ document.addEventListener( 'mousemove', function ( e ) {
+ if ( mousemoveTimer ) {
+ clearTimeout( mousemoveTimer );
+ mousemoveTimer = null;
+ }
+ else {
+ mousemoveStart = ( new Date() ).getTime();
+ lastMousemoveX = e.offsetX;
+ lastMousemoveY = e.offsetY;
+ }
+
+ mousemoveTimer = setTimeout( function ( theEvent, originalMousemoveStart ) {
+ var now = ( new Date() ).getTime() - 500; // To account for the timer delay.
+
+ var mousemove = [];
+ mousemove.push( now - originalMousemoveStart );
+ mousemove.push(
+ Math.round(
+ Math.sqrt(
+ Math.pow( theEvent.offsetX - lastMousemoveX, 2 ) +
+ Math.pow( theEvent.offsetY - lastMousemoveY, 2 )
+ )
+ )
+ );
+
+ if ( mousemove[1] > 0 ) {
+ // If there was no measurable distance, then it wasn't really a move.
+ mousemoves.push( mousemove );
+ }
+
+ mousemoveStart = null;
+ mousemoveTimer = null;
+ }, 500, e, mousemoveStart );
+ }, supportsPassive ? { passive: true } : false );
+
+ document.addEventListener( 'touchmove', function ( e ) {
+ if ( touchmoveCountTimer ) {
+ clearTimeout( touchmoveCountTimer );
+ }
+
+ touchmoveCountTimer = setTimeout( function () {
+ touchmoveCount++;
+ }, 500 );
+ }, supportsPassive ? { passive: true } : false );
+
+ document.addEventListener( 'touchstart', function ( e ) {
+ lastTouchStart = ( new Date() ).getTime();
+ }, supportsPassive ? { passive: true } : false );
+
+ document.addEventListener( 'touchend', function ( e ) {
+ if ( ! lastTouchStart ) {
+ // If the touchstart happened before this script was loaded, but the touchend happened after...
+ return;
+ }
+
+ var now = ( new Date() ).getTime();
+
+ var touchEvent = [];
+ touchEvent.push( now - lastTouchStart );
+
+ if ( lastTouchEnd ) {
+ touchEvent.push( lastTouchStart - lastTouchEnd );
+ }
+
+ touchEvents.push( touchEvent );
+
+ lastTouchEnd = now;
+
+ // Don't record this time as an interval between keypresses.
+ lastKeydown = null;
+ lastKeyup = null;
+ keydowns = {};
+ }, supportsPassive ? { passive: true } : false );
+
+ document.addEventListener( 'scroll', function ( e ) {
+ if ( scrollCountTimer ) {
+ clearTimeout( scrollCountTimer );
+ }
+
+ scrollCountTimer = setTimeout( function () {
+ scrollCount++;
+ }, 500 );
+ }, supportsPassive ? { passive: true } : false );
+ }
+
+ /**
+ * For the timestamp data that is collected, don't send more than `limit` data points in the request.
+ * Choose a random slice and send those.
+ */
+ function prepare_timestamp_array_for_request( a, limit ) {
+ if ( ! limit ) {
+ limit = 100;
+ }
+
+ var rv = '';
+
+ if ( a.length > 0 ) {
+ var random_starting_point = Math.max( 0, Math.floor( Math.random() * a.length - limit ) );
+
+ for ( var i = 0; i < limit && i < a.length; i++ ) {
+ rv += a[ random_starting_point + i ][0];
+
+ if ( a[ random_starting_point + i ].length >= 2 ) {
+ rv += "," + a[ random_starting_point + i ][1];
+ }
+
+ rv += ";";
+ }
+ }
+
+ return rv;
+ }
+
+ if ( document.readyState !== 'loading' ) {
+ init();
+ } else {
+ document.addEventListener( 'DOMContentLoaded', init );
+ }
+})(); \ No newline at end of file
diff --git a/wp-content/plugins/akismet/_inc/akismet.css b/wp-content/plugins/akismet/_inc/akismet.css
new file mode 100644
index 0000000..dbede8f
--- /dev/null
+++ b/wp-content/plugins/akismet/_inc/akismet.css
@@ -0,0 +1,648 @@
+.wp-admin.jetpack_page_akismet-key-config, .wp-admin.settings_page_akismet-key-config {
+ background-color:#f3f6f8;
+}
+
+#submitted-on {
+ position: relative;
+}
+#the-comment-list .author .akismet-user-comment-count {
+ display: inline;
+}
+#the-comment-list .author a span {
+ text-decoration: none;
+ color: #999;
+}
+#the-comment-list .author a span.akismet-span-link {
+ text-decoration: inherit;
+ color: inherit;
+}
+#the-comment-list .akismet_remove_url {
+ margin-left: 3px;
+ color: #999;
+ padding: 2px 3px 2px 0;
+}
+#the-comment-list .akismet_remove_url:hover {
+ color: #A7301F;
+ font-weight: bold;
+ padding: 2px 2px 2px 0;
+}
+#dashboard_recent_comments .akismet-status {
+ display: none;
+}
+.akismet-status {
+ float: right;
+}
+.akismet-status a {
+ color: #AAA;
+ font-style: italic;
+}
+table.comments td.comment p a {
+ text-decoration: underline;
+}
+table.comments td.comment p a:after {
+ content: attr(href);
+ color: #aaa;
+ display: inline-block; /* Show the URL without the link's underline extending under it. */
+ padding: 0 1ex; /* Because it's inline block, we can't just use spaces in the content: attribute to separate it from the link text. */
+}
+.mshot-arrow {
+ width: 0;
+ height: 0;
+ border-top: 10px solid transparent;
+ border-bottom: 10px solid transparent;
+ border-right: 10px solid #5C5C5C;
+ position: absolute;
+ left: -6px;
+ top: 91px;
+}
+.mshot-container {
+ background: #5C5C5C;
+ position: absolute;
+ top: -94px;
+ padding: 7px;
+ width: 450px;
+ height: 338px;
+ z-index: 20000;
+ -moz-border-radius: 6px;
+ border-radius: 6px;
+ -webkit-border-radius: 6px;
+}
+.akismet-mshot {
+ position: absolute;
+ z-index: 100;
+}
+.akismet-mshot .mshot-image {
+ margin: 0;
+ height: 338px;
+ width: 450px;
+}
+.checkforspam {
+ display: inline-block !important;
+}
+
+.checkforspam-spinner {
+ display: inline-block;
+ margin-top: 7px;
+}
+
+.akismet-right {
+ float: right;
+}
+
+.akismet-card .akismet-right {
+ margin: 1em 0;
+}
+
+.akismet-alert-text {
+ color: #dd3d36;
+ font-weight: bold;
+ font-size: 120%;
+ margin-top: .5rem;
+}
+
+.akismet-new-snapshot {
+ margin-top: 1em;
+ text-align: center;
+ background: #fff;
+}
+
+.akismet-new-snapshot h3 {
+ background: #f5f5f5;
+ color: #888;
+ font-size: 11px;
+ margin: 0;
+}
+
+.akismet-new-snapshot ul li {
+ color: #999;
+ font-size: 11px;
+ text-transform: uppercase;
+ box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ -webkit-box-sizing: border-box;
+ -ms-box-sizing: border-box;
+}
+
+.akismet-new-snapshot__number {
+ display: block;
+ font-size: 32px;
+ font-weight: lighter;
+ line-height: 1.5em;
+}
+
+.akismet-settings th:first-child {
+ vertical-align: top;
+ padding-top: 15px;
+}
+
+.akismet-settings th.akismet-api-key {
+ vertical-align: middle;
+ padding-top: 0;
+}
+
+.akismet-settings span.akismet-note{
+ float: left;
+ padding-left: 23px;
+ font-size: 75%;
+ margin-top: -10px;
+}
+
+/**
+ * For the activation notice on the plugins page.
+ */
+
+#akismet_setup_prompt {
+ background: none;
+ border: none;
+ margin: 0;
+ padding: 0;
+ width: 100%;
+}
+
+.akismet_activate {
+ border: 1px solid #4F800D;
+ padding: 5px;
+ margin: 15px 0;
+ background: #83AF24;
+ background-image: -webkit-gradient(linear, 0% 0, 80% 100%, from(#83AF24), to(#4F800D));
+ background-image: -moz-linear-gradient(80% 100% 120deg, #4F800D, #83AF24);
+ -moz-border-radius: 3px;
+ border-radius: 3px;
+ -webkit-border-radius: 3px;
+ position: relative;
+ overflow: hidden;
+}
+
+.akismet_activate .aa_a {
+ position: absolute;
+ top: -5px;
+ right: 10px;
+ font-size: 140px;
+ color: #769F33;
+ font-family: Georgia, "Times New Roman", Times, serif;
+}
+
+.akismet_activate .aa_button {
+ font-weight: bold;
+ border: 1px solid #029DD6;
+ border-top: 1px solid #06B9FD;
+ font-size: 15px;
+ text-align: center;
+ padding: 9px 0 8px 0;
+ color: #FFF;
+ background: #029DD6;
+ background-image: -webkit-gradient(linear, 0% 0, 0% 100%, from(#029DD6), to(#0079B1));
+ background-image: -moz-linear-gradient(0% 100% 90deg, #0079B1, #029DD6);
+ -moz-border-radius: 2px;
+ border-radius: 2px;
+ -webkit-border-radius: 2px;
+ width: 100%;
+ cursor: pointer;
+ margin: 0;
+}
+
+.akismet_activate .aa_button:hover {
+ text-decoration: none !important;
+ border: 1px solid #029DD6;
+ border-bottom: 1px solid #00A8EF;
+ font-size: 15px;
+ text-align: center;
+ padding: 9px 0 8px 0;
+ color: #F0F8FB;
+ background: #0079B1;
+ background-image: -webkit-gradient(linear, 0% 0, 0% 100%, from(#0079B1), to(#0092BF));
+ background-image: -moz-linear-gradient(0% 100% 90deg, #0092BF, #0079B1);
+ -moz-border-radius: 2px;
+ border-radius: 2px;
+ -webkit-border-radius: 2px;
+}
+
+.akismet_activate .aa_button_border {
+ border: 1px solid #006699;
+ -moz-border-radius: 2px;
+ border-radius: 2px;
+ -webkit-border-radius: 2px;
+ background: #029DD6;
+ background-image: -webkit-gradient(linear, 0% 0, 0% 100%, from(#029DD6), to(#0079B1));
+ background-image: -moz-linear-gradient(0% 100% 90deg, #0079B1, #029DD6);
+}
+
+.akismet_activate .aa_button_container {
+ box-sizing: border-box;
+ display: inline-block;
+ background: #DEF1B8;
+ padding: 5px;
+ -moz-border-radius: 2px;
+ border-radius: 2px;
+ -webkit-border-radius: 2px;
+ width: 266px;
+}
+
+.akismet_activate .aa_description {
+ position: absolute;
+ top: 22px;
+ left: 285px;
+ margin-left: 25px;
+ color: #E5F2B1;
+ font-size: 15px;
+}
+
+.akismet_activate .aa_description strong {
+ color: #FFF;
+ font-weight: normal;
+}
+
+@media (max-width: 550px) {
+ .akismet_activate .aa_a {
+ display: none;
+ }
+
+ .akismet_activate .aa_button_container {
+ width: 100%;
+ }
+}
+
+@media (max-width: 782px) {
+ .akismet_activate {
+ min-width: 0;
+ }
+}
+
+@media (max-width: 850px) {
+ #akismet_setup_prompt .aa_description {
+ display: none;
+ }
+
+ .akismet_activate {
+ min-width: 0;
+ }
+}
+
+.jetpack_page_akismet-key-config #wpcontent, .settings_page_akismet-key-config #wpcontent {
+ padding-left: 0;
+}
+
+.akismet-masthead {
+ background-color:#fff;
+ text-align:center;
+ box-shadow:0 1px 0 rgba(200,215,225,0.5),0 1px 2px #e9eff3
+}
+@media (max-width: 45rem) {
+ .akismet-masthead {
+ padding:0 1.25rem
+ }
+}
+
+.akismet-masthead__inside-container {
+ padding:.375rem 0;
+ margin:0 auto;
+ width:100%;
+ max-width:45rem;
+ text-align: left;
+}
+.akismet-masthead__logo-container {
+ padding:.3125rem 0 0
+}
+.akismet-masthead__logo-link {
+ display:inline-block;
+ outline:none;
+ vertical-align:middle
+}
+.akismet-masthead__logo-link:focus {
+ line-height:0;
+ box-shadow:0 0 0 2px #78dcfa
+}
+.akismet-masthead__logo-link+code {
+ margin:0 10px;
+ padding:5px 9px;
+ border-radius:2px;
+ background:#e6ecf1;
+ color:#647a88
+}
+.akismet-masthead__links {
+ display:-ms-flexbox;
+ display:flex;
+ -ms-flex-flow:row wrap;
+ flex-flow:row wrap;
+ -ms-flex:2 50%;
+ flex:2 50%;
+ -ms-flex-pack:end;
+ justify-content:flex-end;
+ margin:0
+}
+@media (max-width: 480px) {
+ .akismet-masthead__links {
+ padding-right:.625rem
+ }
+}
+.akismet-masthead__link-li {
+ margin:0;
+ padding:0
+}
+.akismet-masthead__link {
+ font-style:normal;
+ color:#0087be;
+ padding:.625rem;
+ display:inline-block
+}
+.akismet-masthead__link:visited {
+ color:#0087be
+}
+.akismet-masthead__link:active,.akismet-masthead__link:hover {
+ color:#00aadc
+}
+.akismet-masthead__link:hover {
+ text-decoration:underline
+}
+.akismet-masthead__link .dashicons {
+ display:none
+}
+@media (max-width: 480px) {
+ .akismet-masthead__link:hover,.akismet-masthead__link:active {
+ text-decoration:none
+ }
+ .akismet-masthead__link .dashicons {
+ display:block;
+ font-size:1.75rem
+ }
+ .akismet-masthead__link span+span {
+ display:none
+ }
+}
+.akismet-masthead__link-li:last-of-type .akismet-masthead__link {
+ padding-right:0
+}
+
+.akismet-lower {
+ margin: 0 auto;
+ text-align: left;
+ max-width: 45rem;
+ padding: 1.5rem;
+}
+
+.akismet-lower .notice {
+ margin-bottom: 2rem;
+}
+
+.akismet-card {
+ margin-top: 1rem;
+ margin-bottom: 0;
+ position: relative;
+ box-sizing: border-box;
+ background: white;
+}
+
+.akismet-card:after, .akismet-card .inside:after, .akismet-masthead__logo-container:after {
+ content: ".";
+ display: block;
+ height: 0;
+ clear: both;
+ visibility: hidden;
+}
+
+.akismet-card .inside {
+ padding: 1.5rem;
+ padding-top: 1rem;
+}
+
+.akismet-card .akismet-card-actions {
+ margin-top: 1rem;
+}
+
+.jetpack_page_akismet-key-config .update-nag, .settings_page_akismet-key-config .update-nag {
+ display: none;
+}
+
+.akismet-masthead .akismet-right {
+ line-height: 2.125rem;
+ font-size: 0.9rem;
+}
+
+.akismet-box {
+ box-sizing: border-box;
+ background: white;
+ border: 1px solid rgba(200, 215, 225, 0.5);
+}
+
+.akismet-box h2, .akismet-box h3 {
+ padding: 1.5rem 1.5rem .5rem 1.5rem;
+ margin: 0;
+}
+
+.akismet-box p {
+ padding: 0 1.5rem 1.5rem 1.5rem;
+ margin: 0;
+}
+
+.akismet-jetpack-email {
+ font-style: oblique;
+}
+
+.akismet-jetpack-gravatar {
+ padding: 0 0 0 1.5rem;
+ float: left;
+ margin-right: 1rem;
+ width: 54px;
+ height: 54px;
+}
+
+.akismet-box p:after {
+ content: ".";
+ display: block;
+ height: 0;
+ clear: both;
+ visibility: hidden;
+}
+
+.akismet-box .akismet-right {
+ padding-right: 1.5rem;
+}
+
+.akismet-boxes .akismet-box {
+ margin-bottom: 0;
+ padding: 0;
+ margin-top: -1px;
+}
+
+.akismet-boxes .akismet-box:last-child {
+ margin-bottom: 1.5rem;
+}
+
+.akismet-boxes .akismet-box:first-child {
+ margin-top: 1.5rem;
+}
+
+.akismet-box-header {
+ max-width: 700px;
+ margin: 0 auto 40px auto;
+ line-height: 1.5;
+}
+
+.akismet-box-header h2 {
+ margin: 1.5rem 10% 0;
+ font-size: 1.375rem;
+ font-weight: 700;
+ color: #000;
+}
+
+.akismet-box .centered {
+ text-align: center;
+}
+
+.akismet-box .akismet-toggles {
+ margin: 3rem 0;
+}
+
+.akismet-box .akismet-ak-connect, .akismet-box .toggle-jp-connect {
+ display: none;
+}
+
+.akismet-button, .akismet-button:hover, .akismet-button:visited {
+ background: white;
+ border-color: #c8d7e1;
+ border-style: solid;
+ border-width: 1px 1px 2px;
+ color: #2e4453;
+ cursor: pointer;
+ display: inline-block;
+ margin: 0;
+ outline: 0;
+ overflow: hidden;
+ font-size: 14px;
+ font-weight: 500;
+ text-overflow: ellipsis;
+ text-decoration: none;
+ vertical-align: top;
+ box-sizing: border-box;
+ font-size: 14px;
+ line-height: 21px;
+ border-radius: 4px;
+ padding: 7px 14px 9px;
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ appearance: none;
+}
+
+.akismet-button:hover {
+ border-color: #a8bece;
+}
+
+.akismet-button:active {
+ border-width: 2px 1px 1px;
+}
+
+.akismet-is-primary, .akismet-is-primary:hover, .akismet-is-primary:visited {
+ background: #00aadc;
+ border-color: #0087be;
+ color: white;
+}
+
+.akismet-is-primary:hover, .akismet-is-primary:focus {
+ border-color: #005082;
+}
+
+.akismet-is-primary:hover {
+ border-color: #005082;
+}
+
+.akismet-section-header {
+ position: relative;
+ margin: 0 auto 0.625rem auto;
+ padding: 1rem;
+ box-sizing: border-box;
+ box-shadow: 0 0 0 1px rgba(200, 215, 225, 0.5), 0 1px 2px #e9eff3;
+ background: #ffffff;
+ width: 100%;
+ padding-top: 0.6875rem;
+ padding-bottom: 0.6875rem;
+ display: flex;
+}
+
+.akismet-section-header__label {
+ display: -ms-flexbox;
+ display: flex;
+ -ms-flex-align: center;
+ align-items: center;
+ -ms-flex-positive: 1;
+ flex-grow: 1;
+ line-height: 1.75rem;
+ position: relative;
+ font-size: 0.875rem;
+ color: #4f748e;
+}
+
+.akismet-section-header__actions {
+ line-height: 1.75rem;
+}
+
+.akismet-setup-instructions {
+ text-align: center;
+}
+
+.akismet-setup-instructions form {
+ padding-bottom: 1.5rem;
+}
+
+div.error.akismet-usage-limit-alert {
+ padding: 25px 45px 25px 15px;
+ display: flex;
+ align-items: center;
+}
+
+#akismet-plugin-container .akismet-usage-limit-alert {
+ margin: 0 auto 0.625rem auto;
+ box-sizing: border-box;
+ box-shadow: 0 0 0 1px rgba(200, 215, 225, 0.5), 0 1px 2px #e9eff3;
+ border: none;
+ border-left: 4px solid #d63638;
+}
+
+.akismet-usage-limit-alert .akismet-usage-limit-logo {
+ width: 38px;
+ min-width: 38px;
+ height: 38px;
+ border-radius: 20px;
+ margin-right: 18px;
+ background: black;
+ position: relative;
+}
+
+.akismet-usage-limit-alert .akismet-usage-limit-logo img {
+ position: absolute;
+ width: 22px;
+ left: 8px;
+ top: 10px;
+}
+
+.akismet-usage-limit-alert .akismet-usage-limit-text {
+ flex-grow: 1;
+ margin-right: 18px;
+}
+
+.akismet-usage-limit-alert h3 {
+ margin: 0;
+}
+
+.akismet-usage-limit-alert .akismet-usage-limit-cta {
+ border-color: none;
+ text-align: right;
+}
+
+#akismet-plugin-container .akismet-usage-limit-cta a {
+ color: #d63638;
+}
+
+@media (max-width: 550px) {
+ div.error.akismet-usage-limit-alert {
+ display: block;
+ }
+
+ .akismet-usage-limit-alert .akismet-usage-limit-logo,
+ .akismet-usage-limit-alert .akismet-usage-limit-text {
+ margin-bottom: 15px;
+ }
+
+ .akismet-usage-limit-alert .akismet-usage-limit-cta {
+ text-align: left;
+ }
+} \ No newline at end of file
diff --git a/wp-content/plugins/akismet/_inc/akismet.js b/wp-content/plugins/akismet/_inc/akismet.js
new file mode 100644
index 0000000..2f9aa73
--- /dev/null
+++ b/wp-content/plugins/akismet/_inc/akismet.js
@@ -0,0 +1,421 @@
+jQuery( function ( $ ) {
+ var mshotRemovalTimer = null;
+ var mshotRetryTimer = null;
+ var mshotTries = 0;
+ var mshotRetryInterval = 1000;
+ var mshotEnabledLinkSelector = 'a[id^="author_comment_url"], tr.pingback td.column-author a:first-of-type, td.comment p a';
+
+ var preloadedMshotURLs = [];
+
+ $('.akismet-status').each(function () {
+ var thisId = $(this).attr('commentid');
+ $(this).prependTo('#comment-' + thisId + ' .column-comment');
+ });
+ $('.akismet-user-comment-count').each(function () {
+ var thisId = $(this).attr('commentid');
+ $(this).insertAfter('#comment-' + thisId + ' .author strong:first').show();
+ });
+
+ akismet_enable_comment_author_url_removal();
+
+ $( '#the-comment-list' ).on( 'click', '.akismet_remove_url', function () {
+ var thisId = $(this).attr('commentid');
+ var data = {
+ action: 'comment_author_deurl',
+ _wpnonce: WPAkismet.comment_author_url_nonce,
+ id: thisId
+ };
+ $.ajax({
+ url: ajaxurl,
+ type: 'POST',
+ data: data,
+ beforeSend: function () {
+ // Removes "x" link
+ $("a[commentid='"+ thisId +"']").hide();
+ // Show temp status
+ $("#author_comment_url_"+ thisId).html( $( '<span/>' ).text( WPAkismet.strings['Removing...'] ) );
+ },
+ success: function (response) {
+ if (response) {
+ // Show status/undo link
+ $("#author_comment_url_"+ thisId)
+ .attr('cid', thisId)
+ .addClass('akismet_undo_link_removal')
+ .html(
+ $( '<span/>' ).text( WPAkismet.strings['URL removed'] )
+ )
+ .append( ' ' )
+ .append(
+ $( '<span/>' )
+ .text( WPAkismet.strings['(undo)'] )
+ .addClass( 'akismet-span-link' )
+ );
+ }
+ }
+ });
+
+ return false;
+ }).on( 'click', '.akismet_undo_link_removal', function () {
+ var thisId = $(this).attr('cid');
+ var thisUrl = $(this).attr('href');
+ var data = {
+ action: 'comment_author_reurl',
+ _wpnonce: WPAkismet.comment_author_url_nonce,
+ id: thisId,
+ url: thisUrl
+ };
+ $.ajax({
+ url: ajaxurl,
+ type: 'POST',
+ data: data,
+ beforeSend: function () {
+ // Show temp status
+ $("#author_comment_url_"+ thisId).html( $( '<span/>' ).text( WPAkismet.strings['Re-adding...'] ) );
+ },
+ success: function (response) {
+ if (response) {
+ // Add "x" link
+ $("a[commentid='"+ thisId +"']").show();
+ // Show link. Core strips leading http://, so let's do that too.
+ $("#author_comment_url_"+ thisId).removeClass('akismet_undo_link_removal').text( thisUrl.replace( /^http:\/\/(www\.)?/ig, '' ) );
+ }
+ }
+ });
+
+ return false;
+ });
+
+ // Show a preview image of the hovered URL. Applies to author URLs and URLs inside the comments.
+ if ( "enable_mshots" in WPAkismet && WPAkismet.enable_mshots ) {
+ $( '#the-comment-list' ).on( 'mouseover', mshotEnabledLinkSelector, function () {
+ clearTimeout( mshotRemovalTimer );
+
+ if ( $( '.akismet-mshot' ).length > 0 ) {
+ if ( $( '.akismet-mshot:first' ).data( 'link' ) == this ) {
+ // The preview is already showing for this link.
+ return;
+ }
+ else {
+ // A new link is being hovered, so remove the old preview.
+ $( '.akismet-mshot' ).remove();
+ }
+ }
+
+ clearTimeout( mshotRetryTimer );
+
+ var linkUrl = $( this ).attr( 'href' );
+
+ if ( preloadedMshotURLs.indexOf( linkUrl ) !== -1 ) {
+ // This preview image was already preloaded, so begin with a retry URL so the user doesn't see the placeholder image for the first second.
+ mshotTries = 2;
+ }
+ else {
+ mshotTries = 1;
+ }
+
+ var mShot = $( '<div class="akismet-mshot mshot-container"><div class="mshot-arrow"></div><img src="' + akismet_mshot_url( linkUrl, mshotTries ) + '" width="450" height="338" class="mshot-image" /></div>' );
+ mShot.data( 'link', this );
+ mShot.data( 'url', linkUrl );
+
+ mShot.find( 'img' ).on( 'load', function () {
+ $( '.akismet-mshot' ).data( 'pending-request', false );
+ } );
+
+ var offset = $( this ).offset();
+
+ mShot.offset( {
+ left : Math.min( $( window ).width() - 475, offset.left + $( this ).width() + 10 ), // Keep it on the screen if the link is near the edge of the window.
+ top: offset.top + ( $( this ).height() / 2 ) - 101 // 101 = top offset of the arrow plus the top border thickness
+ } );
+
+ $( 'body' ).append( mShot );
+
+ mshotRetryTimer = setTimeout( retryMshotUntilLoaded, mshotRetryInterval );
+ } ).on( 'mouseout', 'a[id^="author_comment_url"], tr.pingback td.column-author a:first-of-type, td.comment p a', function () {
+ mshotRemovalTimer = setTimeout( function () {
+ clearTimeout( mshotRetryTimer );
+
+ $( '.akismet-mshot' ).remove();
+ }, 200 );
+ } );
+
+ var preloadDelayTimer = null;
+
+ $( window ).on( 'scroll resize', function () {
+ clearTimeout( preloadDelayTimer );
+
+ preloadDelayTimer = setTimeout( preloadMshotsInViewport, 500 );
+ } );
+
+ preloadMshotsInViewport();
+ }
+
+ /**
+ * The way mShots works is if there was no screenshot already recently generated for the URL,
+ * it returns a "loading..." image for the first request. Then, some subsequent request will
+ * receive the actual screenshot, but it's unknown how long it will take. So, what we do here
+ * is continually re-request the mShot, waiting a second after every response until we get the
+ * actual screenshot.
+ */
+ function retryMshotUntilLoaded() {
+ clearTimeout( mshotRetryTimer );
+
+ var imageWidth = $( '.akismet-mshot img' ).get(0).naturalWidth;
+
+ if ( imageWidth == 0 ) {
+ // It hasn't finished loading yet the first time. Check again shortly.
+ setTimeout( retryMshotUntilLoaded, mshotRetryInterval );
+ }
+ else if ( imageWidth == 400 ) {
+ // It loaded the preview image.
+
+ if ( mshotTries == 20 ) {
+ // Give up if we've requested the mShot 20 times already.
+ return;
+ }
+
+ if ( ! $( '.akismet-mshot' ).data( 'pending-request' ) ) {
+ $( '.akismet-mshot' ).data( 'pending-request', true );
+
+ mshotTries++;
+
+ $( '.akismet-mshot .mshot-image' ).attr( 'src', akismet_mshot_url( $( '.akismet-mshot' ).data( 'url' ), mshotTries ) );
+ }
+
+ mshotRetryTimer = setTimeout( retryMshotUntilLoaded, mshotRetryInterval );
+ }
+ else {
+ // All done.
+ }
+ }
+
+ function preloadMshotsInViewport() {
+ var windowWidth = $( window ).width();
+ var windowHeight = $( window ).height();
+
+ $( '#the-comment-list' ).find( mshotEnabledLinkSelector ).each( function ( index, element ) {
+ var linkUrl = $( this ).attr( 'href' );
+
+ // Don't attempt to preload an mshot for a single link twice.
+ if ( preloadedMshotURLs.indexOf( linkUrl ) !== -1 ) {
+ // The URL is already preloaded.
+ return true;
+ }
+
+ if ( typeof element.getBoundingClientRect !== 'function' ) {
+ // The browser is too old. Return false to stop this preloading entirely.
+ return false;
+ }
+
+ var rect = element.getBoundingClientRect();
+
+ if ( rect.top >= 0 && rect.left >= 0 && rect.bottom <= windowHeight && rect.right <= windowWidth ) {
+ akismet_preload_mshot( linkUrl );
+ $( this ).data( 'akismet-mshot-preloaded', true );
+ }
+ } );
+ }
+
+ $( '.checkforspam.enable-on-load' ).on( 'click', function( e ) {
+ if ( $( this ).hasClass( 'ajax-disabled' ) ) {
+ // Akismet hasn't been configured yet. Allow the user to proceed to the button's link.
+ return;
+ }
+
+ e.preventDefault();
+
+ if ( $( this ).hasClass( 'button-disabled' ) ) {
+ window.location.href = $( this ).data( 'success-url' ).replace( '__recheck_count__', 0 ).replace( '__spam_count__', 0 );
+ return;
+ }
+
+ $('.checkforspam').addClass('button-disabled').addClass( 'checking' );
+ $('.checkforspam-spinner').addClass( 'spinner' ).addClass( 'is-active' );
+
+ akismet_check_for_spam(0, 100);
+ }).removeClass( 'button-disabled' );
+
+ var spam_count = 0;
+ var recheck_count = 0;
+
+ function akismet_check_for_spam(offset, limit) {
+ var check_for_spam_buttons = $( '.checkforspam' );
+
+ var nonce = check_for_spam_buttons.data( 'nonce' );
+
+ // We show the percentage complete down to one decimal point so even queues with 100k
+ // pending comments will show some progress pretty quickly.
+ var percentage_complete = Math.round( ( recheck_count / check_for_spam_buttons.data( 'pending-comment-count' ) ) * 1000 ) / 10;
+
+ // Update the progress counter on the "Check for Spam" button.
+ $( '.checkforspam' ).text( check_for_spam_buttons.data( 'progress-label' ).replace( '%1$s', percentage_complete ) );
+
+ $.post(
+ ajaxurl,
+ {
+ 'action': 'akismet_recheck_queue',
+ 'offset': offset,
+ 'limit': limit,
+ 'nonce': nonce
+ },
+ function(result) {
+ if ( 'error' in result ) {
+ // An error is only returned in the case of a missing nonce, so we don't need the actual error message.
+ window.location.href = check_for_spam_buttons.data( 'failure-url' );
+ return;
+ }
+
+ recheck_count += result.counts.processed;
+ spam_count += result.counts.spam;
+
+ if (result.counts.processed < limit) {
+ window.location.href = check_for_spam_buttons.data( 'success-url' ).replace( '__recheck_count__', recheck_count ).replace( '__spam_count__', spam_count );
+ }
+ else {
+ // Account for comments that were caught as spam and moved out of the queue.
+ akismet_check_for_spam(offset + limit - result.counts.spam, limit);
+ }
+ }
+ );
+ }
+
+ if ( "start_recheck" in WPAkismet && WPAkismet.start_recheck ) {
+ $( '.checkforspam' ).click();
+ }
+
+ if ( typeof MutationObserver !== 'undefined' ) {
+ // Dynamically add the "X" next the the author URL links when a comment is quick-edited.
+ var comment_list_container = document.getElementById( 'the-comment-list' );
+
+ if ( comment_list_container ) {
+ var observer = new MutationObserver( function ( mutations ) {
+ for ( var i = 0, _len = mutations.length; i < _len; i++ ) {
+ if ( mutations[i].addedNodes.length > 0 ) {
+ akismet_enable_comment_author_url_removal();
+
+ // Once we know that we'll have to check for new author links, skip the rest of the mutations.
+ break;
+ }
+ }
+ } );
+
+ observer.observe( comment_list_container, { attributes: true, childList: true, characterData: true } );
+ }
+ }
+
+ function akismet_enable_comment_author_url_removal() {
+ $( '#the-comment-list' )
+ .find( 'tr.comment, tr[id ^= "comment-"]' )
+ .find( '.column-author a[href^="http"]:first' ) // Ignore mailto: links, which would be the comment author's email.
+ .each(function () {
+ if ( $( this ).parent().find( '.akismet_remove_url' ).length > 0 ) {
+ return;
+ }
+
+ var linkHref = $(this).attr( 'href' );
+
+ // Ignore any links to the current domain, which are diagnostic tools, like the IP address link
+ // or any other links another plugin might add.
+ var currentHostParts = document.location.href.split( '/' );
+ var currentHost = currentHostParts[0] + '//' + currentHostParts[2] + '/';
+
+ if ( linkHref.indexOf( currentHost ) != 0 ) {
+ var thisCommentId = $(this).parents('tr:first').attr('id').split("-");
+
+ $(this)
+ .attr("id", "author_comment_url_"+ thisCommentId[1])
+ .after(
+ $( '<a href="#" class="akismet_remove_url">x</a>' )
+ .attr( 'commentid', thisCommentId[1] )
+ .attr( 'title', WPAkismet.strings['Remove this URL'] )
+ );
+ }
+ });
+ }
+
+ /**
+ * Generate an mShot URL if given a link URL.
+ *
+ * @param string linkUrl
+ * @param int retry If retrying a request, the number of the retry.
+ * @return string The mShot URL;
+ */
+ function akismet_mshot_url( linkUrl, retry ) {
+ var mshotUrl = '//s0.wp.com/mshots/v1/' + encodeURIComponent( linkUrl ) + '?w=900';
+
+ if ( retry > 1 ) {
+ mshotUrl += '&r=' + encodeURIComponent( retry );
+ }
+
+ mshotUrl += '&source=akismet';
+
+ return mshotUrl;
+ }
+
+ /**
+ * Begin loading an mShot preview of a link.
+ *
+ * @param string linkUrl
+ */
+ function akismet_preload_mshot( linkUrl ) {
+ var img = new Image();
+ img.src = akismet_mshot_url( linkUrl );
+
+ preloadedMshotURLs.push( linkUrl );
+ }
+
+ $( '.akismet-could-be-primary' ).each( function () {
+ var form = $( this ).closest( 'form' );
+
+ form.data( 'initial-state', form.serialize() );
+
+ form.on( 'change keyup', function () {
+ var self = $( this );
+ var submit_button = self.find( '.akismet-could-be-primary' );
+
+ if ( self.serialize() != self.data( 'initial-state' ) ) {
+ submit_button.addClass( 'akismet-is-primary' );
+ }
+ else {
+ submit_button.removeClass( 'akismet-is-primary' );
+ }
+ } );
+ } );
+
+ /**
+ * Shows the Enter API key form
+ */
+ $( '.akismet-enter-api-key-box__reveal' ).on( 'click', function ( e ) {
+ e.preventDefault();
+
+ var div = $( '.akismet-enter-api-key-box__form-wrapper' );
+ div.show( 500 );
+ div.find( 'input[name=key]' ).focus();
+
+ $( this ).hide();
+ } );
+
+ /**
+ * Hides the Connect with Jetpack form | Shows the Activate Akismet Account form
+ */
+ $( 'a.toggle-ak-connect' ).on( 'click', function ( e ) {
+ e.preventDefault();
+
+ $( '.akismet-ak-connect' ).slideToggle('slow');
+ $( 'a.toggle-ak-connect' ).hide();
+ $( '.akismet-jp-connect' ).hide();
+ $( 'a.toggle-jp-connect' ).show();
+ } );
+
+ /**
+ * Shows the Connect with Jetpack form | Hides the Activate Akismet Account form
+ */
+ $( 'a.toggle-jp-connect' ).on( 'click', function ( e ) {
+ e.preventDefault();
+
+ $( '.akismet-jp-connect' ).slideToggle('slow');
+ $( 'a.toggle-jp-connect' ).hide();
+ $( '.akismet-ak-connect' ).hide();
+ $( 'a.toggle-ak-connect' ).show();
+ } );
+});
diff --git a/wp-content/plugins/akismet/_inc/fonts/inter.css b/wp-content/plugins/akismet/_inc/fonts/inter.css
new file mode 100644
index 0000000..d28b612
--- /dev/null
+++ b/wp-content/plugins/akismet/_inc/fonts/inter.css
@@ -0,0 +1,67 @@
+@font-face {
+ font-family: 'Inter';
+ font-style: normal;
+ font-weight: 400;
+ font-display: swap;
+ src: url("https://s0.wp.com/i/fonts/inter/Inter-Regular.woff2?v=3.19") format("woff2"),
+ url("https://s0.wp.com/i/fonts/inter/Inter-Regular.woff?v=3.19") format("woff");
+}
+@font-face {
+ font-family: 'Inter';
+ font-style: italic;
+ font-weight: 400;
+ font-display: swap;
+ src: url("https://s0.wp.com/i/fonts/inter/Inter-Italic.woff2?v=3.19") format("woff2"),
+ url("https://s0.wp.com/i/fonts/inter/Inter-Italic.woff?v=3.19") format("woff");
+}
+
+@font-face {
+ font-family: 'Inter';
+ font-style: normal;
+ font-weight: 500;
+ font-display: swap;
+ src: url("https://s0.wp.com/i/fonts/inter/Inter-Medium.woff2?v=3.19") format("woff2"),
+ url("https://s0.wp.com/i/fonts/inter/Inter-Medium.woff?v=3.19") format("woff");
+}
+@font-face {
+ font-family: 'Inter';
+ font-style: italic;
+ font-weight: 500;
+ font-display: swap;
+ src: url("https://s0.wp.com/i/fonts/inter/Inter-MediumItalic.woff2?v=3.19") format("woff2"),
+ url("https://s0.wp.com/i/fonts/inter/Inter-MediumItalic.woff?v=3.19") format("woff");
+}
+
+@font-face {
+ font-family: 'Inter';
+ font-style: normal;
+ font-weight: 600;
+ font-display: swap;
+ src: url("https://s0.wp.com/i/fonts/inter/Inter-SemiBold.woff2?v=3.19") format("woff2"),
+ url("https://s0.wp.com/i/fonts/inter/Inter-SemiBold.woff?v=3.19") format("woff");
+}
+@font-face {
+ font-family: 'Inter';
+ font-style: italic;
+ font-weight: 600;
+ font-display: swap;
+ src: url("https://s0.wp.com/i/fonts/inter/Inter-SemiBoldItalic.woff2?v=3.19") format("woff2"),
+ url("https://s0.wp.com/i/fonts/inter/Inter-SemiBoldItalic.woff?v=3.19") format("woff");
+}
+
+@font-face {
+ font-family: 'Inter';
+ font-style: normal;
+ font-weight: 700;
+ font-display: swap;
+ src: url("https://s0.wp.com/i/fonts/inter/Inter-Bold.woff2?v=3.19") format("woff2"),
+ url("https://s0.wp.com/i/fonts/inter/Inter-Bold.woff?v=3.19") format("woff");
+}
+@font-face {
+ font-family: 'Inter';
+ font-style: italic;
+ font-weight: 700;
+ font-display: swap;
+ src: url("https://s0.wp.com/i/fonts/inter/Inter-BoldItalic.woff2?v=3.19") format("woff2"),
+ url("https://s0.wp.com/i/fonts/inter/Inter-BoldItalic.woff?v=3.19") format("woff");
+}
diff --git a/wp-content/plugins/akismet/_inc/img/akismet-refresh-logo.svg b/wp-content/plugins/akismet/_inc/img/akismet-refresh-logo.svg
new file mode 100644
index 0000000..f5b5d2c
--- /dev/null
+++ b/wp-content/plugins/akismet/_inc/img/akismet-refresh-logo.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="203" height="44" fill="none"><rect width="44" height="44" fill="#357B49" rx="6"/><path fill="#fff" fill-rule="evenodd" d="m29.746 28.31-6.392-16.797c-.152-.397-.305-.672-.789-.675-.673 0-1.408.611-1.746 1.316l-7.378 16.154c-.072.16-.143.311-.214.454-.5.995-1.045 1.546-2.357 1.626a.399.399 0 0 0-.16.033l-.01.004a.399.399 0 0 0-.23.392v.01c0 .054.01.106.03.155l.004.01a.416.416 0 0 0 .394.252h6.212a.417.417 0 0 0 .307-.12.416.416 0 0 0 .124-.305.398.398 0 0 0-.105-.302.399.399 0 0 0-.294-.127c-.757 0-2.197-.062-2.197-1.164.02-.318.103-.63.245-.916l1.399-3.152c.52-1.163 1.654-1.163 2.572-1.163h5.843c.023 0 .044 0 .062.003.13.014.16.081.214.242l1.534 4.07a2.857 2.857 0 0 1 .216 1.04c0 .054-.003.104-.01.153-.09.726-.831.887-1.49.887a.4.4 0 0 0-.294.127l-.007.008-.007.008a.401.401 0 0 0-.092.286v.01c0 .054.01.106.03.155l.005.01a.42.42 0 0 0 .395.252h7.011a.413.413 0 0 0 .279-.13.412.412 0 0 0 .11-.297.387.387 0 0 0-.09-.294.388.388 0 0 0-.277-.135c-1.448-.122-2.295-.643-2.847-2.08Zm-11.985-5.844 2.847-6.304c.361-.728.659-1.486.889-2.265 0-.06.03-.092.06-.092s.061.032.061.091c.02.122.045.247.073.374.197.888.584 1.878.914 2.723l.176.453 1.684 4.529a.927.927 0 0 1 .092.4.473.473 0 0 1-.009.094c-.041.202-.228.272-.602.272h-6.063c-.122 0-.184-.03-.184-.092a.36.36 0 0 1 .062-.183Zm17.107-.721c0 .786-.446 1.231-1.25 1.231-.806 0-1.125-.409-1.125-1.034 0-.786.465-1.231 1.25-1.231.785 0 1.125.427 1.125 1.034ZM9.629 23.002c.803 0 1.25-.447 1.25-1.231 0-.607-.343-1.036-1.128-1.036-.785 0-1.25.447-1.25 1.231 0 .625.325 1.036 1.128 1.036Z" clip-rule="evenodd"/><path fill="#000" fill-rule="evenodd" d="M94.37 14.539c0-1.24-1.166-1.633-2.95-1.633a1.225 1.225 0 0 1-.103-.424.674.674 0 0 1 .186-.432.738.738 0 0 1 .432-.22 9.943 9.943 0 0 0 2.984-1.209c.085-.056.166-.114.244-.17.332-.237.63-.45 1.133-.45a.857.857 0 0 1 .436.095c.133.069.243.172.319.297l-.514 14.527c0 .065 0 .098.034.098.02 0 .028-.011.045-.033a.51.51 0 0 1 .058-.065l4.796-4.037.033-.028c.593-.502.824-.698.824-1.082 0-.457-.309-.882-1.509-.882a.456.456 0 0 1-.329-.134.416.416 0 0 1-.117-.323c0-.293.172-.424.48-.424h7.271a.465.465 0 0 1 .34.11.42.42 0 0 1 .141.314.41.41 0 0 1-.017.167.419.419 0 0 1-.225.249.45.45 0 0 1-.17.041c-1.715.229-3.43 1.176-4.664 2.155l-4.574 3.722 4.151 4.08c.162.162.326.329.493.498.641.653 1.317 1.341 2.079 1.885a4.931 4.931 0 0 0 2.915 1.045c.234 0 .423-.02.587-.04.125-.013.235-.025.339-.025.24 0 .24.196.24.294a.56.56 0 0 1-.171.424 3.94 3.94 0 0 1-.755.588c-.7.32-1.469.484-2.246.478a4.728 4.728 0 0 1-2.778-.848 12.042 12.042 0 0 1-2.093-2.024l-5.047-5.583a.515.515 0 0 1-.058-.065c-.017-.022-.025-.033-.045-.033-.034 0-.034.033-.034.098l-.172 4.8c0 1.436.995 2.176 2.504 2.415a.528.528 0 0 1 .319.166c.082.09.127.205.127.324a.406.406 0 0 1-.142.313.45.45 0 0 1-.338.11h-7.677a.477.477 0 0 1-.335-.115.438.438 0 0 1-.145-.308.454.454 0 0 1 .119-.33.5.5 0 0 1 .326-.16c1.715-.229 2.676-.751 2.71-2.22l.543-15.996Zm-19.929-1.894 7.168 17.923c.618 1.534 1.578 2.09 3.19 2.22a.452.452 0 0 1 .31.144.408.408 0 0 1 .102.313.421.421 0 0 1-.123.317.461.461 0 0 1-.323.14H76.91a.489.489 0 0 1-.343-.13.444.444 0 0 1-.138-.327.403.403 0 0 1 .113-.319.442.442 0 0 1 .322-.138c.789 0 1.68-.196 1.68-1.11a2.933 2.933 0 0 0-.24-1.11l-1.714-4.353c-.069-.196-.103-.272-.31-.272h-6.539c-1.029 0-2.286 0-2.88 1.24l-1.578 3.385a2.49 2.49 0 0 0-.286.98c0 1.174 1.612 1.24 2.47 1.24a.462.462 0 0 1 .328.134.417.417 0 0 1 .117.323.426.426 0 0 1-.137.326.47.47 0 0 1-.343.13h-6.951a.489.489 0 0 1-.343-.13.445.445 0 0 1-.137-.326.4.4 0 0 1 .116-.323.442.442 0 0 1 .33-.134c1.68-.098 2.23-.85 2.88-2.22l8.266-17.237c.378-.75 1.2-1.404 1.956-1.404.548 0 .72.294.891.718Zm-6.288 11.698c-.068.131-.068.164-.068.196 0 .033.068.098.206.098h6.802c.48 0 .686-.098.686-.392a.967.967 0 0 0-.103-.424L73.79 18.98l-.21-.514c-.42-1.024-.918-2.244-1.094-3.273 0-.066-.034-.098-.068-.098-.035 0-.069.033-.069.098a14.374 14.374 0 0 1-.995 2.426l-3.2 6.725Zm43.783-3.863c1.784 0 2.675.425 2.675 1.665l-.274 7.215c-.069 1.991-.377 3.101-2.778 3.395a.471.471 0 0 0-.312.164.428.428 0 0 0-.1.326.405.405 0 0 0 .273.396.45.45 0 0 0 .173.028h7.683a.463.463 0 0 0 .347-.112.42.42 0 0 0 .139-.323.453.453 0 0 0-.12-.33.5.5 0 0 0-.326-.16c-2.229-.326-2.435-1.632-2.435-3.428l.406-11.284a.697.697 0 0 0-.301-.335.745.745 0 0 0-.454-.09c-.47 0-.784.227-1.103.457a8.534 8.534 0 0 1-2.978 1.372.73.73 0 0 0-.434.22.667.667 0 0 0-.184.433.753.753 0 0 0 .103.391Zm3.842-6.692c1.269 0 2.023-.686 2.023-1.86 0-.98-.549-1.6-1.84-1.6-1.247 0-2.001.652-2.001 1.86 0 .98.549 1.6 1.818 1.6Zm17.939 6.431c0 .324-.04.887-.07 1.314-.018.262-.033.473-.033.547a.335.335 0 0 1-.105.197.366.366 0 0 1-.437.042.34.34 0 0 1-.144-.174c-.412-2.09-2.229-3.068-3.979-3.068-1.749 0-3.144.816-3.144 2.448 0 1.443 1.824 2.198 3.219 2.774.182.076.357.148.52.218.229.105.459.207.686.309 1.614.716 3.133 1.391 3.704 2.793.17.435.251.896.24 1.36a4.153 4.153 0 0 1-.309 1.6c-.926 2.252-3.715 3.395-6.379 3.395-3.944 0-4.63-1.175-4.63-3.787v-.827a.256.256 0 0 1 .093-.23.298.298 0 0 1 .25-.064c.286 0 .343.13.343.163.754 2.024 2.949 3.265 5.007 3.265 1.646 0 3.121-.816 3.121-2.35 0-1.744-1.337-2.306-2.797-2.918-.289-.121-.583-.245-.873-.38a50.215 50.215 0 0 0-.817-.369c-1.347-.598-2.654-1.178-3.367-2.21a3.501 3.501 0 0 1-.492-1.752 3.778 3.778 0 0 1 .378-1.6c.897-1.838 3.292-3.297 6.276-3.297s3.739.904 3.739 2.601Zm25.716 1.894c0-.947-.137-2.057-.823-2.971-.681-.882-1.778-1.524-3.527-1.524-2.916 0-5.111 1.85-6.174 4.527-.034.066-.069.098-.103.098-.034 0-.069-.032-.069-.13l.343-3.95a.78.78 0 0 0-.326-.328.84.84 0 0 0-.462-.097c-.488 0-.783.228-1.127.494l-.211.159c-.921.543-1.929.94-2.984 1.175a.77.77 0 0 0-.435.24.705.705 0 0 0-.182.446.93.93 0 0 0 .103.392c1.817 0 2.984.391 2.984 1.665l-.241 7.05c-.068 1.992-.377 3.102-2.743 3.396a.482.482 0 0 0-.36.139.432.432 0 0 0-.121.35.443.443 0 0 0 .162.318.473.473 0 0 0 .353.107h7.648a.447.447 0 0 0 .345-.105.4.4 0 0 0 .136-.32.448.448 0 0 0-.263-.445.5.5 0 0 0-.183-.044c-2.23-.326-2.47-1.6-2.47-3.395l.137-3.428c.115-2.775 1.441-6.007 4.974-6.007 2.812 0 3.258 2.318 3.258 4.538l-.172 4.897c-.068 1.959-.377 3.101-2.778 3.395a.461.461 0 0 0-.319.158.415.415 0 0 0-.092.332.396.396 0 0 0 .126.304.436.436 0 0 0 .32.12h7.682a.463.463 0 0 0 .335-.107.423.423 0 0 0 .145-.306.433.433 0 0 0-.113-.336.487.487 0 0 0-.332-.154c-2.184-.327-2.47-1.567-2.47-3.395l.137-3.559c.115-2.774 1.475-5.876 4.974-5.876 2.812 0 3.224 2.318 3.224 4.538l-.172 4.897c-.069 1.959-.343 3.101-2.744 3.395a.475.475 0 0 0-.34.148.414.414 0 0 0-.106.341.405.405 0 0 0 .141.315.446.446 0 0 0 .339.11h7.649a.473.473 0 0 0 .358-.102.44.44 0 0 0 .114-.145.407.407 0 0 0 .042-.177.466.466 0 0 0-.133-.34.498.498 0 0 0-.347-.15c-2.183-.327-2.469-1.567-2.469-3.395l.24-6.464c0-2.383-.72-5.289-4.527-5.289-2.984 0-5.248 1.948-6.18 4.527-.034.066-.068.098-.103.098-.034 0-.068-.032-.068-.13Zm29.023-.196c0 .587-.138 1.665-.789 2.024-2.092 1.11-6.763 1.567-10.049 1.567-.138 0-.172.065-.172.163.005.8.144 1.593.412 2.35.857 2.318 2.858 3.537 5.247 3.537a6.696 6.696 0 0 0 2.829-.63 6.369 6.369 0 0 0 2.247-1.753.491.491 0 0 1 .168-.188.53.53 0 0 1 .244-.084.453.453 0 0 1 .328.098.4.4 0 0 1 .152.294.449.449 0 0 1-.069.196c-1.406 3.036-4.253 4.505-6.956 4.505-4.573-.033-6.757-3.69-6.757-7.215 0-4.08 2.858-9.173 8.197-9.173 2.875.01 4.968 1.991 4.968 4.309Zm-10.701 1.088c-.07.226-.127.454-.172.686a5.136 5.136 0 0 0-.108.674.147.147 0 0 0 .057.099.164.164 0 0 0 .114.032c2.675 0 8.163-.914 8.163-1.763a3.297 3.297 0 0 0-1.061-2.3 3.638 3.638 0 0 0-2.437-.965c-2.361 0-3.939 1.665-4.551 3.526l-.005.011Zm16.011-2.981c.24 0 .309.065.309.228l-.315 9.5c0 1.143.143 2.35 1.029 3.2.374.352.822.628 1.314.808.492.18 1.018.26 1.544.236 2.47 0 4.39-1.306 5.214-3.102a.94.94 0 0 0 .137-.359.297.297 0 0 0-.093-.238.329.329 0 0 0-.25-.088.312.312 0 0 0-.24.098c-1.166 1.11-2.287 1.567-3.43 1.567a2.779 2.779 0 0 1-1.088-.19 2.664 2.664 0 0 1-.913-.594c-.651-.652-.651-1.6-.651-2.415l.314-8.662 5.316-.49a.682.682 0 0 0 .368-.227.63.63 0 0 0 .147-.393.645.645 0 0 0-.117-.35.687.687 0 0 0-.295-.238h-5.145c-.205 0-.24-.098-.24-.228l.137-3.809c0-.327-.274-.457-.651-.457a.688.688 0 0 0-.413.086.634.634 0 0 0-.273.306c-.686 2.71-1.818 4.113-4.047 4.864a.469.469 0 0 0-.225.166.434.434 0 0 0-.084.258.47.47 0 0 0 .062.31.51.51 0 0 0 .247.213h2.332ZM87.553 23.565c0 .838-.5 1.314-1.4 1.314-.9 0-1.26-.438-1.26-1.104 0-.838.52-1.314 1.4-1.314.88 0 1.26.457 1.26 1.104Zm51.386 1.314c.901 0 1.401-.476 1.401-1.314 0-.647-.38-1.104-1.261-1.104-.88 0-1.4.476-1.4 1.314 0 .666.36 1.104 1.26 1.104Z" clip-rule="evenodd"/></svg> \ No newline at end of file
diff --git a/wp-content/plugins/akismet/_inc/img/akismet-refresh-logo@2x.png b/wp-content/plugins/akismet/_inc/img/akismet-refresh-logo@2x.png
new file mode 100644
index 0000000..15c3db3
--- /dev/null
+++ b/wp-content/plugins/akismet/_inc/img/akismet-refresh-logo@2x.png
Binary files differ
diff --git a/wp-content/plugins/akismet/_inc/img/arrow-left.svg b/wp-content/plugins/akismet/_inc/img/arrow-left.svg
new file mode 100644
index 0000000..823da27
--- /dev/null
+++ b/wp-content/plugins/akismet/_inc/img/arrow-left.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" focusable="false"><path d="M20 11.2H6.8l3.7-3.7-1-1L3.9 12l5.6 5.5 1-1-3.7-3.7H20z"></path></svg> \ No newline at end of file
diff --git a/wp-content/plugins/akismet/_inc/img/icon-external.svg b/wp-content/plugins/akismet/_inc/img/icon-external.svg
new file mode 100644
index 0000000..b7efe45
--- /dev/null
+++ b/wp-content/plugins/akismet/_inc/img/icon-external.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" focusable="false"><path fill="#357b49" d="M19.5 4.5h-7V6h4.44l-5.97 5.97 1.06 1.06L18 7.06v4.44h1.5v-7Zm-13 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-3H17v3a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h3V5.5h-3Z"></path></svg> \ No newline at end of file
diff --git a/wp-content/plugins/akismet/_inc/img/logo-a-2x.png b/wp-content/plugins/akismet/_inc/img/logo-a-2x.png
new file mode 100644
index 0000000..087144a
--- /dev/null
+++ b/wp-content/plugins/akismet/_inc/img/logo-a-2x.png
Binary files differ
diff --git a/wp-content/plugins/akismet/_inc/img/logo-full-2x.png b/wp-content/plugins/akismet/_inc/img/logo-full-2x.png
new file mode 100644
index 0000000..7954585
--- /dev/null
+++ b/wp-content/plugins/akismet/_inc/img/logo-full-2x.png
Binary files differ
diff --git a/wp-content/plugins/akismet/_inc/rtl/akismet-admin-rtl.css b/wp-content/plugins/akismet/_inc/rtl/akismet-admin-rtl.css
new file mode 100644
index 0000000..1960f93
--- /dev/null
+++ b/wp-content/plugins/akismet/_inc/rtl/akismet-admin-rtl.css
@@ -0,0 +1,380 @@
+/* This file was automatically generated on Nov 20 2023 03:10:42 */
+
+#akismet-plugin-container {
+ background-color: var(--akismet-color-light-grey);
+ font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen-Sans', 'Ubuntu', 'Cantarell', 'Helvetica Neue', sans-serif;
+ --akismet-color-charcoal: #272635;
+ --akismet-color-light-grey: #f6f7f7;
+ --akismet-color-mid-grey: #a7aaad;
+ --akismet-color-dark-grey: #646970;
+ --akismet-color-grey-80: #2c3338;
+ --akismet-color-grey-100: #101517;
+ --akismet-color-white: #fff;
+ --akismet-color-mid-green: #357b49;
+ --akismet-color-mid-red: #e82c3f;
+ --akismet-color-light-blue: #256eff;
+ --akismet-color-notice-light-green: #dbf0e1;
+ --akismet-color-notice-dark-green: #69bf82;
+ --akismet-color-notice-light-red: #ffdbde;
+ --akismet-color-notice-dark-red: #ff6676;
+}
+
+#akismet-plugin-container a {
+ color: var(--akismet-color-mid-green);
+}
+
+#akismet-plugin-container button:focus-visible,
+#akismet-plugin-container input:focus-visible {
+ border: 0;
+ box-shadow: none;
+ outline: 2px solid var(--akismet-color-light-blue);
+}
+
+.akismet-masthead {
+ box-shadow: none;
+}
+
+.akismet-masthead__logo {
+ margin: 20px 0;
+}
+
+.akismet-section-header {
+ box-shadow: none;
+ margin-bottom: 0;
+}
+
+.akismet-section-header__label {
+ color: var(--akismet-color-charcoal);
+ font-weight: 600;
+}
+
+.akismet-button, .akismet-button:hover {
+ background-color: var(--akismet-color-mid-green);
+ border: 0;
+ color: #fff;
+}
+
+/* Need this specificity to override the existing header rule */
+.akismet-new-snapshot h3.akismet-new-snapshot__header {
+ background: none;
+ font-size: 13px;
+ color: var(--akismet-color-charcoal);
+ text-align: right;
+ text-transform: none;
+}
+
+.akismet-new-snapshot .akismet-new-snapshot__number {
+ color: var(--akismet-color-charcoal);
+ letter-spacing: -1px;
+ text-align: right;
+}
+
+.akismet-new-snapshot li.akismet-new-snapshot__item {
+ color: var(--akismet-color-dark-grey);
+ font-size: 13px;
+ text-align: right;
+ text-transform: none;
+}
+
+.akismet-masthead__logo-link {
+ min-height: 50px;
+}
+
+.akismet-masthead__back-link-container {
+ margin-top: 16px;
+ margin-bottom: 2px;
+}
+
+/* Need this specificity to override the existing link rule */
+#akismet-plugin-container a.akismet-masthead__back-link {
+ background-image: url(../img/arrow-left.svg);
+ background-position: right;
+ background-repeat: no-repeat;
+ background-size: 16px;
+ color: var(--akismet-color-charcoal);
+ font-weight: 400;
+ padding-right: 20px;
+ text-decoration: none;
+}
+
+#akismet-plugin-container a.akismet-masthead__back-link:hover {
+ text-decoration: underline;
+}
+
+.akismet-new-snapshot__item {
+ border-top: 1px solid var(--akismet-color-light-grey);
+ border-right: 1px solid var(--akismet-color-light-grey);
+ padding: 1em;
+}
+
+.akismet-new-snapshot li:first-child {
+ border-right: none;
+}
+
+.akismet-new-snapshot__list {
+ display: flex;
+ margin-bottom: 0;
+}
+
+.akismet-new-snapshot__item {
+ flex: 1 0 33.33%;
+ margin-bottom: 0;
+ padding-right: 1.5em;
+ padding-left: 1.5em;
+}
+
+.akismet-new-snapshot__chart {
+ padding: 1em;
+}
+
+.akismet-box {
+ border: 0;
+}
+
+.akismet-box,
+.akismet-card {
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06), 0 0 2px rgba(0, 0, 0, 0.16);
+ border-radius: 8px;
+ overflow: hidden;
+}
+
+.akismet-card {
+ margin: 32px auto 0 auto;
+}
+
+.akismet-lower {
+ padding-top: 0;
+}
+
+.akismet-lower .inside {
+ padding: 0;
+}
+
+.akismet-section-header__label {
+ margin: 0;
+}
+
+.akismet-settings__row {
+ border-bottom: 1px solid var(--akismet-color-light-grey);
+ display: block;
+ padding: 1em 1.5em;
+}
+
+.akismet-settings__row-input {
+ margin-right: auto;
+}
+
+.akismet-settings__row-title {
+ font-weight: 500;
+ font-size: 1em;
+ margin: 0;
+ margin-bottom: 1em;
+}
+
+.akismet-settings__row-description {
+ margin-top: 0.5em;
+}
+
+.akismet-card-actions {
+ display: flex;
+ justify-content: flex-end;
+ padding: 1em;
+}
+
+.akismet-card-actions__secondary-action {
+ align-self: center;
+ margin-left: auto;
+}
+
+.akismet-card-actions__secondary-action a[target="_blank"]::after {
+ background: url('../img/icon-external.svg') no-repeat;
+ background-size: contain;
+ content: "";
+ display: inline-block;
+ height: 16px;
+ margin-right: 5px;
+ vertical-align: middle;
+ width: 16px;
+}
+
+.akismet-settings__row label {
+ padding-bottom: 1em;
+}
+
+.akismet-settings__row-note {
+ font-size: 0.9em;
+ margin-top: 0.4em;
+}
+
+.akismet-settings__row input[type="checkbox"],
+.akismet-settings__row input[type="radio"] {
+ accent-color: var(--akismet-color-mid-green);
+ box-shadow: none;
+ flex-shrink: 0;
+ margin: 2px 0 0 0;
+}
+
+.akismet-settings__row input[type="checkbox"] {
+ margin-top: 1px;
+ vertical-align: top;
+ -webkit-appearance: checkbox;
+}
+
+.akismet-settings__row input[type="radio"] {
+ -webkit-appearance: radio;
+}
+
+/* Fix up misbehaving wp-admin styles in Chrome (from forms and colors stylesheets) */
+.akismet-settings__row input[type="checkbox"]:checked:before {
+ content: '';
+}
+
+.akismet-settings__row input[type="radio"]:checked:before {
+ background: none;
+}
+
+.akismet-settings__row input[type="checkbox"]:checked:hover,
+.akismet-settings__row input[type="radio"]:checked:hover {
+ accent-color: var(--akismet-color-mid-green);
+}
+
+.akismet-button:disabled {
+ background-color: var(--akismet-color-mid-grey);
+ color: var(--akismet-color-white);
+ cursor: arrow;
+}
+
+.akismet-awaiting-stats,
+.akismet-account {
+ padding: 0 1rem 1rem 1rem;
+ margin: 0;
+}
+
+.akismet-account {
+ padding-bottom: 0;
+}
+
+.akismet-account th {
+ font-weight: 500;
+ padding-left: 1em;
+}
+
+.akismet-account th, .akismet-account td {
+ padding-bottom: 1em;
+}
+
+.akismet-settings__row-input-label {
+ align-items: center;
+ display: flex;
+}
+
+.akismet-settings__row-label-text {
+ padding-right: 0.5em;
+ margin-top: 2px;
+}
+
+.akismet-alert {
+ border-right: 8px solid;
+ border-radius: 8px;
+ margin: 20px 0;
+ padding: 0.2em 1em;
+}
+
+.akismet-alert__heading {
+ font-size: 1em;
+}
+
+.akismet-alert.is-good {
+ background-color: var(--akismet-color-notice-light-green);
+ border-right-color: var(--akismet-color-notice-dark-green);
+}
+
+.akismet-alert.is-neutral {
+ background-color: var(--akismet-color-white);
+ border-right-color: var(--akismet-color-dark-grey);
+}
+
+.akismet-alert.is-bad {
+ background-color: var(--akismet-color-notice-light-red);
+ border-right-color: var(--akismet-color-notice-dark-red);
+}
+
+#akismet-plugin-container .akismet-alert.is-good a,
+#akismet-plugin-container .akismet-alert.is-bad a {
+ /* For better contrast - green isn't great */
+ color: var(--akismet-color-grey-80);
+}
+
+/* Setup - API key input */
+.akismet-enter-api-key-box {
+ margin: 1.5rem 0;
+}
+
+.akismet-enter-api-key-box__reveal {
+ background: none;
+ border: 0;
+ color: var(--akismet-color-mid-green);
+ cursor: pointer;
+ text-decoration: underline;
+}
+
+.akismet-enter-api-key-box__form-wrapper {
+ display: none;
+ margin-top: 1.5rem;
+}
+
+.akismet-enter-api-key-box__input-wrapper {
+ box-sizing: border-box;
+ display: flex;
+ flex-wrap: nowrap;
+ padding: 0 1.5rem;
+ width: 100%;
+}
+
+.akismet-enter-api-key-box__key-input {
+ flex-grow: 1;
+ margin-left: 1rem;
+}
+
+h3.akismet-enter-api-key-box__header {
+ padding-top: 0;
+ padding-bottom: 1em;
+ text-align: right;
+}
+
+@media screen and (max-width: 782px) {
+ .akismet-new-snapshot__list {
+ display: block;
+ }
+
+ .akismet-new-snapshot__number {
+ float: left;
+ font-size: 20px;
+ font-weight: 500;
+ margin-top: -16px;
+ }
+
+ .akismet-new-snapshot__header {
+ font-size: 14px;
+ font-weight: 500;
+ }
+
+ .akismet-new-snapshot__text {
+ font-size: 12px;
+ }
+
+ .akismet-settings__row input[type="checkbox"],
+ .akismet-settings__row input[type="radio"] {
+ height: 24px;
+ width: 24px;
+ }
+
+ .akismet-settings__row-label-text {
+ padding-right: 0.8em;
+ }
+
+ .akismet-settings__row input[type="checkbox"],
+ .akismet-settings__row input[type="radio"] {
+ margin-top: 0;
+ }
+} \ No newline at end of file
diff --git a/wp-content/plugins/akismet/_inc/rtl/akismet-rtl.css b/wp-content/plugins/akismet/_inc/rtl/akismet-rtl.css
new file mode 100644
index 0000000..8a00368
--- /dev/null
+++ b/wp-content/plugins/akismet/_inc/rtl/akismet-rtl.css
@@ -0,0 +1,649 @@
+/* This file was automatically generated on Aug 25 2023 03:41:43 */
+
+.wp-admin.jetpack_page_akismet-key-config, .wp-admin.settings_page_akismet-key-config {
+ background-color:#f3f6f8;
+}
+
+#submitted-on {
+ position: relative;
+}
+#the-comment-list .author .akismet-user-comment-count {
+ display: inline;
+}
+#the-comment-list .author a span {
+ text-decoration: none;
+ color: #999;
+}
+#the-comment-list .author a span.akismet-span-link {
+ text-decoration: inherit;
+ color: inherit;
+}
+#the-comment-list .akismet_remove_url {
+ margin-right: 3px;
+ color: #999;
+ padding: 2px 0 2px 3px;
+}
+#the-comment-list .akismet_remove_url:hover {
+ color: #A7301F;
+ font-weight: bold;
+ padding: 2px 0 2px 2px;
+}
+#dashboard_recent_comments .akismet-status {
+ display: none;
+}
+.akismet-status {
+ float: left;
+}
+.akismet-status a {
+ color: #AAA;
+ font-style: italic;
+}
+table.comments td.comment p a {
+ text-decoration: underline;
+}
+table.comments td.comment p a:after {
+ content: attr(href);
+ color: #aaa;
+ display: inline-block; /* Show the URL without the link's underline extending under it. */
+ padding: 0 1ex; /* Because it's inline block, we can't just use spaces in the content: attribute to separate it from the link text. */
+}
+.mshot-arrow {
+ width: 0;
+ height: 0;
+ border-top: 10px solid transparent;
+ border-bottom: 10px solid transparent;
+ border-left: 10px solid #5C5C5C;
+ position: absolute;
+ right: -6px;
+ top: 91px;
+}
+.mshot-container {
+ background: #5C5C5C;
+ position: absolute;
+ top: -94px;
+ padding: 7px;
+ width: 450px;
+ height: 338px;
+ z-index: 20000;
+ -moz-border-radius: 6px;
+ border-radius: 6px;
+ -webkit-border-radius: 6px;
+}
+.akismet-mshot {
+ position: absolute;
+ z-index: 100;
+}
+.akismet-mshot .mshot-image {
+ margin: 0;
+ height: 338px;
+ width: 450px;
+}
+.checkforspam {
+ display: inline-block !important;
+}
+
+.checkforspam-spinner {
+ display: inline-block;
+ margin-top: 7px;
+}
+
+.akismet-right {
+ float: left;
+}
+
+.akismet-card .akismet-right {
+ margin: 1em 0;
+}
+
+.akismet-alert-text {
+ color: #dd3d36;
+ font-weight: bold;
+ font-size: 120%;
+ margin-top: .5rem;
+}
+
+.akismet-new-snapshot {
+ margin-top: 1em;
+ text-align: center;
+ background: #fff;
+}
+
+.akismet-new-snapshot h3 {
+ background: #f5f5f5;
+ color: #888;
+ font-size: 11px;
+ margin: 0;
+}
+
+.akismet-new-snapshot ul li {
+ color: #999;
+ font-size: 11px;
+ text-transform: uppercase;
+ box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ -webkit-box-sizing: border-box;
+ -ms-box-sizing: border-box;
+}
+
+.akismet-new-snapshot__number {
+ display: block;
+ font-size: 32px;
+ font-weight: lighter;
+ line-height: 1.5em;
+}
+
+.akismet-settings th:first-child {
+ vertical-align: top;
+ padding-top: 15px;
+}
+
+.akismet-settings th.akismet-api-key {
+ vertical-align: middle;
+ padding-top: 0;
+}
+
+.akismet-settings span.akismet-note{
+ float: right;
+ padding-right: 23px;
+ font-size: 75%;
+ margin-top: -10px;
+}
+
+/**
+ * For the activation notice on the plugins page.
+ */
+
+#akismet_setup_prompt {
+ background: none;
+ border: none;
+ margin: 0;
+ padding: 0;
+ width: 100%;
+}
+
+.akismet_activate {
+ border: 1px solid #4F800D;
+ padding: 5px;
+ margin: 15px 0;
+ background: #83AF24;
+ background-image: -webkit-gradient(linear, 0% 0, 80% 100%, from(#83AF24), to(#4F800D));
+ background-image: -moz-linear-gradient(-80% 100% 120deg, #4F800D, #83AF24);
+ -moz-border-radius: 3px;
+ border-radius: 3px;
+ -webkit-border-radius: 3px;
+ position: relative;
+ overflow: hidden;
+}
+
+.akismet_activate .aa_a {
+ position: absolute;
+ top: -5px;
+ left: 10px;
+ font-size: 140px;
+ color: #769F33;
+ font-family: Georgia, "Times New Roman", Times, serif;
+}
+
+.akismet_activate .aa_button {
+ font-weight: bold;
+ border: 1px solid #029DD6;
+ border-top: 1px solid #06B9FD;
+ font-size: 15px;
+ text-align: center;
+ padding: 9px 0 8px 0;
+ color: #FFF;
+ background: #029DD6;
+ background-image: -webkit-gradient(linear, 0% 0, 0% 100%, from(#029DD6), to(#0079B1));
+ background-image: -moz-linear-gradient(0% 100% 90deg, #0079B1, #029DD6);
+ -moz-border-radius: 2px;
+ border-radius: 2px;
+ -webkit-border-radius: 2px;
+ width: 100%;
+ cursor: pointer;
+ margin: 0;
+}
+
+.akismet_activate .aa_button:hover {
+ text-decoration: none !important;
+ border: 1px solid #029DD6;
+ border-bottom: 1px solid #00A8EF;
+ font-size: 15px;
+ text-align: center;
+ padding: 9px 0 8px 0;
+ color: #F0F8FB;
+ background: #0079B1;
+ background-image: -webkit-gradient(linear, 0% 0, 0% 100%, from(#0079B1), to(#0092BF));
+ background-image: -moz-linear-gradient(0% 100% 90deg, #0092BF, #0079B1);
+ -moz-border-radius: 2px;
+ border-radius: 2px;
+ -webkit-border-radius: 2px;
+}
+
+.akismet_activate .aa_button_border {
+ border: 1px solid #006699;
+ -moz-border-radius: 2px;
+ border-radius: 2px;
+ -webkit-border-radius: 2px;
+ background: #029DD6;
+ background-image: -webkit-gradient(linear, 0% 0, 0% 100%, from(#029DD6), to(#0079B1));
+ background-image: -moz-linear-gradient(0% 100% 90deg, #0079B1, #029DD6);
+}
+
+.akismet_activate .aa_button_container {
+ box-sizing: border-box;
+ display: inline-block;
+ background: #DEF1B8;
+ padding: 5px;
+ -moz-border-radius: 2px;
+ border-radius: 2px;
+ -webkit-border-radius: 2px;
+ width: 266px;
+}
+
+.akismet_activate .aa_description {
+ position: absolute;
+ top: 22px;
+ right: 285px;
+ margin-right: 25px;
+ color: #E5F2B1;
+ font-size: 15px;
+}
+
+.akismet_activate .aa_description strong {
+ color: #FFF;
+ font-weight: normal;
+}
+
+@media (max-width: 550px) {
+ .akismet_activate .aa_a {
+ display: none;
+ }
+
+ .akismet_activate .aa_button_container {
+ width: 100%;
+ }
+}
+
+@media (max-width: 782px) {
+ .akismet_activate {
+ min-width: 0;
+ }
+}
+
+@media (max-width: 850px) {
+ #akismet_setup_prompt .aa_description {
+ display: none;
+ }
+
+ .akismet_activate {
+ min-width: 0;
+ }
+}
+
+.jetpack_page_akismet-key-config #wpcontent, .settings_page_akismet-key-config #wpcontent {
+ padding-right: 0;
+}
+
+.akismet-masthead {
+ background-color:#fff;
+ text-align:center;
+ box-shadow:0 1px 0 rgba(200,215,225,0.5),0 1px 2px #e9eff3
+}
+@media (max-width: 45rem) {
+ .akismet-masthead {
+ padding:0 1.25rem
+ }
+}
+
+.akismet-masthead__inside-container {
+ padding:.375rem 0;
+ margin:0 auto;
+ width:100%;
+ max-width:45rem;
+ text-align: right;
+}
+.akismet-masthead__logo-container {
+ padding:.3125rem 0 0
+}
+.akismet-masthead__logo-link {
+ display:inline-block;
+ outline:none;
+ vertical-align:middle
+}
+.akismet-masthead__logo-link:focus {
+ line-height:0;
+ box-shadow:0 0 0 2px #78dcfa
+}
+.akismet-masthead__logo-link+code {
+ margin:0 10px;
+ padding:5px 9px;
+ border-radius:2px;
+ background:#e6ecf1;
+ color:#647a88
+}
+.akismet-masthead__links {
+ display:-ms-flexbox;
+ display:flex;
+ -ms-flex-flow:row wrap;
+ flex-flow:row wrap;
+ -ms-flex:2 50%;
+ flex:2 50%;
+ -ms-flex-pack:end;
+ justify-content:flex-end;
+ margin:0
+}
+@media (max-width: 480px) {
+ .akismet-masthead__links {
+ padding-left:.625rem
+ }
+}
+.akismet-masthead__link-li {
+ margin:0;
+ padding:0
+}
+.akismet-masthead__link {
+ font-style:normal;
+ color:#0087be;
+ padding:.625rem;
+ display:inline-block
+}
+.akismet-masthead__link:visited {
+ color:#0087be
+}
+.akismet-masthead__link:active,.akismet-masthead__link:hover {
+ color:#00aadc
+}
+.akismet-masthead__link:hover {
+ text-decoration:underline
+}
+.akismet-masthead__link .dashicons {
+ display:none
+}
+@media (max-width: 480px) {
+ .akismet-masthead__link:hover,.akismet-masthead__link:active {
+ text-decoration:none
+ }
+ .akismet-masthead__link .dashicons {
+ display:block;
+ font-size:1.75rem
+ }
+ .akismet-masthead__link span+span {
+ display:none
+ }
+}
+.akismet-masthead__link-li:last-of-type .akismet-masthead__link {
+ padding-left:0
+}
+
+.akismet-lower {
+ margin: 0 auto;
+ text-align: right;
+ max-width: 45rem;
+ padding: 1.5rem;
+}
+
+.akismet-lower .notice {
+ margin-bottom: 2rem;
+}
+
+.akismet-card {
+ margin-top: 1rem;
+ margin-bottom: 0;
+ position: relative;
+ box-sizing: border-box;
+ background: white;
+}
+
+.akismet-card:after, .akismet-card .inside:after, .akismet-masthead__logo-container:after {
+ content: ".";
+ display: block;
+ height: 0;
+ clear: both;
+ visibility: hidden;
+}
+
+.akismet-card .inside {
+ padding: 1.5rem;
+ padding-top: 1rem;
+}
+
+.akismet-card .akismet-card-actions {
+ margin-top: 1rem;
+}
+
+.jetpack_page_akismet-key-config .update-nag, .settings_page_akismet-key-config .update-nag {
+ display: none;
+}
+
+.akismet-masthead .akismet-right {
+ line-height: 2.125rem;
+ font-size: 0.9rem;
+}
+
+.akismet-box {
+ box-sizing: border-box;
+ background: white;
+ border: 1px solid rgba(200, 215, 225, 0.5);
+}
+
+.akismet-box h2, .akismet-box h3 {
+ padding: 1.5rem 1.5rem .5rem 1.5rem;
+ margin: 0;
+}
+
+.akismet-box p {
+ padding: 0 1.5rem 1.5rem 1.5rem;
+ margin: 0;
+}
+
+.akismet-jetpack-email {
+ font-style: oblique;
+}
+
+.akismet-jetpack-gravatar {
+ padding: 0 1.5rem 0 0;
+ float: right;
+ margin-left: 1rem;
+ width: 54px;
+ height: 54px;
+}
+
+.akismet-box p:after {
+ content: ".";
+ display: block;
+ height: 0;
+ clear: both;
+ visibility: hidden;
+}
+
+.akismet-box .akismet-right {
+ padding-left: 1.5rem;
+}
+
+.akismet-boxes .akismet-box {
+ margin-bottom: 0;
+ padding: 0;
+ margin-top: -1px;
+}
+
+.akismet-boxes .akismet-box:last-child {
+ margin-bottom: 1.5rem;
+}
+
+.akismet-boxes .akismet-box:first-child {
+ margin-top: 1.5rem;
+}
+
+.akismet-box-header {
+ max-width: 700px;
+ margin: 0 auto 40px auto;
+ line-height: 1.5;
+}
+
+.akismet-box-header h2 {
+ margin: 1.5rem 10% 0;
+ font-size: 1.375rem;
+ font-weight: 700;
+ color: #000;
+}
+
+.akismet-box .centered {
+ text-align: center;
+}
+
+.akismet-box .akismet-toggles {
+ margin: 3rem 0;
+}
+
+.akismet-box .akismet-ak-connect, .akismet-box .toggle-jp-connect {
+ display: none;
+}
+
+.akismet-button, .akismet-button:hover, .akismet-button:visited {
+ background: white;
+ border-color: #c8d7e1;
+ border-style: solid;
+ border-width: 1px 1px 2px;
+ color: #2e4453;
+ cursor: pointer;
+ display: inline-block;
+ margin: 0;
+ outline: 0;
+ overflow: hidden;
+ font-size: 14px;
+ font-weight: 500;
+ text-overflow: ellipsis;
+ text-decoration: none;
+ vertical-align: top;
+ box-sizing: border-box;
+ font-size: 14px;
+ line-height: 21px;
+ border-radius: 4px;
+ padding: 7px 14px 9px;
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ appearance: none;
+}
+
+.akismet-button:hover {
+ border-color: #a8bece;
+}
+
+.akismet-button:active {
+ border-width: 2px 1px 1px;
+}
+
+.akismet-is-primary, .akismet-is-primary:hover, .akismet-is-primary:visited {
+ background: #00aadc;
+ border-color: #0087be;
+ color: white;
+}
+
+.akismet-is-primary:hover, .akismet-is-primary:focus {
+ border-color: #005082;
+}
+
+.akismet-is-primary:hover {
+ border-color: #005082;
+}
+
+.akismet-section-header {
+ position: relative;
+ margin: 0 auto 0.625rem auto;
+ padding: 1rem;
+ box-sizing: border-box;
+ box-shadow: 0 0 0 1px rgba(200, 215, 225, 0.5), 0 1px 2px #e9eff3;
+ background: #ffffff;
+ width: 100%;
+ padding-top: 0.6875rem;
+ padding-bottom: 0.6875rem;
+ display: flex;
+}
+
+.akismet-section-header__label {
+ display: -ms-flexbox;
+ display: flex;
+ -ms-flex-align: center;
+ align-items: center;
+ -ms-flex-positive: 1;
+ flex-grow: 1;
+ line-height: 1.75rem;
+ position: relative;
+ font-size: 0.875rem;
+ color: #4f748e;
+}
+
+.akismet-section-header__actions {
+ line-height: 1.75rem;
+}
+
+.akismet-setup-instructions {
+ text-align: center;
+}
+
+.akismet-setup-instructions form {
+ padding-bottom: 1.5rem;
+}
+
+div.error.akismet-usage-limit-alert {
+ padding: 25px 15px 25px 45px;
+ display: flex;
+ align-items: center;
+}
+
+#akismet-plugin-container .akismet-usage-limit-alert {
+ margin: 0 auto 0.625rem auto;
+ box-sizing: border-box;
+ box-shadow: 0 0 0 1px rgba(200, 215, 225, 0.5), 0 1px 2px #e9eff3;
+ border: none;
+ border-right: 4px solid #d63638;
+}
+
+.akismet-usage-limit-alert .akismet-usage-limit-logo {
+ width: 38px;
+ min-width: 38px;
+ height: 38px;
+ border-radius: 20px;
+ margin-left: 18px;
+ background: black;
+ position: relative;
+}
+
+.akismet-usage-limit-alert .akismet-usage-limit-logo img {
+ position: absolute;
+ width: 22px;
+ right: 8px;
+ top: 10px;
+}
+
+.akismet-usage-limit-alert .akismet-usage-limit-text {
+ flex-grow: 1;
+ margin-left: 18px;
+}
+
+.akismet-usage-limit-alert h3 {
+ margin: 0;
+}
+
+.akismet-usage-limit-alert .akismet-usage-limit-cta {
+ text-align: left;
+}
+
+#akismet-plugin-container .akismet-usage-limit-cta a {
+ color: #d63638;
+}
+
+@media (max-width: 550px) {
+ div.error.akismet-usage-limit-alert {
+ display: block;
+ }
+
+ .akismet-usage-limit-alert .akismet-usage-limit-logo,
+ .akismet-usage-limit-alert .akismet-usage-limit-text {
+ margin-bottom: 15px;
+ }
+
+ .akismet-usage-limit-alert .akismet-usage-limit-cta {
+ text-align: right;
+ }
+} \ No newline at end of file