/* ⚠️  GENERATED FILE — DO NOT EDIT.
   Source:      design/admin.css
   Regenerate:  python execution/build_tokens.py
   Edits here are overwritten on the next run. */

/* ═══════════════════════════════════════════════════════════════════════════
   admin.css — hand-written CSS for the WP Admin UI on .academy
   ═══════════════════════════════════════════════════════════════════════════

   Owner decision, 2026-08-06: TWO custom CSS files and only two —
       design/admin.css     for the WP Admin screens on .academy
       design/landing.css   for the sales landing pages on .net
   Anything else must be Pico. If Pico already styles it, do not restyle it.

   ── RULES ─────────────────────────────────────────────────────────────────
   1. New CSS for the WP Admin UI on .academy goes HERE. No other file, no inline <style> in PHP,
      no style="" attributes in markup.
   2. BEFORE adding a block, Ctrl+F this file. That is why it exists.
   3. If Pico already handles it, delete your rule instead of writing it.
      Test: remove the rule and reload — no visual change means Pico had it.
   4. Colours and sizes come from --kc-* variables, never hard-coded hex.

   Generated into plugins/kind-content-academy/assets/admin.css
   Run: python execution/build_tokens.py   —  EDIT THIS FILE ONLY.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ─── 1. SHARED BASE ────────────────────────────────────────────────────────
   Applies to both sites. The only place allowed to set project-wide rules. */

/* Images never overflow their container.
   ⚠️ Trap 22: the .net theme ships `img{height:auto}`, which overrides any
   `aspect-ratio` set on an <img>. To force a ratio, put it on the WRAPPER div
   and give the image `width:100%;height:100%`. */
.kc img,
.kcx img { max-width: 100%; }

/* Long unbroken strings must still wrap.
   ⚠️ Real content on the sales pages: "Always-on,Performance,Storytelling,SEO"
   — commas with NO space after them. Browsers treat that as one single word
   and it overflows horizontally. This typing style appears throughout the
   copy, so the fix belongs in CSS, not in each sentence. */
.kc, .kcx { overflow-wrap: anywhere; }

/* ─── 2. COMPONENTS PICO DOES NOT PROVIDE ───────────────────────────────────
   Only things Pico genuinely lacks. Before adding here, check
   https://picocss.com/docs first. */

/* Status pill (on/off) — Pico has no "pill" component.
   Moved here from `.kca-status-pill` in kca-admin.css on 2026-08-06, visuals
   unchanged.
   ⚠️ Written as `.kc-pill span.kc-pill__dot`, NOT `.kc-pill .kc-pill__dot`.
   Trap 27: the LiteSpeed CSS minifier eats the space before a dot, turning
   `.a .b` into `.a.b` ("element having BOTH classes"), so the rule silently
   never matches. Always put a tag name after the space. */
