/* action ai · Settings, Integrations, the Account sheet, Stats & achievements, the level-up moment and the
   skin unlock / preview screens (REDESIGN-R7-SETTINGS-REWARDS-2026-10-07).
   LIFTED from BUILD HANDOVER 2026-10-05: mockups/Profile, Settings + Rewards (22 states) (review round 4).html,
   built by src/areas/profile_settings/profile_settings.py on src/kit/kit.css (+ fx3.css E01 E03 E04 E05 E06 E07
   E08 E12 E14). Every value is the mockup's: its CSS block's shared rules and its "settings", "integrations",
   "account", "stats" and "overlays" sections, plus the kit parts those screens use. The profile rules (and the
   PCSS block) belong to step 6 and are not here.
   Adapted for the app only, as MOCK-ONLY.md and WIRING.md §5 say: SAMPLE data becomes the user's data,
   window.show / the body f-* flags become the real React state and tier, the app's own fonts and icons.
   SCOPE. Every rule sits under one of the R7 roots, each of which carries the opt-in class .kx (fx3.css):
     .r7-settings (SettingsView) · .r7-integ (IntegrationsView) · .r7-stats (StatsScene) · .r7-account
     (AccountSheet) · .r7-install (the install sheet) · .r7-full (LevelUpTakeover, SkinUnlockOverlay,
     SkinPreviewOverlay) · .link-bank-section.kx (LinkBankSection, on Settings and on the Link Bank page).
   Nothing here names a bare kit class at top level, so no other screen can change. UpgradeNudge (step 9) is
   never styled here: no rule reaches an .upgrade-nudge element.
   KIT-1: keyframes carry an r7- prefix and the one custom property this file adds (--r7v, the ring value set
   by QuotaRing) is new, so no name collides with the app's (app/tests/run-kit-class-collisions.mjs). */

@property --r7v{syntax:'<number>';initial-value:0;inherits:false}

/* ── the R7 roots: the redesign is one dark night world, the same in every appearance ───────────────
   As .wall-page does, the roots re-assert the dark theme's neutral tokens locally (surfaces, lines, text),
   so anything inside that reads them (UpgradeNudge, AccountAvatar, HelpSheet) stays legible under Light.
   The skin tokens (--skin-*, read by --accent) are untouched, so a skin still applies. */
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account,.kx.r7-install,.kx.r7-full,.link-bank-section.kx.kx){
  --bg:#0C0C0D;--bg-solid:#0C0C0D;--glass-rgb:12,12,13;--surface:#141416;--surface-2:#1C1C1E;--surface-3:#262628;
  --line:rgba(255,255,255,0.09);--line-strong:rgba(255,255,255,0.16);--text:#F4F4F5;--text-2:rgba(255,255,255,0.74);
  --text-3:rgba(255,255,255,0.56);--danger:#E85D5D;--accent:var(--skin-accent);
  color:var(--t1);-webkit-font-smoothing:antialiased}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats){position:relative;background:var(--kx-bg);min-height:100dvh;
  max-width:none;margin:0;padding:0 0 136px}

/* ── kit parts, scoped (src/kit/kit.css) ──────────────────────────────────────────────────────────── */
/* E01 sky host: behind the top 460px. The root is NOT a stacking context (isolation would trap the fixed overlays it
   holds, the install sheet, Help and the re-parse screen, under the tab dock), so the sky sits at z 0 and the in-flow
   children step above it at z 1; the fixed overlays (.modal-overlay, .ai-modal-backdrop, [data-aa-sheet]) keep theirs. */
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats)>:not(.hsky):not(.modal-overlay):not(.ai-modal-backdrop):not([data-aa-sheet]){position:relative;z-index:1}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats)>.hsky{position:absolute;left:0;right:0;top:0;height:460px;z-index:0;pointer-events:none;-webkit-mask:linear-gradient(#000 55%,transparent);mask:linear-gradient(#000 55%,transparent)}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats)>.hsky::before,:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats)>.hsky::after{content:"";position:absolute;inset:0;background-repeat:repeat}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats)>.hsky::before{background-image:radial-gradient(.6px .6px at 150px 20px,#fff9,transparent),radial-gradient(.6px .6px at 280px 120px,#fff7,transparent),radial-gradient(1px 1px at 20px 30px,#fff8,transparent),radial-gradient(1px 1px at 120px 80px,#fff6,transparent),radial-gradient(1.4px 1.4px at 200px 160px,#fffa,transparent),radial-gradient(1px 1px at 300px 40px,#fff5,transparent),radial-gradient(1px 1px at 60px 200px,#fff7,transparent);background-size:340px 240px;opacity:.28}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats)>.hsky::after{background-image:radial-gradient(1.6px 1.6px at 80px 60px,#C7C0FF,transparent),radial-gradient(1.2px 1.2px at 260px 190px,#FFE7B0,transparent),radial-gradient(1.2px 1.2px at 170px 120px,#B6F5E4,transparent);background-size:360px 280px;opacity:.25}

/* header: 44px back .ib, the small-caps eyebrow centred, 44px help .ib (or a 44px spacer) */
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats) .hd{display:flex;align-items:center;gap:10px;min-height:60px;margin:0;border:0;background:none;box-shadow:none;position:relative;top:auto;backdrop-filter:none;-webkit-backdrop-filter:none;
  /* the app's fixed account button sits in the header's right gutter on every view but Home: the column stays reserved */
  padding:calc(8px + var(--safe-top, 0px)) var(--aa-acct-gutter, 16px) 8px 16px}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats) .hd .dash-back.ib{margin:0}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats) .hd .dash-back.ib::before{display:none}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats) .hd .dash-back.ib svg{width:20px;height:20px}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats) .hd .eb{flex:1;text-align:center;white-space:nowrap;font-size:14px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--t3);font-family:inherit;margin:0}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-full,.kx.r7-account) .ib{width:44px;height:44px;min-width:44px;border-radius:50%;display:grid;place-items:center;flex:none;padding:0;border:0;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);color:var(--t1);cursor:pointer}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-full,.kx.r7-account) .ib svg{width:20px;height:20px}
:is(.kx.r7-integ,.kx.r7-stats) .sp44{width:44px;flex:none}
.kx.r7-settings .pad,.kx.r7-integ .pad,.kx.r7-stats .pad{padding:0 16px}

/* section label with the spectral hairline */
:is(.kx.r7-settings,.kx.r7-stats) .sl{display:flex;align-items:center;gap:12px;margin:24px 16px 10px;font-size:14px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--t3);background:none;border:0;padding:0;font-family:inherit}
:is(.kx.r7-settings,.kx.r7-stats) .sl::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(255,255,255,.14),transparent)}

/* panels and cards */
:is(.kx.r7-settings,.kx.r7-stats,.kx.r7-account,.kx.r7-integ) .panel,.kx.r7-settings .settings-section,.link-bank-section.kx.kx.panel{position:relative;border-radius:22px;overflow:hidden;background:rgba(20,20,24,.55);box-shadow:inset 0 0 0 1px var(--kx-line);padding:16px;border:0;margin:0}
.kx.r7-settings .settings-section::before,.kx.r7-settings .panel::before,.link-bank-section.kx.kx.panel::before{display:none}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account) .pc,.link-bank-section.kx.kx .pc{position:relative;display:flex;align-items:center;gap:12px;padding:14px;border-radius:18px;background:var(--card);box-shadow:inset 0 0 0 1px var(--kx-line);text-align:left;width:100%;border:0;color:var(--t1);font:inherit;min-height:0;margin:0}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account) .pc+.pc,.link-bank-section.kx.kx .pc+.pc{margin-top:10px}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account) .pc .m,.link-bank-section.kx.kx .pc .m{flex:1;min-width:0}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account,.kx.r7-full,.link-bank-section.kx.kx) .t{font-size:16px;font-weight:700;color:#fff}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account,.kx.r7-full,.link-bank-section.kx.kx) .s{font-size:14px;color:var(--t3)}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account) .m>.t,:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account) .m>.s,.link-bank-section.kx.kx .m>.t,.link-bank-section.kx.kx .m>.s{display:block}
:is(.kx.r7-settings,.kx.r7-stats) .pc.col,.link-bank-section.kx.kx .pc.col{flex-direction:column;align-items:stretch;gap:6px}
:is(.kx.r7-settings,.kx.r7-stats,.kx.r7-full) .edge{position:relative;isolation:isolate}
:is(.kx.r7-settings,.kx.r7-stats,.kx.r7-full) .edge::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--edge);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.8}

/* buttons: the one loud .cta / .go; everything else quiet */
:is(.kx.r7-settings,.kx.r7-stats,.kx.r7-full,.kx.r7-account,.kx.r7-install,.link-bank-section.kx.kx) .sec{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:52px;padding:0 16px;border-radius:16px;background:var(--glass);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);border:0;font:inherit;font-size:16px;font-weight:600;color:var(--t2);text-decoration:none;cursor:pointer;margin:0;letter-spacing:normal;text-transform:none;min-width:0;height:auto}
:is(.kx.r7-settings,.kx.r7-stats,.kx.r7-full,.kx.r7-account,.kx.r7-install,.link-bank-section.kx.kx) .sec svg{width:18px;height:18px}
:is(.kx.r7-settings,.kx.r7-stats,.kx.r7-full,.kx.r7-account,.kx.r7-install,.link-bank-section.kx.kx) .sec[disabled],:is(.kx.r7-stats,.kx.r7-full) .cta:not(.upgrade-nudge-cta)[disabled]{opacity:.5}
:is(.kx.r7-settings,.kx.r7-stats,.kx.r7-full,.kx.r7-account,.link-bank-section.kx.kx) .sec.hi{color:#fff;box-shadow:inset 0 0 0 1.5px var(--peri)}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-full,.link-bank-section.kx.kx) :is(.sec,.ln,.ghost,.qb).danger,:is(.kx.r7-settings,.kx.r7-stats) .danger{color:var(--coral)}
:is(.kx.r7-stats,.kx.r7-full) .cta:not(.upgrade-nudge-cta){display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:#fff;color:#0b0b12;font:inherit;font-weight:800;font-size:17px;border-radius:18px;min-height:56px;padding:0 18px;position:relative;isolation:isolate;border:0;box-shadow:0 0 0 2px var(--kx-bg),0 18px 40px -16px rgba(162,155,254,.6);cursor:pointer;letter-spacing:normal;text-transform:none}
:is(.kx.r7-stats,.kx.r7-full) .cta:not(.upgrade-nudge-cta)::after{content:"";position:absolute;inset:-3px;border-radius:21px;padding:2.5px;background:var(--conic);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:kx-spin 4s linear infinite;pointer-events:none}
:is(.kx.r7-stats,.kx.r7-full) .cta:not(.upgrade-nudge-cta) svg{width:18px;height:18px}
:is(.kx.r7-stats,.kx.r7-full) .go{flex:none;min-width:76px;height:44px;padding:0 16px;border-radius:99px;background:#F4F4F5;color:#0b0b12;font:inherit;font-weight:800;font-size:15px;position:relative;isolation:isolate;border:0;cursor:pointer}
:is(.kx.r7-stats,.kx.r7-full) .go::before{content:"";position:absolute;inset:-4px;border-radius:99px;padding:1.5px;background:var(--conic);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:kx-spin 12s linear infinite;opacity:.75}
:is(.kx.r7-stats,.kx.r7-full) .ghost{min-height:44px;padding:0 12px;font:inherit;font-size:16px;font-weight:600;color:var(--t3);background:none;border:0;box-shadow:none;cursor:pointer;width:auto}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.link-bank-section.kx.kx) .qb{flex:none;width:44px;height:44px;min-width:44px;border-radius:50%;display:grid;place-items:center;color:var(--t2);background:var(--glass);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);border:0;padding:0;font-size:18px;cursor:pointer}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.link-bank-section.kx.kx) .ln{flex:none;height:44px;padding:0 16px;border-radius:99px;font:inherit;font-size:14px;font-weight:600;color:var(--t2);background:none;border:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;width:auto;min-height:44px;margin:0;text-transform:none;letter-spacing:normal}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.link-bank-section.kx.kx) .ln em{font-style:normal;color:var(--t4)}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.link-bank-section.kx.kx) .ln.on{background:#F4F4F5;color:#0b0b0d;box-shadow:none}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.link-bank-section.kx.kx) .ln.on em{color:rgba(0,0,0,.5)}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-full,.kx.r7-account) .link{color:var(--peri2);font-weight:700;font-size:16px;min-height:44px;display:inline-flex;align-items:center;gap:4px;text-decoration:none}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-full,.kx.r7-account) .link svg{width:16px;height:16px}

/* tags */
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account) .tag{display:inline-flex;align-items:center;height:28px;padding:0 10px;border-radius:99px;font-size:14px;font-weight:700;color:var(--peri2);background:rgba(162,155,254,.14);border:0;letter-spacing:normal;text-transform:none;line-height:1;width:auto}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account) .tag.amber,.kx.r7-stats .tag-take{color:var(--kx-amber);background:rgba(253,203,110,.14)}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account) .tag.mint,.kx.r7-stats .tag-give{color:var(--mint);background:rgba(85,239,196,.14)}
:is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account) .tag.coral{color:var(--coral);background:rgba(255,118,118,.14)}