.kc-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  border-radius: 9999px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  cursor: pointer;
  user-select: none;
  border: 1px solid transparent;
  outline: none;
  transition: all .2s cubic-bezier(.4, 0, .2, 1);
  box-shadow: 0 1px 2px rgba(0, 0, 0, .04);
}
.kc-pill span.kc-pill__dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  transition: background-color .2s ease;
}
.kc-pill.is-active                   { background: #ecfdf5; color: #047857; border-color: #a7f3d0; }
.kc-pill.is-active span.kc-pill__dot { background: #10b981; box-shadow: 0 0 5px rgba(16,185,129,.5); }
.kc-pill.is-active:hover             { background: var(--kc-warning-bg); color: #b45309; border-color: #fde68a; }
.kc-pill.is-active:hover span.kc-pill__dot { background: #f59e0b; box-shadow: none; }
.kc-pill.is-paused                   { background: var(--kc-bg-muted); color: var(--kc-text-sub); border-color: var(--kc-border-mid); }
.kc-pill.is-paused span.kc-pill__dot { background: var(--kc-text-faint); }
.kc-pill.is-paused:hover             { background: #ecfdf5; color: #047857; border-color: #a7f3d0; }
.kc-pill.is-paused:hover span.kc-pill__dot { background: #10b981; }
.kc-pill.is-cho                      { opacity: .6; pointer-events: none; }

/* ─── 3. ADMIN ONLY (.academy) ──────────────────────────────────────────────
   Everything sits inside `.pico`, so WP Admin's own chrome is never touched.

   ⚠️ MERGED FROM kca-admin.css on 2026-08-06. There is no longer a second CSS
   file: the owner asked "why two files, kc.css and kca-admin.css?" and the honest
   answer was that there was no reason — the rule at the top of this file already
   said ALL css lives here, and section 3 had been left empty by mistake.

   What survived the move to Pico: only components Pico genuinely lacks.
   Buttons, cards, tables, headers and form fields were DELETED — Pico styles the
   plain <button>/<article>/<table>/<header>/<input> elements directly.
   Before adding anything here, re-read rule 3 at the top of this file. */

/**
 * Kind Content Academy — Admin Stylesheet v3.4
 * Design: Clean / Centered / Modern
 */

/* ── Base ── */
.kca-wrap * { box-sizing: border-box; }
.kca-wrap {
    max-width: 960px;
    margin: 32px auto 60px;
    padding: 0 24px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: #1e293b;
}
.kca-title--page { font-size: 22px; font-weight: 800; color: var(--kc-text); margin: 0; letter-spacing: -0.3px; }
.kca-page-subtitle { font-size: 13px; color: var(--kc-text-sub); margin: 4px 0 0; }

/* ── Stats ── */
.kca-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 24px;
}
.kca-stat {
    background: #fff;
    border: 1px solid var(--kc-border);
    border-radius: 12px;
    padding: 24px;
    position: relative;
    overflow: hidden;
    transition: box-shadow 0.2s, transform 0.2s;
}
.kca-stat:hover { box-shadow: 0 4px 16px rgba(0,0,0,0.06); transform: translateY(-1px); }
.kca-stat-number { font-size: 32px; font-weight: 800; color: var(--kc-text); line-height: 1; margin-bottom: 8px; }
.kca-label--stat { font-size: 14px; color: var(--kc-text-sub); font-weight: 600; }
.kca-stat-green .kca-stat-number { color: #16a34a; }
.kca-stat-blue .kca-stat-number { color: #1d4ed8; }
.kca-stat-red .kca-stat-number { color: var(--kc-danger); }

/* ── Seamless Toolbar → Card ── */
.kca-toolbar--seamless {
    margin-bottom: 0 !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-bottom-color: transparent !important;
}

/* ── Toolbar & Search ── */
.kca-toolbar {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    background: #fff;
    border: 1px solid var(--kc-border);
    border-radius: 12px;
    flex-wrap: wrap;
    margin-bottom: 20px;
    box-shadow: 0 1px 2px rgba(0,0,0,0.02);
}
.kca-label--count { font-size: 13px; color: var(--kc-text-sub); white-space: nowrap; margin-left: auto; }
.kca-label--count strong { color: var(--kc-text); font-weight: 700; }

/* ── Buttons ── */
.kca-row--btn { display: flex; gap: 12px; align-items: center; margin-top: 24px; }

/* ── Action buttons in table ── */
.kca-btn--action {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    background: #fff;
    border: 1px solid var(--kc-border);
    border-radius: 6px;
    font-size: 13px;
    font-weight: 600;
    color: var(--kc-text-mid);
    text-decoration: none;
    cursor: pointer;
    transition: all 0.15s;
}
.kca-btn--action:hover { background: var(--kc-bg-muted); border-color: var(--kc-border-mid); color: var(--kc-text); }
.kca-btn--action .dashicons { font-size: 14px; width: 14px; height: 14px; }

/* ── Badges ── */
.kca-badge { display: inline-block; padding: 3px 10px; border-radius: 20px; font-size: 12px; font-weight: 600; white-space: nowrap; }
.kca-badge--green { background: var(--kc-success-bg); color: var(--kc-success); }
.kca-badge--blue  { background: var(--kc-info-bg); color: var(--kc-info); }
.kca-badge--gray  { background: var(--kc-border-soft); color: #475569; }
.kca-badge--winner { background: var(--kc-warning-bg); color: var(--kc-warning); }

/* ── Status Switch Pills ── */
/* ── Alerts ── */
.kca-box--result { margin-top: 16px; padding: 14px 18px; border-radius: 8px; font-size: 14px; line-height: 1.6; border: 1px solid var(--kc-border); background: var(--kc-bg-muted); }
.kca-box--result.kca-success { background: #f0fdf4; border-color: #bbf7d0; color: var(--kc-success); }
.kca-box--result.kca-error { background: var(--kc-danger-bg); border-color: #fecaca; color: #991b1b; }
.kca-box--result.kca-info { background: #eff6ff; border-color: #bfdbfe; color: #1e3a8a; }

/* ── Progress ── */
#kca-email-progress { margin-top: 20px; padding: 20px; background: var(--kc-bg-muted); border: 1px solid var(--kc-border); border-radius: 10px; }
.kca-label--progress { display: flex; justify-content: space-between; font-size: 14px; font-weight: 600; color: var(--kc-text); margin-bottom: 10px; }
.kca-progress-bar { width: 100%; height: 10px; background: var(--kc-border); border-radius: 10px; overflow: hidden; }
.kca-progress-fill { height: 100%; background: #22c55e; border-radius: 10px; transition: width 0.3s ease; }
#kca-send-status { font-size: 13px; color: var(--kc-text-sub); margin-top: 8px; text-align: center; }
.kca-audience-segments { margin-bottom: 24px; }
.kca-help-text { font-size: 12px; color: var(--kc-text-sub); margin-top: 6px; line-height: 1.5; }

/* ── Inline create ── */
.kca-inline-create { display: flex; gap: 12px; align-items: flex-end; }

/* ── Steps ── */
.kca-steps { display: flex; gap: 0; margin-bottom: 32px; border-bottom: 2px solid var(--kc-border-soft); }
.kca-step { display: flex; align-items: center; gap: 10px; padding: 14px 24px 14px 0; color: var(--kc-text-faint); font-size: 14px; font-weight: 600; border-bottom: 2px solid transparent; margin-bottom: -2px; cursor: default; }
.kca-step-num { width: 28px; height: 28px; border-radius: 50%; background: var(--kc-border-soft); color: var(--kc-text-faint); display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 700; flex-shrink: 0; }
.kca-step.active { color: var(--kc-text); border-bottom-color: var(--kc-cyan); }
.kca-step.active .kca-step-num { background: var(--kc-cyan); color: #fff; }
.kca-step.done .kca-step-num { background: #22c55e; color: #fff; }
.kca-step.done { color: var(--kc-text-sub); }

/* ── Audience Selector ── */
.kca-grid--audience { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-bottom: 24px; }
.kca-audience-option { border: 2px solid var(--kc-border); border-radius: 10px; padding: 14px 16px; cursor: pointer; transition: all 0.15s; background: #fff; position: relative; }
.kca-audience-option:hover { border-color: var(--kc-border-mid); background: var(--kc-bg-muted); }
.kca-audience-option.selected { border-color: var(--kc-text); background: #fff; }
.kca-audience-option.selected::after { content: '✓'; position: absolute; top: 10px; right: 12px; width: 20px; height: 20px; background: var(--kc-text); color: #fff; border-radius: 50%; font-size: 11px; font-weight: 700; display: flex; align-items: center; justify-content: center; line-height: 20px; text-align: center; }
.kca-audience-option input[type="radio"] { display: none; }
.kca-icon--audience { font-size: 20px; display: block; margin-bottom: 6px; }
.kca-label--audience { font-size: 14px; font-weight: 600; color: var(--kc-text); display: block; }
.kca-meta--audience { font-size: 12px; color: var(--kc-text-sub); margin-top: 2px; }

/* ── Toggle ── */
.kca-toggle-section { background: var(--kc-bg-muted); border: 1px solid var(--kc-border-mid); border-radius: 10px; overflow: hidden; margin-bottom: 24px; }
.kca-toggle-head { display: flex; align-items: center; justify-content: space-between; padding: 14px 18px; cursor: pointer; user-select: none; }
.kca-toggle-head:hover { background: var(--kc-border-soft); }
.kca-label--toggle { font-size: 14px; font-weight: 600; color: var(--kc-text-mid); display: flex; align-items: center; gap: 8px; }
.kca-toggle-body { padding: 0 18px 18px; display: none; }
.kca-toggle-body.open { display: block; }

/* iOS Toggle Switch */
.kca-switch { position: relative; display: inline-block; width: 44px; height: 24px; flex-shrink: 0; }
.kca-switch input { display: none; }
.kca-switch-track { position: absolute; inset: 0; background: var(--kc-border-mid); border-radius: 24px; cursor: pointer; transition: background 0.2s; }
.kca-switch input:checked + .kca-switch-track { background: var(--kc-text); }
.kca-switch-track::after { content: ''; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,0.2); transition: transform 0.2s; }
.kca-switch input:checked + .kca-switch-track::after { transform: translateX(20px); }

/* ── Variant Builder ── */
.kca-variant-builder { display: flex; flex-direction: column; gap: 10px; margin-bottom: 16px; }
.kca-row--variant { display: flex; align-items: center; gap: 12px; background: var(--kc-bg-muted); border: 1px solid var(--kc-border); border-radius: 8px; padding: 12px 14px; }
.kca-badge--variant { width: 28px; height: 28px; border-radius: 6px; background: var(--kc-text); color: #fff; font-size: 13px; font-weight: 700; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.kca-badge--variant.kca-badge--b { background: var(--kc-text-sub); }
.kca-badge--variant.kca-badge--c { background: var(--kc-text-faint); }
.kca-variant-subject { flex: 1; border: 1px solid var(--kc-border); border-radius: 6px; padding: 10px 14px; font-size: 14px; font-family: inherit; background: #fff; color: var(--kc-text); outline: none; transition: border-color 0.15s; }
.kca-variant-subject:focus { border-color: var(--kc-text); }
.kca-variant-remove { width: 32px; height: 32px; border: 1px solid var(--kc-border); border-radius: 6px; background: #fff; color: var(--kc-text-faint); cursor: pointer; display: flex; align-items: center; justify-content: center; font-size: 16px; flex-shrink: 0; transition: all 0.15s; }
.kca-variant-remove:hover { background: #fee2e2; border-color: #fca5a5; color: var(--kc-danger); }
.kca-btn--add-variant { display: inline-flex; align-items: center; gap: 6px; padding: 8px 16px; background: #fff; border: 1px dashed var(--kc-border-mid); border-radius: 8px; font-size: 13px; font-weight: 600; color: var(--kc-text-sub); cursor: pointer; transition: all 0.15s; width: 100%; justify-content: center; }
.kca-btn--add-variant:hover { border-color: var(--kc-text-faint); color: var(--kc-text-mid); background: var(--kc-bg-muted); }

/* ── Campaigns ── */
.kca-grid--campaigns { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 16px; margin-bottom: 24px; }
.kca-campaign-name { font-size: 15px; font-weight: 700; color: var(--kc-text); }
.kca-campaign-stats { display: flex; gap: 12px; }
.kca-campaign-stat { display: flex; flex-direction: column; padding: 8px 10px; border-radius: 8px; background: var(--kc-bg-muted); flex: 1; }
.kca-stat-num { font-size: 18px; font-weight: 800; color: var(--kc-text); }
.kca-stat-lbl { font-size: 11px; color: var(--kc-text-faint); text-transform: uppercase; letter-spacing: 0.5px; }
.kca-stat-green .kca-stat-num { color: #16a34a; }
.kca-stat-blue .kca-stat-num { color: var(--kc-link); }
.kca-campaign-actions { display: flex; gap: 8px; margin-top: auto; }

/* ── Audience 2-step selector ── */
.kca-grid--audience-type { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 0; }
.kca-icon--type { font-size: 28px; line-height: 1; }
.kca-label--type { font-size: 15px; font-weight: 700; color: var(--kc-text); }
.kca-meta--type { font-size: 12px; color: var(--kc-text-sub); }
.kca-audience-segments { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--kc-border-soft); animation: kca-fadein .2s ease; }
@keyframes kca-fadein { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }
.kca-label--segment { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--kc-text-faint); margin-bottom: 10px; }

/* ── Sequence Steps ── */
.kca-row--step { transition: background 0.15s; }
.kca-row--step:hover { background: var(--kc-bg-muted); }
.kca-step-number { width: 32px; height: 32px; background: var(--kc-cyan); color: #fff; border-radius: 50%; font-size: 14px; font-weight: 700; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.kca-step-info { flex: 1; display: flex; flex-direction: column; gap: 3px; }
.kca-step-info strong { font-size: 14px; color: var(--kc-text); }
.kca-step-delay { font-size: 12px; color: var(--kc-text-sub); }

/* ── Detail Panel ── */
.kca-panel--detail { display: none; background: var(--kc-bg-muted); border-left: 3px solid var(--kc-cyan); padding: 16px 24px; margin-left: 36px; border-radius: 0 8px 8px 0; animation: kca-fadein .2s ease; }
.kca-panel--detail.open { display: block; }
.kca-grid--detail-panel { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.kca-detail-block { background: #fff; border: 1px solid var(--kc-border); border-radius: 8px; padding: 14px 16px; }
.kca-title--detail-block { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--kc-text-faint); margin-bottom: 10px; }
.kca-detail-block ul { margin: 0; padding: 0; list-style: none; }
.kca-detail-block li { font-size: 13px; color: var(--kc-text-mid); padding: 4px 0; border-bottom: 1px solid var(--kc-border-soft); display: flex; align-items: center; gap: 6px; }
.kca-detail-block li:last-child { border-bottom: none; }
.kca-detail-num { font-size: 22px; font-weight: 800; color: var(--kc-text); line-height: 1; }
.kca-detail-sub { font-size: 12px; color: var(--kc-text-sub); }

/* ── Sequence Aggregate ── */
.kca-seq-aggregate { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-bottom: 20px; }
.kca-seq-aggregate .kca-stat { padding: 18px 20px; }
.kca-seq-aggregate .kca-stat-number { font-size: 26px; }

/* ── Utility ── */
.kca-center { text-align: center; }

/* ── Responsive ── */
@media (min-width: 1600px) { .kca-wrap { max-width: 1060px; } }
@media (max-width: 900px) {
    .kca-wrap { padding: 0 12px; }
    .kca-stats { grid-template-columns: repeat(2, 1fr); }
    .kca-grid--audience { grid-template-columns: repeat(2, 1fr); }
    .kca-grid--campaigns { grid-template-columns: 1fr; }
    .kca-grid--audience-type { grid-template-columns: 1fr; }
    .kca-seq-aggregate { grid-template-columns: repeat(2, 1fr); }
    .kca-grid--detail-panel { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .kca-wrap { padding: 0 8px; }
    .kca-stats { grid-template-columns: 1fr 1fr; gap: 12px; }
    .kca-grid--audience { grid-template-columns: 1fr; }
}

/* ─── 5. WP LOGIN SCREEN (.academy) ─────────────────────────────────────────
   Moved out of class-kca-i18n.php and class-kca-auth.php on 2026-08-06.
   Those files printed <style> blocks straight into the page, so no CSS scan of
   the project could see them — 36 rules were invisible for months.

   ⚠️ The login screen is WordPress's own page and is NOT inside `.pico`, so the
   conditional Pico build does not reach it. That is why these rules are written
   plainly here instead of relying on Pico defaults. This is a documented
   exception, not an oversight.
   Loaded via the `login_enqueue_scripts` hook. */

body.login {
                background-color: #f4f6f8;
                font-family: 'Inter', sans-serif;
                display: flex;
                align-items: center;
                justify-content: center;
                height: 100vh;
            }
            body.login h1 { display: none; }
            #login {
                width: 420px !important;
                padding: 0 0 30px 0 !important;
                background: #fff;
                border-radius: 20px;
                box-shadow: 0 12px 48px rgba(0,0,0,.1);
                margin: 0 !important;
                position: relative;
            }
            #login::before {
                content: 'Kind Content Academy';
                display: block;
                text-align: center;
                color: var(--kc-cyan);
                font-size: 26px;
                font-weight: 800;
                padding: 40px 20px 30px;
                letter-spacing: .5px;
            }
            .login form {
                background: transparent !important;
                border: none !important;
                box-shadow: none !important;
                padding: 0 48px 20px !important;
                margin: 0 !important;
            }
            .login label { font-weight: 600 !important; color: #1a1a2e; font-size: 14px; display: block; margin-bottom: 6px; }
            .login form input[type="text"],
            .login form input[type="password"],
            .login form .input {
                border-radius: 8px !important;
                border: 1px solid #d1d5db !important;
                padding: 14px 16px !important;
                font-size: 15px !important;
                font-weight: 500 !important;
                color: #1a1a2e !important;
                background: #fdfdfd !important;
                margin: 0 !important;
                width: 100% !important;
                box-sizing: border-box !important;
            }
            .login form p { margin: 0 0 24px 0 !important; }
            .user-pass-wrap { margin: 0 0 24px 0 !important; position: relative; width: 100%; }
            .wp-pwd { position: relative; }
            .login form .input.password-input { padding-right: 40px !important; }
            .wp-pwd .wp-hide-pw {
                position: absolute !important; right: 8px !important; top: 50% !important;
                transform: translateY(-50%) !important; margin: 0 !important; padding: 0 !important;
                width: 24px !important; min-width: 24px !important; height: 24px !important;
                color: #9ca3af !important; background: transparent !important; border: none !important;
                box-shadow: none !important; cursor: pointer; z-index: 10;
                display: flex !important; align-items: center !important; justify-content: center !important;
            }
            .wp-pwd .wp-hide-pw .dashicons { top: 0 !important; margin: 0 !important; }
            .login form .input:focus { border-color: var(--kc-cyan); box-shadow: 0 0 0 2px rgba(19,195,227,.2); }
            .wp-core-ui .button-primary {
                background: var(--kc-cyan) !important;
                border-color: #0faecc !important;
                border-radius: 8px !important;
                height: 48px !important;
                font-size: 16px !important;
                text-transform: none;
                font-weight: 700;
                width: 100%;
                margin-top: 0 !important;
                box-shadow: none !important;
                transition: all .3s ease;
                text-decoration: none !important;
            }
            .wp-core-ui .button-primary:hover { background: #00d084 !important; border-color: #00d084 !important; transform: translateY(-2px); }
            #login_error, .message, .success { border-left-color: var(--kc-cyan) !important; margin: 0 48px 20px !important; }
            #nav { text-align: center; margin: 0; padding: 20px 0 0; }
            #backtoblog { display: none !important; }
            #nav a { color: #666 !important; text-decoration: none; font-size: 14px; font-weight: 500; transition: color .2s; }
            #nav a:hover { color: var(--kc-cyan) !important; text-decoration: underline; }
            p.submit { float: none !important; margin: 0 !important; }
            .forgetmenot { margin: 0 0 24px 0 !important; display: flex; align-items: center; }
            /* Custom Checkbox */
            .forgetmenot input[type="checkbox"] {
                -webkit-appearance: none !important; appearance: none !important;
                background-color: #fff !important; background-image: none !important;
                width: 20px !important; height: 20px !important;
                border: 2px solid #d1d5db !important; border-radius: 6px !important;
                margin: 0 10px 0 0 !important; display: grid !important; place-content: center !important;
                cursor: pointer; transition: all .2s ease-in-out;
            }
            .forgetmenot input[type="checkbox"]::before {
                content: "" !important; width: 12px !important; height: 12px !important;
                clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%) !important;
                transform: scale(0); transform-origin: bottom left; transition: 120ms transform ease-in-out;
                background-color: #fff !important; background-image: none !important; margin: 0 !important;
            }
            .forgetmenot input[type="checkbox"]:checked { background-color: var(--kc-cyan) !important; border-color: var(--kc-cyan) !important; }
            .forgetmenot input[type="checkbox"]:checked::before { transform: scale(1) !important; }
            .forgetmenot label { font-weight: 500 !important; color: #4b5563; font-size: 14px; margin: 0 !important; cursor: pointer; user-select: none; }

/* Hide WordPress / LearnPress admin notices for students. */
.notice, .update-nag, .lp-setup-notice, .learn-press-message { display: none !important; }