/* fields, labels, the kit toggle */
:is(.kx.r7-settings,.kx.r7-stats,.link-bank-section.kx.kx) .lbl{display:block;font-size:14px;font-weight:700;color:var(--t3);margin:16px 0 8px}
:is(.kx.r7-settings,.link-bank-section.kx.kx) .field{display:flex;align-items:center;gap:10px;min-height:52px;padding:0 14px;border-radius:16px;background:var(--glass);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);border:0}
:is(.kx.r7-settings,.link-bank-section.kx.kx) .field:focus-within{box-shadow:inset 0 0 0 1px rgba(162,155,254,.55),0 0 24px -8px rgba(162,155,254,.55)}
:is(.kx.r7-settings,.link-bank-section.kx.kx) .field input,:is(.kx.r7-settings,.link-bank-section.kx.kx) .field code{flex:1;min-width:0;min-height:44px;color:#fff;font:inherit;font-size:16px;background:none;border:0;outline:0;padding:0;box-shadow:none;width:auto}
:is(.kx.r7-settings,.kx.r7-stats,.link-bank-section.kx.kx) .toggle{width:52px;height:32px;border-radius:99px;background:#26262b;position:relative;flex:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:background .3s var(--out)}
:is(.kx.r7-settings,.kx.r7-stats,.link-bank-section.kx.kx) .toggle::after{content:"";position:absolute;top:3px;left:3px;width:26px;height:26px;border-radius:50%;background:#fff;transition:transform .35s var(--spring)}
:is(.kx.r7-settings,.kx.r7-stats,.link-bank-section.kx.kx) .toggle.on{background:var(--mint)}
:is(.kx.r7-settings,.kx.r7-stats,.link-bank-section.kx.kx) .toggle.on::after{transform:translateX(20px)}
/* every text box inside R7 is a kit .field: 52px, 16px text, 16px radius (the app's own inputs and textareas) */
:is(.kx.r7-settings .settings-section,.link-bank-section.kx.kx) :is(input.settings-input,select.settings-input,textarea.settings-input,input:not([type]),input[type=text],input[type=email],input[type=url],input[type=number],textarea):not(.field input):not([type=checkbox]):not([type=file]){
  display:block;width:100%!important;min-height:52px!important;padding:14px!important;border-radius:16px!important;background:var(--glass)!important;
  border:0!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)!important;color:#fff!important;font:inherit!important;font-size:16px!important;line-height:1.5!important;margin:0;outline:0;transition:box-shadow .2s var(--out)}
:is(.kx.r7-settings .settings-section,.link-bank-section.kx.kx) :is(input,textarea,select):focus{box-shadow:inset 0 0 0 1px rgba(162,155,254,.55),0 0 24px -8px rgba(162,155,254,.55)!important}
:is(.kx.r7-settings .settings-section,.link-bank-section.kx.kx) :is(input,textarea)::placeholder{color:var(--t4)}
:is(.kx.r7-settings .settings-section,.link-bank-section.kx.kx) textarea{resize:none!important;min-height:96px!important}
/* About you's field column (its JSX is not edited): the kit rhythm, label 16px above each field */
.kx.r7-settings .settings-section>div[style*="flex-direction: column"]{gap:0!important;margin-top:0!important}
.kx.r7-settings .settings-section select.settings-input,.link-bank-section.kx.kx select.settings-input{appearance:none;-webkit-appearance:none;padding-right:44px!important;
  background:var(--glass) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.56)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center/20px 20px!important}
.kx.r7-settings .settings-section select option{background:#111}
:is(.kx.r7-settings .settings-section,.link-bank-section.kx.kx) .settings-label{display:block;font-size:14px;font-weight:700;color:var(--t3);margin:16px 0 8px}

/* E03 · panels cascade in when the screen opens; E05 · bars draw in (fx3.css runs them on .fxin / .bar i;
   the app's own fills take the same 900ms draw here) */
@keyframes r7-bar{from{transform:scaleX(0)}}
:is(.kx.r7-settings,.kx.r7-stats) :is(.goal-bar-fill,.level-meter-fill,.stats-rep-bar-track>span,.stats-an-seg,.stats-an-cobar>span,.stats-roi-bar>span,.warmth-seg){transform-origin:left;animation:r7-bar .9s .12s var(--out) both}

/* ── settings ─────────────────────────────────────────────────────────────────────────────────────── */
.kx.r7-settings>:is(.settings-section,.copy-diagnostics){margin-left:16px;margin-right:16px}
.kx.r7-settings .settings-section{margin-top:0;margin-bottom:0}
.kx.r7-settings .settings-section+.settings-section{margin-top:12px}
.kx.r7-settings .st,.link-bank-section.kx.kx .st{font-size:16px;font-weight:700;margin-bottom:8px;color:#fff;letter-spacing:normal;text-transform:none;font-family:inherit}
.kx.r7-settings .st.danger{color:var(--coral)}
.kx.r7-settings .settings-section-sub,.link-bank-section.kx.kx .settings-section-sub{font-size:16px;line-height:1.45;color:var(--t3);margin:0}
.kx.r7-settings .settings-section-sub strong{color:#fff;font-weight:700}
.kx.r7-settings .settings-section .sec,.link-bank-section.kx.kx .sec{margin-top:12px}
.kx.r7-settings .settings-actions,.link-bank-section.kx.kx .settings-actions{display:block;margin:0;padding:0;gap:0}
.kx.r7-settings .settings-actions>.sec+.sec,.link-bank-section.kx.kx .settings-actions>.sec+.sec{margin-top:12px}
.kx.r7-settings .settings-actions.chips{display:flex;flex-wrap:wrap;gap:8px;padding:0;overflow:visible}
.kx.r7-settings .settings-actions.chips>.ln{margin:0}
/* About you (its JSX is not edited: the look reaches it here) */
.kx.r7-settings .settings-section label:not(.pc):not(.lbl):not(.settings-label){display:block;font-size:14px!important;font-weight:700!important;color:var(--t3)!important;margin:16px 0 8px!important}
.kx.r7-settings .settings-section :is(input,textarea)+div:not(.signature-counter):not([class]){font-size:14px!important;color:var(--t4)!important;margin-top:4px!important;text-align:right}
.kx.r7-settings .signature-counter{font-size:14px;color:var(--t4);margin-top:4px;text-align:right}
/* Priorities (prio-settings-* kept) */
.kx.r7-settings .prio-settings-summary{margin:4px 0 0}
.kx.r7-settings .prio-settings-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--kx-line);font-size:16px}
.kx.r7-settings .prio-settings-label{color:var(--t3);font-size:14px}
.kx.r7-settings .prio-settings-goals{margin-top:12px}
.kx.r7-settings .prio-settings-goals-title{font-size:14px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--t3);margin-bottom:8px}
.kx.r7-settings .prio-settings-goal-row{display:flex;align-items:center;gap:10px;min-height:52px;padding:4px 4px 4px 14px;border-radius:18px;background:var(--card);box-shadow:inset 0 0 0 1px var(--kx-line);font-size:16px}
.kx.r7-settings .prio-settings-goal-row+.prio-settings-goal-row{margin-top:8px}
.kx.r7-settings .prio-settings-goal-label{flex:1;min-width:0;color:#fff}
.kx.r7-settings .prio-settings-goal-x{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--glass);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);border:0;color:var(--t2)}
.kx.r7-settings .prio-settings-goal-x svg{width:18px;height:18px}
/* Your data */
.kx.r7-settings .dblks{display:block}
.kx.r7-settings .dblk+.dblk{margin-top:18px}
.kx.r7-settings .dblk .t{font-size:16px;font-weight:700}
.kx.r7-settings .dblk .s{font-size:16px;line-height:1.45;margin-top:2px}
.kx.r7-settings .dblk .sec{margin-top:10px}
/* the parser learnings card (founder) */
.kx.r7-settings .pc.lrn{margin-top:12px;font-size:16px}
/* skins: the 2-column grid of .pc.sk cards, 52px swatch, lock top-right, the active card's spectral edge */
.kx.r7-settings .skg{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}
.kx.r7-settings .skg .pc+.pc{margin-top:0}
.kx.r7-settings .pc.sk{flex-direction:column;align-items:flex-start;gap:4px;padding:10px;min-height:0;height:auto;aspect-ratio:auto;transform:none;outline:0;border:0}
.kx.r7-settings .sk .sw{display:block;width:100%;height:52px;border-radius:12px;box-shadow:inset 0 0 0 1px var(--kx-line);margin:0;aspect-ratio:auto}
.kx.r7-settings .sk .t{font-size:16px;font-weight:700;color:#fff;margin:0}
/* the mockup's swatch per skin (SKINS in profile_settings.py), keyed on the card's own thumb class */
.kx.r7-settings .sk .sw.ash{background:#2a2a30}.kx.r7-settings .sk .sw.clay{background:#FF7676}.kx.r7-settings .sk .sw.moss{background:#55EFC4}
.kx.r7-settings .sk .sw.dusk{background:#A29BFE}.kx.r7-settings .sk .sw.brass{background:#FDCB6E}.kx.r7-settings .sk .sw.oxblood{background:#c4566a}
.kx.r7-settings .sk .sw.aurora{background:var(--edge)}.kx.r7-settings .sk .sw.noir{background:radial-gradient(60% 80% at 50% 30%,rgba(162,155,254,.45),#000)}
.kx.r7-settings .sk.is-active .s{color:var(--t3)}
.kx.r7-settings .sk .s{font-size:14px;color:var(--t3);margin:0;text-transform:none;letter-spacing:normal}
.kx.r7-settings .sk.edge::before{display:none}
.kx.r7-settings .sk.edge.is-active::before{display:block}
.kx.r7-settings .sk.is-locked{opacity:1}
.kx.r7-settings .sk .lk{position:absolute;top:16px;right:16px;color:#fff;width:auto;height:auto;background:none;font-size:16px}
.kx.r7-settings .sk .lk svg{width:16px;height:16px}
/* plan & billing */
.kx.r7-settings .eb.pl{display:block;margin:16px 0 8px;font-size:14px;font-weight:700;color:var(--t3)}
.kx.r7-settings .eb.nc{text-transform:none;letter-spacing:.02em}
/* the brand stays lowercase in its group label (the mockup's class_nc) */
.kx.r7-settings .sl.nc{text-transform:none;letter-spacing:.02em}
.kx.r7-settings .plan-cycle-grid{display:grid;grid-template-columns:1fr;gap:10px}
.kx.r7-settings .plan-cycle-grid.pcg2{grid-template-columns:1fr 1fr}
.kx.r7-settings .pc.price{flex-direction:column;align-items:flex-start;gap:2px;margin:0;min-height:0;height:auto;cursor:pointer}
.kx.r7-settings .pc.price[disabled]{opacity:.5}
.kx.r7-settings .pc.price .eb{font-size:14px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--t3)}
.kx.r7-settings .pc.price .t{font-size:20px;font-weight:700;color:#fff}
.kx.r7-settings .pc.price .t .s{font-size:14px;font-weight:500}
.kx.r7-settings .pc.price .pfree{position:absolute;top:-8px;right:10px;height:24px}
.kx.r7-settings .s.fine,.kx.r7-settings .fine{display:block;margin-top:12px;font-size:16px;line-height:1.45;color:var(--t3)}
/* the consent tickbox as the kit's .check row: still the real checkbox with its aria-label */
.kx.r7-settings .auth-consent.pc.chk{display:flex;align-items:center;gap:12px;margin-top:12px;padding:4px 14px 4px 4px;min-height:52px;cursor:pointer;font-size:16px;line-height:1.45;color:var(--t2)}
.kx.r7-settings .auth-consent .auth-consent-box,.kx.r7-settings .pcf .pc.chk input[type=checkbox]{appearance:none;-webkit-appearance:none;flex:none;width:44px;height:44px;margin:0;border:0;background:none;display:grid;place-items:center;cursor:pointer;position:relative}
.kx.r7-settings .auth-consent .auth-consent-box::before,.kx.r7-settings .pcf .pc.chk input[type=checkbox]::before{content:"";width:24px;height:24px;border-radius:50%;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35);transition:background .25s var(--out),box-shadow .25s var(--out)}
.kx.r7-settings .auth-consent .auth-consent-box:checked::before,.kx.r7-settings .pcf .pc.chk input[type=checkbox]:checked::before{background:var(--mint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2307070a' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") no-repeat center/14px 14px;box-shadow:0 0 12px rgba(85,239,196,.5)}
.kx.r7-settings .auth-consent .auth-consent-box:focus-visible::before,.kx.r7-settings .pcf .pc.chk input:focus-visible::before{box-shadow:inset 0 0 0 1.5px var(--peri),0 0 0 3px rgba(162,155,254,.35)}
/* teams enquiry */
.kx.r7-settings .settings-section .settings-actions:has(>.sec+.sec):not(:has(>.sec+.sec+.sec)):not(:has(.ln)){display:grid;grid-template-columns:1fr 1.5fr;gap:10px;margin-top:12px}
/* Account: Admin dashboard (founder) and Sign out side by side, equal */
.kx.r7-settings .settings-section .settings-actions:has(>.sec+.sec):has(>.btn-ghost:first-child+.btn-ghost:last-child){grid-template-columns:1fr 1fr}
.kx.r7-settings .settings-section .settings-actions:has(>.sec+.sec):not(:has(>.sec+.sec+.sec))>.sec{margin-top:0}
/* help & FAQ, sponsor pill */
.kx.r7-settings .mt{margin-top:12px}
.kx.r7-settings a.sec{text-decoration:none}
/* Labs: <details> whose summary is a .pc row; the chevron turns 90deg over .3s */
.kx.r7-settings .labs{margin:0 16px;padding:0;border:0;background:none;box-shadow:none}
.kx.r7-settings .labs summary{list-style:none;min-height:56px;cursor:pointer;padding:14px;margin:0}
.kx.r7-settings .labs summary::-webkit-details-marker{display:none}
.kx.r7-settings .labs .settings-labs-title{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;font-size:16px;font-weight:700;color:#fff;padding:0;margin:0}
.kx.r7-settings .labs .lchev{color:var(--t3);transition:transform .3s;display:grid;place-items:center;transform:none}
.kx.r7-settings .labs .lchev svg{width:20px;height:20px}
.kx.r7-settings .labs[open] .lchev{transform:rotate(90deg)}
.kx.r7-settings .lbody{margin-top:12px;padding:0}
.kx.r7-settings .lbody>.settings-section{background:rgba(20,20,24,.4)}
.kx.r7-settings .lbody a:not(.sec){color:var(--peri2);font-weight:700;text-decoration:none}
/* presence (its button keeps exactly className `mic-choice`, which ci/check-voice-setting-gone.mjs pins) and the
   Link Bank auto-attach row: a .pc.mic switch row with the kit toggle */
.kx.r7-settings .mic-choice,.link-bank-section.kx.kx .pc.mic{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:12px;
  width:100%;margin-top:10px;min-height:56px;padding:14px;border-radius:18px;background:var(--card);box-shadow:inset 0 0 0 1px var(--kx-line);border:0;outline:0;
  text-align:left;color:var(--t1);font:inherit;cursor:pointer}
.kx.r7-settings .mic-choice.on{box-shadow:inset 0 0 0 1.5px var(--peri)}
.kx.r7-settings .mic-choice .mic-choice-name{grid-column:1;font-size:16px;font-weight:700;color:#fff}
.kx.r7-settings .mic-choice .mic-choice-sub{grid-column:1;font-size:16px;line-height:1.45;color:var(--t3);margin-top:2px}
.kx.r7-settings .mic-choice .toggle,.link-bank-section.kx.kx .pc.mic .toggle{grid-column:2;grid-row:1/span 2}
.link-bank-section.kx.kx .pc.mic .m{grid-column:1}
.link-bank-section.kx.kx .pc.mic .s{margin-top:2px;font-size:16px;line-height:1.45}
/* public handoff card */
.kx.r7-settings .public-card-row+.public-card-row{margin-top:4px}
.kx.r7-settings .public-card-label.lbl{font-size:14px;font-weight:700;color:var(--t3);margin:16px 0 8px;letter-spacing:normal;text-transform:none}
.kx.r7-settings .public-card-row .field .ln{margin-left:auto}
.kx.r7-settings .cv{flex:1;min-width:0;font-size:16px;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:inherit}
.kx.r7-settings .cv.url{font-size:14px;color:var(--t2);background:none!important;padding:0!important;display:flex;align-items:center}
.kx.r7-settings .hint{margin-top:6px;font-size:16px;line-height:1.45}
.kx.r7-settings .pcf{display:block;margin-top:8px}
.kx.r7-settings .pcf .pc.chk{padding:4px 14px 4px 4px;min-height:52px;cursor:pointer;gap:12px}
.kx.r7-settings .pcf .pc.chk .t{font-size:16px;font-weight:700}
.kx.r7-settings .pcf>input{margin-top:8px}
/* writing style samples */
.kx.r7-settings .wsl{display:block;margin-top:10px}
.kx.r7-settings .pc.drop{justify-content:center;box-shadow:inset 0 0 0 1px var(--kx-line2);min-height:52px;font-size:16px;line-height:1.45;text-align:center}
.kx.r7-settings .pc.wss{font-size:16px}
.kx.r7-settings .pc.wsa{margin-top:10px}
/* link bank rows */
.link-bank-section.kx.kx .lb-row.pc{gap:6px;margin-top:10px}
.link-bank-section.kx.kx .lb-row-name{font-size:16px;font-weight:700;color:#fff}
.link-bank-section.kx.kx :is(.lb-kind,.lb-row-private,.lb-row-notags,.lb-tag,.lb-default-badge,.lb-cap-note){font-size:14px}
.link-bank-section.kx.kx .lb-row-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.link-bank-section.kx.kx .lb-cap-upgrade{min-height:44px;font-size:14px}
/* danger zone */
.kx.r7-settings .dzp{box-shadow:inset 0 0 0 1px rgba(255,118,118,.35)}
.kx.r7-settings .dzi{margin-top:4px}
.kx.r7-settings .dzi .s{font-size:16px;line-height:1.45;color:var(--t3)}
.kx.r7-settings .dzi .sec{margin-top:10px}
.kx.r7-settings .dzc{display:block;margin-top:10px}
.kx.r7-settings .dzc .s{font-size:16px;line-height:1.45;color:var(--t3)}
.kx.r7-settings .dzc input.dzf{margin-top:10px}
.kx.r7-settings .dzc .row2,.kx.r7-settings .row2{display:grid;grid-template-columns:1fr 1.5fr;gap:10px;margin-top:12px}
.kx.r7-settings .row2 .sec{margin:0}
.kx.r7-settings code{font-family:inherit;font-weight:800;color:var(--coral);background:none;padding:0}
.kx.r7-settings .s.danger,.kx.r7-settings .settings-section-sub.danger{color:var(--coral)}
.kx.r7-settings .s.danger.mt{margin-top:12px}
/* copy diagnostics: a .pc row with Test copy as .ln */
.kx.r7-settings .copy-diagnostics.pc{display:block;margin-top:12px}
.kx.r7-settings .cdgh{display:flex;align-items:center;gap:12px}
.kx.r7-settings .cdgh .s{font-size:16px;line-height:1.45}
/* version stamp */
.kx.r7-settings .settings-version-stamp{margin:12px 16px 8px;font-size:14px;color:var(--t4);text-align:center;letter-spacing:.04em}
/* the reparse overlay (AaiProcessingOverlay, not edited) keeps its look */

/* ── the install sheet (E08: slides from 105% over .55s on --sheet, scrim .35s, grab drags) ─────────── */
/* the install backdrop keeps its exact className="ai-modal-backdrop" (spec 35 pins that literal); R7's .kx.r7-install
   sits on the sheet, so the backdrop is reached through :has() and carries the kit .scrim fade itself; the sheet keeps
   .ai-modal's own text colour (index.html), which the R7 root rule would otherwise replace */
.ai-modal-backdrop:has(> .kx.r7-install){position:fixed;inset:0;background:rgba(3,3,5,.75);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:block;padding:0;animation:fxfade .35s var(--out) both}
.r7-sheet.kx.r7-install{color:#f4f1ff;position:fixed;left:0;right:0;bottom:0;top:auto;max-height:92%;overflow:auto;width:auto;max-width:none;margin:0;border-radius:28px 28px 0 0;background:#0f0f12;border:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.08);padding:10px 16px 28px;transform:none;animation:r7-sheet .55s var(--sheet) both}
.kx.r7-install .grab{width:40px;height:5px;border-radius:3px;background:rgba(255,255,255,.22);margin:0 auto 12px}
.kx.r7-install .ai-modal-title{font-size:22px;font-weight:800;letter-spacing:-.02em;color:#fff}
.kx.r7-install .ai-modal-body p{font-size:16px;line-height:1.5;color:var(--t2);margin-top:12px}
.kx.r7-install .ai-modal-body strong{color:#fff}
.kx.r7-install .ai-modal-actions{display:block;margin-top:12px}
@keyframes r7-sheet{from{translate:0 105%}to{translate:0 0}}

/* ── integrations ────────────────────────────────────────────────────────────────────────────────── */
.kx.r7-integ .irs{display:block}
.kx.r7-integ .pc.ir{align-items:center}
.kx.r7-integ .ih{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}
.kx.r7-integ .ct{text-transform:uppercase;letter-spacing:.06em;color:var(--t3);background:rgba(255,255,255,.06)}
.kx.r7-integ .ir .m>.s{font-size:16px;line-height:1.45}
.kx.r7-integ .ln.vote{flex-direction:column;height:auto;min-height:56px;padding:6px 14px;gap:0;justify-content:center;min-width:84px}
.kx.r7-integ .ln.vote b{display:flex;align-items:center;gap:4px;font-weight:700}
.kx.r7-integ .ln.vote svg{width:14px;height:14px}
.kx.r7-integ .pad>.s{font-size:16px;line-height:1.45}
.kx.r7-integ .foot{margin-top:18px}
.kx.r7-integ .foot .link{font-size:14px;min-height:44px;display:inline-flex}

/* ── account sheet (E08 sheet with grab; scrim .35s) ──────────────────────────────────────────────── */
.kx.r7-account.account-sheet-backdrop{background:rgba(3,3,5,.75);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.kx.r7-account .account-sheet{background:#0f0f12;border:0;border-radius:28px 28px 0 0;box-shadow:inset 0 1px 0 rgba(255,255,255,.08);padding:10px 16px 28px;animation:r7-sheet .55s var(--sheet) both;color:var(--t1)}
.kx.r7-account .account-sheet-close.acx{position:absolute;right:16px;top:14px;z-index:2;width:44px;height:44px;min-width:44px;border-radius:50%;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);border:0;color:var(--t1);display:grid;place-items:center}
.kx.r7-account .account-sheet-close.acx svg{width:20px;height:20px}
.kx.r7-account .account-sheet::before{width:40px;height:5px;border-radius:3px;background:rgba(255,255,255,.22);margin:0 auto 12px}
.kx.r7-account .aid{display:flex;align-items:center;gap:14px;margin:8px 0 18px;padding:0;border:0}
.kx.r7-account .aid .big{font-size:22px;font-weight:800;color:#fff;letter-spacing:normal}
.kx.r7-account .account-identity-email{font-size:14px;color:var(--t3);margin-top:2px}
.kx.r7-account .arows{display:block;margin:0;padding:0;border:0;background:none}
.kx.r7-account .pc.arow{min-height:56px;cursor:pointer}
.kx.r7-account .pc.arow .account-row-label{font-size:16px;font-weight:700;color:#fff;flex:1;min-width:0;text-align:left}
.kx.r7-account .pc.arow .account-row-chev{color:var(--t3);display:grid;place-items:center}
.kx.r7-account .pc.arow .account-row-chev svg{width:18px;height:18px}
.kx.r7-account .pc.arow .ai{color:var(--t2);display:grid;place-items:center}
.kx.r7-account .pc.arow .ai svg{width:20px;height:20px}
.kx.r7-account .pc.arow .tag{margin-right:4px;flex:none}
.kx.r7-account .account-row-locked{opacity:1}
.kx.r7-account .account-footer{margin-top:12px;padding:0;border:0}
.kx.r7-account .account-version-stamp{margin-top:12px;font-size:14px;color:var(--t4);text-align:center;letter-spacing:.04em}

/* ── stats ───────────────────────────────────────────────────────────────────────────────────────── */
.kx.r7-stats .stats-tier-pill.pad{display:block;padding:0 16px}
.kx.r7-stats .stats-tier-pill .tag{height:28px;padding:0 10px;border-radius:99px;font-size:14px;font-weight:700;color:var(--peri2);background:rgba(162,155,254,.14);border:0;box-shadow:none;letter-spacing:normal;text-transform:none}
.kx.r7-stats .ctr{text-align:center;margin:0 16px 4px}
.kx.r7-stats .ctr .hero{font-family:'Fraunces',serif;font-style:italic;font-weight:600;letter-spacing:-.02em;font-size:30px;line-height:1.05;margin:8px 0 4px;color:#fff;text-align:center}
.kx.r7-stats .ctr .wys{display:block;text-align:left;margin:16px 0 8px;font-size:14px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--t3)}
.kx.r7-stats .ctr .pc{text-align:left}
.kx.r7-stats .stats-empty-rows{display:block}
.kx.r7-stats .stats-empty-row-title{font-size:16px;font-weight:700;color:#fff}
.kx.r7-stats .stats-empty-row-sub{font-size:16px;line-height:1.45;color:var(--t3);margin-top:1px}
.kx.r7-stats .stats-empty-row-sk{display:none}
/* quota rings: the mockup's .qr ring, 3 across (4 with voice+ for Pro) */
.kx.r7-stats .stats-rings.rings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;padding:0 16px}
.kx.r7-stats .stats-rings.rings:has(>:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.kx.r7-stats .qr{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;width:auto;height:auto;min-width:0;min-height:0;padding:0;margin:0;background:none;border:0}
.kx.r7-stats .ringwrap{position:relative;width:64px;height:64px;flex:none;margin-bottom:6px}
.kx.r7-stats .ringwrap>.ring{position:absolute;inset:0}
.kx.r7-stats .ringwrap>span{position:absolute;inset:0;display:grid;place-items:center;font-weight:800;font-size:14px;color:#fff}
.kx.r7-stats .qr .ring{--v:0;width:64px;height:64px;border-radius:50%;background:conic-gradient(from 0deg,#FF7676,#FDCB6E,#55EFC4,#74B9FF,#A29BFE calc(var(--r7v)*1%),rgba(255,255,255,.08) 0);-webkit-mask:radial-gradient(circle,transparent 0 24px,#000 25px);mask:radial-gradient(circle,transparent 0 24px,#000 25px);animation:r7-ring .9s var(--out) both}
.kx.r7-stats .qr .ring.amber{background:conic-gradient(var(--kx-amber) calc(var(--r7v)*1%),rgba(255,255,255,.08) 0)}
.kx.r7-stats .qr .ring.coral{background:conic-gradient(var(--coral) calc(var(--r7v)*1%),rgba(255,255,255,.08) 0)}
@keyframes r7-ring{from{--r7v:0}}
.kx.r7-stats .quota-ring-content{position:static;display:block;inset:auto;transform:none}
.kx.r7-stats .qr .t{font-size:16px;font-weight:700;color:#fff;text-transform:none;letter-spacing:normal;margin:0}
.kx.r7-stats .qr .s{font-size:14px;line-height:1.3;color:var(--t3);margin:0;text-transform:none;letter-spacing:normal}
/* Pro analytics */
.kx.r7-stats .stats-analytics{margin:0;padding:0 16px;background:none;border:0;box-shadow:none}
.kx.r7-stats .stats-analytics-title{display:flex;align-items:center;gap:12px;margin:24px 0 10px;font-size:14px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--t3)}
.kx.r7-stats .stats-analytics-title::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(255,255,255,.14),transparent)}
.kx.r7-stats .stats-an-sub{font-size:16px;line-height:1.45;color:var(--t3);margin-bottom:8px}
.kx.r7-stats .stats-intro-row.pc{flex-wrap:wrap}
.kx.r7-stats .stats-intro-names{flex:1;min-width:0;font-size:16px;font-weight:700;color:#fff}
.kx.r7-stats .stats-intro-amp{font-size:14px;color:var(--t3);font-weight:400}
.kx.r7-stats .stats-intro-why{flex-basis:100%;order:3;font-size:14px;color:var(--t3)}
.kx.r7-stats .rep{display:flex;gap:14px;align-items:flex-start;margin:12px 16px 0}
.kx.r7-stats .stats-rep-ring.ring{width:64px;height:64px;border-radius:50%;flex:none;display:grid;place-items:center;-webkit-mask:none;mask:none;position:relative}
.kx.r7-stats .stats-rep-ring-in{width:50px;height:50px;border-radius:50%;background:#16161b;display:grid;place-items:center}
.kx.r7-stats .stats-rep-score{font-weight:800;font-size:16px;color:#fff}
.kx.r7-stats .stats-rep-body{flex:1;min-width:0}
.kx.r7-stats .stats-rep-sub{font-size:16px;line-height:1.45}
.kx.r7-stats .stats-rep-bars{display:block}
.kx.r7-stats .stats-rep-bar{display:grid;grid-template-columns:118px 1fr 40px;align-items:center;gap:8px;margin-top:8px}
.kx.r7-stats :is(.stats-rep-bar-lbl,.stats-rep-bar-val){font-size:14px;color:var(--t3)}
.kx.r7-stats :is(.stats-rep-bar-track,.stats-an-cobar,.stats-roi-bar,.goal-bar,.level-meter-bar){display:block;height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden;align-self:center;border:0}
.kx.r7-stats .stats-rep-bar-track>span{display:block;height:100%;border-radius:inherit;background:var(--mint)}
.kx.r7-stats .stats-recip-row.pc{cursor:pointer}
.kx.r7-stats .stats-recip-name{flex:1;min-width:0;font-size:16px;font-weight:700;color:#fff}
.kx.r7-stats .stats-recip-counts{font-size:14px;color:var(--t3)}
.kx.r7-stats .stats-recip-tag.tag{flex:none}
.kx.r7-stats .tag-even{color:var(--peri2);background:rgba(162,155,254,.14)}
.kx.r7-stats .stats.s2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.kx.r7-stats .stat{padding:12px;border-radius:14px;background:var(--card2);box-shadow:inset 0 0 0 1px var(--kx-line);border:0;text-align:left;min-height:0}
.kx.r7-stats .stat b{display:block;font-size:22px;font-weight:800;letter-spacing:-.02em;color:#fff}
.kx.r7-stats .stat :is(.stats-an-lbl,.health-card-label){display:block;font-size:14px;color:var(--t3)}
.kx.r7-stats .stat .health-card-sub{display:block;font-size:14px;color:var(--t3)}
.kx.r7-stats .stats-an-cadence{margin-top:14px}
.kx.r7-stats .segs{display:flex;gap:2px;height:6px;border-radius:99px;overflow:hidden;background:none}
.kx.r7-stats .segs>*{display:block;height:6px;border-radius:99px;min-width:0}
.kx.r7-stats .seg-warm{background:var(--mint)}
.kx.r7-stats .seg-cooling{background:var(--kx-amber)}
.kx.r7-stats .seg-cold{background:var(--peri)}
.kx.r7-stats .lgd{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:8px;font-size:14px;color:var(--t2)}
.kx.r7-stats .lgd i{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:6px;vertical-align:middle;box-shadow:0 0 8px currentColor}
.kx.r7-stats .lgd .seg-warm{color:var(--mint)}
.kx.r7-stats .lgd .seg-cooling{color:var(--kx-amber)}
.kx.r7-stats .lgd .seg-cold{color:var(--peri)}
.kx.r7-stats .stats-an-companies{margin-top:12px}
.kx.r7-stats .stats-an-companies>.stats-an-sub{margin:12px 0 8px}
.kx.r7-stats .corow{display:grid;grid-template-columns:130px 1fr 24px;gap:10px;align-items:center;min-height:32px}
.kx.r7-stats .stats-an-coname{font-size:14px;font-weight:600;color:#fff}
.kx.r7-stats .stats-an-con{font-size:14px;color:var(--t3)}
.kx.r7-stats :is(.stats-an-cobar,.stats-roi-bar)>span{display:block;height:100%;border-radius:inherit;background:var(--edge)}
.kx.r7-stats .pc.roi{display:grid;grid-template-columns:1fr 70px 24px 40px;gap:10px;cursor:pointer}
.kx.r7-stats .stats-roi-name{font-size:16px;font-weight:700;color:#fff;min-width:0}
.kx.r7-stats .stats-roi-met{font-size:16px;font-weight:700;color:#fff}
.kx.r7-stats .stats-roi-ft{font-size:14px;color:var(--t3)}
.kx.r7-stats .roikey{display:flex;justify-content:flex-end;gap:16px;margin-top:8px}
/* Free: the analytics teaser and the Running low panel (amber edge) */
.kx.r7-stats .pc.teaser{margin:12px 16px 0;width:auto;min-height:60px;cursor:pointer;font-size:16px;line-height:1.45;color:var(--t2)}
.kx.r7-stats .pc.teaser strong{color:#fff}
.kx.r7-stats .pc.teaser strong:last-child{color:var(--peri2)}
.kx.r7-stats .pc.teaser .rel-tl-teaser-spark{display:none}
.kx.r7-stats .nudge2{margin:12px 16px 0;box-shadow:inset 0 0 0 1px rgba(253,203,110,.35);cursor:pointer;transform:none}
.kx.r7-stats .nudge2 .s{font-size:16px;line-height:1.45;margin:4px 0}
.kx.r7-stats .nudge2 .link{font-size:16px}
/* what each plan unlocks: a .tblwrap table, the current tier's column in white, mint checks */
.kx.r7-stats .stats-tier-compare{margin:0;padding:0 16px;background:none;border:0;box-shadow:none}
.kx.r7-stats .stats-tier-compare-title.sl{margin:24px 0 10px}
.kx.r7-stats .tblwrap{overflow-x:auto;border-radius:18px;background:var(--card);box-shadow:inset 0 0 0 1px var(--kx-line)}
.kx.r7-stats .stats-tier-row{display:grid;grid-template-columns:118px 84px 150px 160px;width:max-content;min-width:100%;align-items:stretch;margin:0;padding:0;border:0;background:none}
.kx.r7-stats .stats-tier-row>div{white-space:nowrap}
.kx.r7-stats .stats-tier-row-head>div::after{display:none}
.kx.r7-stats .stats-tier-row>div{padding:12px 8px;border-top:1px solid var(--kx-line);font-size:14px;color:var(--t2);text-align:left}
.kx.r7-stats .stats-tier-row-head>div{border-top:0;padding:10px 8px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--t3)}
.kx.r7-stats .stats-tier-row-head>.is-current{color:#fff;background:none}
.kx.r7-stats .stats-tier-row>div:not(.stats-tier-row-label):not(:first-child){font-weight:500}
.kx.r7-stats .stats-tier-row:last-child>div:not(.stats-tier-row-label){color:var(--mint)}
.kx.r7-stats .stats-tier-row .stats-tier-row-label{color:var(--t2);font-weight:500}
.kx.r7-stats .stats-tier-cta.cta{margin-top:12px}
.kx.r7-stats .stats-tier-thanks{margin-top:12px;font-size:14px}
/* Network Health (Pro) */
.kx.r7-stats .health-panel{margin:0;padding:0 16px;background:none;border:0;box-shadow:none}
.kx.r7-stats .health-panel-title.sl{margin:24px 0 10px}
.kx.r7-stats .health-section-label.eb{display:block;margin:12px 0 8px;font-size:14px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--t3)}
.kx.r7-stats .warmth-bar.segs{display:flex}
.kx.r7-stats .warmth-seg-hot{background:var(--coral)}
.kx.r7-stats .warmth-seg-warm{background:var(--kx-amber)}
.kx.r7-stats .warmth-seg-cool{background:var(--mint)}
.kx.r7-stats .warmth-seg-cold,.kx.r7-stats .warmth-seg-never{background:var(--peri)}
.kx.r7-stats .warmth-legend .warmth-dot{background:none}
.kx.r7-stats .warmth-legend .warmth-seg-hot{color:var(--coral)}
.kx.r7-stats .warmth-legend .warmth-seg-warm{color:var(--kx-amber)}
.kx.r7-stats .warmth-legend .warmth-seg-cool{color:var(--mint)}
.kx.r7-stats .warmth-legend :is(.warmth-seg-cold,.warmth-seg-never){color:var(--peri)}
.kx.r7-stats .warmth-legend i{background:currentColor!important}
.kx.r7-stats .health-foster.s{margin-top:12px;font-size:14px}
.kx.r7-stats .stale-list{display:block}
.kx.r7-stats .stale-row.pc{cursor:pointer}
.kx.r7-stats .stale-row .t{flex:1;min-width:0}
.kx.r7-stats .rgt{display:flex;justify-content:flex-end;margin-top:8px;padding:0 16px}
/* Goals (Pro) */
.kx.r7-stats .goals-panel-head{display:flex;align-items:center;justify-content:space-between}
.kx.r7-stats .goals-panel-head .sl{flex:1;margin:24px 12px 10px 0}
.kx.r7-stats .goal-add-sheet{display:block;margin-bottom:10px}
.kx.r7-stats .goal-add-option.pc{flex-direction:column;align-items:flex-start;cursor:pointer}
.kx.r7-stats .goal-add-option-label{font-size:16px;font-weight:700;color:#fff}
.kx.r7-stats .goal-add-option-sub{font-size:14px;color:var(--t3)}
.kx.r7-stats .goal-empty.pc .goal-empty-title{font-size:16px;font-weight:700;color:#fff}
.kx.r7-stats .goal-empty.pc .goal-empty-sub{font-size:16px;line-height:1.45;color:var(--t3)}
.kx.r7-stats .goal-row-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.kx.r7-stats .goal-row-actions{display:flex;align-items:center;gap:6px;font-weight:700}
.kx.r7-stats .goal-row-current{font-size:16px;color:#fff}
.kx.r7-stats .goal-row-slash{font-size:14px;color:var(--t3)}
.kx.r7-stats .goal-target-input{width:64px;min-height:44px;height:44px;padding:0 10px;border-radius:16px;background:var(--glass);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);border:0;color:#fff;font:inherit;font-size:16px}
.kx.r7-stats .goal-bar-fill{display:block;height:100%;border-radius:inherit;background:var(--edge)}
.kx.r7-stats .goal-bar-fill.mint{background:var(--mint)}
.kx.r7-stats .goal-row-hit{font-size:14px}
.kx.r7-stats .mint{color:var(--mint)}
/* achievements: the streak card, the head, 2-column .atiles, the level meter panel */
.kx.r7-stats .stats-achievements.pad{margin-top:12px;padding:0 16px;background:none}
.kx.r7-stats .streak.pc{gap:12px}
.kx.r7-stats .streak .fl{width:44px;height:44px;display:grid;place-items:center;color:var(--kx-amber);flex:none}
.kx.r7-stats .streak .fl svg{width:28px;height:28px}
.kx.r7-stats .streak-num{font-size:22px;font-weight:800;color:#fff}
.kx.r7-stats .streak-label,.kx.r7-stats .streak-best{font-size:14px;color:var(--t3);text-transform:none;letter-spacing:normal;margin:1px 0 0}
.kx.r7-stats .streak-num-unit{font-size:14px;font-weight:400;color:var(--t3)}
.kx.r7-stats .ah{display:flex;justify-content:space-between;align-items:center;margin:18px 0 8px}
.kx.r7-stats .ah.sm{margin:14px 0 8px}
.kx.r7-stats .ah .eb{font-size:14px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--t3)}
.kx.r7-stats .ach-section{margin:0}
.kx.r7-stats .ach-section-name.t{font-size:16px;font-weight:700;color:#fff;text-transform:none;letter-spacing:normal}
.kx.r7-stats .ach-section-count.s,.kx.r7-stats .ach-grid-count.s{font-size:14px;color:var(--t3)}
.kx.r7-stats .atiles{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.kx.r7-stats .atiles .pc+.pc{margin-top:0}
.kx.r7-stats .pc.at{min-height:56px;gap:10px;padding:10px 12px;cursor:pointer;flex-direction:row;align-items:center;justify-content:flex-start;aspect-ratio:auto;height:auto}
.kx.r7-stats .pc.at .t{font-size:14px;font-weight:600;color:var(--t3);text-align:left;margin:0}
.kx.r7-stats .pc.at.un .t{color:#fff}
/* unlocked: a lit star in the five Spectral colours in turn (E14 bloom); locked: a hollow check */
.kx.r7-stats .ach-tile-glyph{font-size:0;line-height:0;flex:none;margin:0 4px;width:10px;height:10px;border-radius:50%;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35);display:block}
.kx.r7-stats .ach-tile-locked .ach-tile-glyph{width:24px;height:24px;margin:0}
.kx.r7-stats .un .ach-tile-glyph{background:#fff;box-shadow:0 0 0 3px var(--r7c),0 0 12px 3px var(--r7c);animation:r7-tw 3.6s ease-in-out infinite}
.kx.r7-stats .ach-tile-glyph.c0{--r7c:#FF7676}.kx.r7-stats .ach-tile-glyph.c1{--r7c:#FDCB6E}.kx.r7-stats .ach-tile-glyph.c2{--r7c:#55EFC4}.kx.r7-stats .ach-tile-glyph.c3{--r7c:#74B9FF}.kx.r7-stats .ach-tile-glyph.c4{--r7c:#A29BFE}
@keyframes r7-tw{50%{box-shadow:0 0 0 3px var(--r7c),0 0 20px 6px var(--r7c)}}
.kx.r7-stats .lvl.panel{margin-top:14px}
.kx.r7-stats .level-meter-bar.bar{margin:8px 0}
.kx.r7-stats .level-meter-fill{display:block;height:100%;border-radius:inherit;background:var(--edge)}
.kx.r7-stats .level-meter-name{font-size:16px;font-weight:700}

/* ── overlays: level up, skin unlock, skin preview (.full night gradient, E01 sky) ─────────────────── */
.kx.r7-full.full{position:fixed;inset:0;background:radial-gradient(80% 60% at 50% 35%,rgba(162,155,254,.14),transparent 70%),#06060a;display:flex;flex-direction:column;backdrop-filter:none;-webkit-backdrop-filter:none;padding:0;color:var(--t1);overflow:hidden}
.kx.r7-full .cen{margin:auto;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:24px;max-width:375px;background:none;border:0;box-shadow:none;width:auto;transform:none;animation:none}
.kx.r7-full .orb{width:180px;height:180px;border-radius:50%;margin:0 auto 24px;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,rgba(162,155,254,.25),rgba(7,7,10,.9) 70%);font-size:0;color:transparent;box-shadow:none;border:0;animation:fxbreath 3.2s ease-in-out infinite}
.kx.r7-full .orb::before{content:"";position:absolute;inset:0;border-radius:50%;padding:3px;background:var(--conic);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:kx-spin 3s linear infinite}
.kx.r7-full .orb::after{content:"";position:absolute;inset:-30px;border-radius:50%;background:radial-gradient(circle,rgba(162,155,254,.25),transparent 65%);z-index:-1}
.kx.r7-full .r7-glyph{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.kx.r7-full .star{width:10px;height:10px;border-radius:50%;background:#fff;box-shadow:0 0 0 3px var(--peri),0 0 12px 3px var(--peri);display:inline-block}
.kx.r7-full .star.bigs{width:26px;height:26px;box-shadow:0 0 0 6px var(--peri),0 0 40px 12px var(--peri);animation:r7-twbig 3.6s ease-in-out infinite}
@keyframes r7-twbig{50%{box-shadow:0 0 0 6px var(--peri),0 0 52px 16px var(--peri)}}
.kx.r7-full .eb{font-size:14px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--t3);margin:0}
.kx.r7-full .fr{font-family:'Fraunces',serif;font-style:italic;font-weight:600;letter-spacing:-.02em}
.kx.r7-full .hero{font-size:40px;line-height:1.05;margin:8px 0 4px;color:#fff}
.kx.r7-full .hero em{font-style:italic}
.kx.r7-full .cen>*:not(.orb){margin-top:0;margin-bottom:0}
.kx.r7-full .cen>.hero{margin:8px 0 4px}
.kx.r7-full .levelup-badge.orb{box-shadow:none;filter:none}
.kx.r7-full .levelup-title.hero{background:none;-webkit-background-clip:border-box;background-clip:border-box;-webkit-text-fill-color:#fff;color:#fff}
.kx.r7-full p,.kx.r7-full .levelup-sub{font-size:16px;color:var(--t2);line-height:1.5;margin:0}
.kx.r7-full .s{font-size:16px;color:var(--t3)}
.kx.r7-full .dim{color:var(--t4)}
.kx.r7-full .rise{opacity:0;transform:translateY(14px);filter:blur(8px);animation:rise .7s var(--ease) forwards}
.kx.r7-full .ubtn{width:100%;margin-top:20px;display:block}
.kx.r7-full .ubtn .sec{margin-top:12px}
/* the skin-unlock overlay is its own .cen column */
.kx.r7-full.skin-unlock-overlay{align-items:center;justify-content:center;text-align:center;gap:10px;padding:24px}
.kx.r7-full.skin-unlock-overlay>*{max-width:327px}
.kx.r7-full.skin-unlock-overlay .orb{flex:none}
/* skin preview: header with the kit close, the framed panel, the Apply pill */
.kx.r7-full.skin-preview-overlay{z-index:1300}
.kx.r7-full .hd{display:flex;align-items:center;gap:10px;min-height:60px;padding:8px 16px;background:none;border:0;position:relative}
.kx.r7-full .skin-preview-overlay-close.ib{font-size:0;color:var(--t1)}
.kx.r7-full .skin-preview-overlay-close.ib::before{content:"";width:20px;height:20px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E") center/20px 20px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E") center/20px 20px no-repeat}
.kx.r7-full .pvt{flex:1;font-size:16px;color:var(--t2);font-weight:400}
.kx.r7-full .pvt strong{color:#fff}
.kx.r7-full .frame.panel{flex:1;margin:0 16px;position:relative;padding:0;border-radius:22px;overflow:hidden;background:rgba(20,20,24,.55);box-shadow:inset 0 0 0 1px var(--kx-line);border:0;width:auto;height:auto}
.kx.r7-full .pill{margin:12px 16px 24px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 8px 8px 18px;border-radius:99px;background:#1b1b20;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);border:0;position:relative;left:auto;right:auto;bottom:auto;transform:none;width:auto}
.kx.r7-full .pill .t{font-size:16px;font-weight:700;color:#fff}
.kx.r7-full .pill .pa{display:flex;gap:6px}

/* ── reduced motion: no animation, every value at once ───────────────────────────────────────────── */
@media (prefers-reduced-motion:reduce){
  :is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account,.kx.r7-install,.kx.r7-full,.link-bank-section.kx.kx) *,
  :is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account,.kx.r7-install,.kx.r7-full,.link-bank-section.kx.kx) *::before,
  :is(.kx.r7-settings,.kx.r7-integ,.kx.r7-stats,.kx.r7-account,.kx.r7-install,.kx.r7-full,.link-bank-section.kx.kx) *::after{animation:none!important;transition:none!important}
  .r7-sheet.kx.r7-install{animation:none!important;transition:none!important}
  .kx.r7-full .rise{opacity:1;transform:none;filter:none}
}
