/*
 * Remondikoda UI primitives. Class prefix rk-, BEM-ish (rk-btn, rk-btn--primary,
 * rk-btn__spinner). Every value comes from tokens.css.
 * public/css/rk.css is a copy written by `npm run build` so the static landing
 * uses the same component styles. Edit here, never there; keep both in sync.
 */

/* ── surfaces ─────────────────────────────────────────────────────────── */
:root{
  --rk-fg:var(--rk-ink); --rk-fg-muted:var(--rk-steel-600); --rk-line:var(--rk-steel-200);
}
[data-surface="dark"]{
  --rk-fg:var(--rk-steel-50); --rk-fg-muted:var(--rk-steel-on-dark); --rk-line:var(--rk-ink-3);
  --rk-focus-ring:0 0 0 2px var(--rk-ink),0 0 0 4px var(--rk-steel-50);
  color:var(--rk-steel-50);
}
/* Dark-surface overrides below end at a nested light surface (a light form
   card inside a dark hero) via :not([data-surface="light"] *). */
[data-surface="light"]{
  --rk-fg:var(--rk-ink); --rk-fg-muted:var(--rk-steel-600); --rk-line:var(--rk-steel-200);
  --rk-focus-ring:0 0 0 2px var(--rk-steel-0),0 0 0 4px var(--rk-ink);
  color:var(--rk-ink);
}
.rk-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ── button ───────────────────────────────────────────────────────────── */
.rk-btn{
  box-sizing:border-box;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:var(--rk-btn-h);min-width:var(--rk-tap-min);padding:0 20px;margin:0;
  border:1px solid transparent;border-radius:var(--rk-r-sm);
  font-family:var(--rk-font-ui);font-size:16px;font-weight:600;line-height:1.2;text-align:center;text-decoration:none;white-space:nowrap;
  cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;
  transition:background-color var(--rk-dur-fast) var(--rk-ease-out),border-color var(--rk-dur-fast) var(--rk-ease-out),color var(--rk-dur-fast) var(--rk-ease-out),box-shadow var(--rk-dur-fast) var(--rk-ease-out),transform var(--rk-dur-fast) var(--rk-ease-out);
}
.rk-btn:focus{outline:none}
.rk-btn:focus-visible,.rk-btn.is-focus{outline:none;box-shadow:var(--rk-focus-ring)}
.rk-btn:active:not(:disabled):not([aria-disabled="true"]),.rk-btn.is-active{transform:translateY(1px)}
.rk-btn--block{display:flex;width:100%}
.rk-btn--lg{min-height:var(--rk-btn-h-lg);padding:0 24px;font-size:17px}
@media (max-width:480px){.rk-btn{min-height:var(--rk-btn-h-mobile)}.rk-btn--lg{min-height:var(--rk-btn-h-lg)}}

.rk-btn--primary{background:var(--rk-accent);color:var(--rk-on-accent);font-weight:700}
.rk-btn--primary:hover,.rk-btn--primary.is-hover{background:var(--rk-accent-hover);color:var(--rk-on-accent)}
.rk-btn--primary:active,.rk-btn--primary.is-active{background:var(--rk-accent-active)}

.rk-btn--secondary{background:var(--rk-ink);color:var(--rk-steel-50)}
.rk-btn--secondary:hover,.rk-btn--secondary.is-hover{background:var(--rk-ink-2);color:var(--rk-steel-50)}
.rk-btn--secondary:active,.rk-btn--secondary.is-active{background:var(--rk-ink-3)}
[data-surface="dark"] .rk-btn--secondary:not([data-surface="light"] *){background:var(--rk-steel-50);color:var(--rk-ink)}
[data-surface="dark"] .rk-btn--secondary:hover:not([data-surface="light"] *),[data-surface="dark"] .rk-btn--secondary.is-hover:not([data-surface="light"] *){background:var(--rk-steel-0);color:var(--rk-ink)}
[data-surface="dark"] .rk-btn--secondary:active:not([data-surface="light"] *),[data-surface="dark"] .rk-btn--secondary.is-active:not([data-surface="light"] *){background:var(--rk-steel-100)}

.rk-btn--ghost{background:transparent;border-color:var(--rk-ink);color:var(--rk-ink)}
.rk-btn--ghost:hover,.rk-btn--ghost.is-hover{background:var(--rk-steel-100);color:var(--rk-ink)}
.rk-btn--ghost:active,.rk-btn--ghost.is-active{background:var(--rk-steel-200)}
[data-surface="dark"] .rk-btn--ghost:not([data-surface="light"] *){border-color:var(--rk-ink-3);color:var(--rk-steel-50);font-weight:500}
[data-surface="dark"] .rk-btn--ghost:hover:not([data-surface="light"] *),[data-surface="dark"] .rk-btn--ghost.is-hover:not([data-surface="light"] *){background:var(--rk-ink-2);color:var(--rk-steel-50)}
[data-surface="dark"] .rk-btn--ghost:active:not([data-surface="light"] *),[data-surface="dark"] .rk-btn--ghost.is-active:not([data-surface="light"] *){background:var(--rk-ink-3)}

.rk-btn--danger{background:var(--rk-error);color:#fff;font-weight:700}
.rk-btn--danger:hover,.rk-btn--danger.is-hover{background:#9E2B1A;color:#fff}
.rk-btn--danger:active,.rk-btn--danger.is-active{background:#872416}

.rk-btn:disabled,.rk-btn[aria-disabled="true"]:not([aria-busy="true"]){
  background:var(--rk-steel-200);border-color:transparent;color:var(--rk-steel-600);cursor:not-allowed;transform:none;
}
.rk-btn--ghost:disabled,.rk-btn--ghost[aria-disabled="true"]:not([aria-busy="true"]){background:transparent;border-color:var(--rk-steel-200);color:var(--rk-steel-400)}
[data-surface="dark"] .rk-btn:disabled:not([data-surface="light"] *){background:var(--rk-ink-2);color:var(--rk-steel-400)}
[data-surface="dark"] .rk-btn--ghost:disabled:not([data-surface="light"] *){background:transparent;border-color:var(--rk-ink-3);color:var(--rk-steel-600)}
.rk-btn[aria-busy="true"]{cursor:progress}
.rk-btn__spinner{width:16px;height:16px;flex:none;border-radius:50%;border:2px solid currentColor;border-top-color:transparent;animation:rkspin var(--rk-dur-spin) linear infinite}
.rk-btn__icon{display:inline-flex;flex:none}

/* text-style action (toast undo, inline links rendered as buttons) */
.rk-link-btn{box-sizing:border-box;min-height:var(--rk-tap-min);padding:0 4px;border:0;background:transparent;color:inherit;font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer;border-radius:4px}
.rk-link-btn:focus{outline:none}
.rk-link-btn:focus-visible{box-shadow:var(--rk-focus-ring)}

/* ── fields ───────────────────────────────────────────────────────────── */
.rk-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.rk-field__label{font-size:14px;font-weight:600;line-height:1.4;color:var(--rk-fg)}
.rk-field__label--disabled{color:var(--rk-steel-400)}
.rk-field__opt{font-weight:400;color:var(--rk-fg-muted)}
.rk-field__hint{margin:0;font-size:13px;line-height:1.4;color:var(--rk-fg-muted)}
.rk-field__error{margin:0;font-size:13px;line-height:1.4;color:var(--rk-error);display:flex;gap:6px;align-items:flex-start}
[data-surface="dark"] .rk-field__error:not([data-surface="light"] *){color:#F2A493}

.rk-input,.rk-textarea,.rk-select{
  box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:var(--rk-tap-min);margin:0;
  border:1px solid var(--rk-steel-200);border-radius:var(--rk-r-sm);padding:12px 14px;
  background:var(--rk-steel-0);color:var(--rk-ink);
  font-family:var(--rk-font-ui);font-size:16px;line-height:1.4;
  transition:border-color var(--rk-dur-fast) var(--rk-ease-out),box-shadow var(--rk-dur-fast) var(--rk-ease-out);
  -webkit-appearance:none;appearance:none;
}
.rk-input::placeholder,.rk-textarea::placeholder{color:var(--rk-steel-400);opacity:1}
.rk-input:not(:placeholder-shown),.rk-textarea:not(:placeholder-shown),.rk-select.is-filled{border-color:var(--rk-steel-400)}
.rk-input:hover:not(:disabled),.rk-textarea:hover:not(:disabled),.rk-select:hover:not(:disabled){border-color:var(--rk-steel-400)}
.rk-input:focus,.rk-textarea:focus,.rk-select:focus,.rk-input.is-focus{outline:none;border-color:var(--rk-ink);box-shadow:0 0 0 1px var(--rk-ink)}
.rk-input[aria-invalid="true"],.rk-textarea[aria-invalid="true"],.rk-select[aria-invalid="true"]{border-color:var(--rk-error);box-shadow:0 0 0 .5px var(--rk-error)}
.rk-input[aria-invalid="true"]:focus,.rk-textarea[aria-invalid="true"]:focus,.rk-select[aria-invalid="true"]:focus{box-shadow:0 0 0 1px var(--rk-error)}
.rk-input:disabled,.rk-textarea:disabled,.rk-select:disabled{background:var(--rk-steel-100);border-color:var(--rk-steel-200);color:var(--rk-steel-400);cursor:not-allowed;-webkit-text-fill-color:var(--rk-steel-400)}
.rk-textarea{resize:vertical;min-height:76px}
.rk-select{padding-right:42px;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%2315181D' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px}
.rk-select:invalid,.rk-select.is-placeholder{color:var(--rk-steel-400)}
.rk-select option{color:var(--rk-ink)}
.rk-input[type="date"]{min-height:48px}
.rk-input[type="date"]::-webkit-calendar-picker-indicator{cursor:pointer}

/* plate: blue EST tab + Outfit 24/600 */
.rk-plate{box-sizing:border-box;display:flex;align-items:stretch;max-width:260px;min-height:54px;border:1.5px solid var(--rk-ink);border-radius:var(--rk-r-sm);overflow:hidden;background:var(--rk-steel-0);transition:box-shadow var(--rk-dur-fast) var(--rk-ease-out),border-color var(--rk-dur-fast) var(--rk-ease-out)}
.rk-plate__tab{flex:none;display:flex;align-items:flex-end;background:var(--rk-plate-blue);color:#fff;font-family:var(--rk-font-ui);font-size:11px;font-weight:700;letter-spacing:.5px;padding:0 8px 7px}
.rk-plate__input{flex:1;min-width:0;width:100%;border:0;outline:none;padding:11px 14px;background:transparent;color:var(--rk-ink);font-family:var(--rk-font-display);font-size:24px;font-weight:600;letter-spacing:2px;text-transform:uppercase;line-height:1.2}
.rk-plate__input::placeholder{color:var(--rk-steel-400);opacity:1;letter-spacing:2px}
.rk-plate:focus-within{box-shadow:0 0 0 1px var(--rk-ink)}
.rk-plate.is-invalid{border-color:var(--rk-error)}
.rk-plate.is-invalid:focus-within{box-shadow:0 0 0 1px var(--rk-error)}
.rk-plate.is-disabled{border-color:var(--rk-steel-200);background:var(--rk-steel-100)}
.rk-plate.is-disabled .rk-plate__tab{opacity:.5}
.rk-plate.is-disabled .rk-plate__input{color:var(--rk-steel-400);-webkit-text-fill-color:var(--rk-steel-400);cursor:not-allowed}

/* ── chip ─────────────────────────────────────────────────────────────── */
.rk-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;border:0}
.rk-chip{
  box-sizing:border-box;position:relative;display:inline-flex;align-items:center;gap:6px;
  min-height:40px;padding:8px 14px;margin:0;border:1px solid var(--rk-steel-200);border-radius:var(--rk-r-pill);
  background:var(--rk-steel-0);color:var(--rk-ink);font-family:var(--rk-font-ui);font-size:14px;font-weight:500;line-height:1.3;text-align:left;
  cursor:pointer;-webkit-tap-highlight-color:transparent;
  transition:background-color var(--rk-dur-fast) var(--rk-ease-out),border-color var(--rk-dur-fast) var(--rk-ease-out),color var(--rk-dur-fast) var(--rk-ease-out),box-shadow var(--rk-dur-fast) var(--rk-ease-out);
}
/* 40px visual, 44px hit area */
.rk-chip::before{content:"";position:absolute;inset:-2px 0}
.rk-chip:hover,.rk-chip.is-hover{border-color:var(--rk-ink)}
.rk-chip:focus{outline:none}
.rk-chip:focus-visible,.rk-chip.is-focus{box-shadow:var(--rk-focus-ring)}
.rk-chip[aria-pressed="true"],.rk-chip[aria-checked="true"]{background:var(--rk-ink);border-color:var(--rk-ink);color:var(--rk-steel-50)}
.rk-chip[aria-pressed="true"]:hover,.rk-chip[aria-checked="true"]:hover{background:var(--rk-ink-2);border-color:var(--rk-ink-2)}
.rk-chip__check{display:none;flex:none}
.rk-chip[aria-pressed="true"] .rk-chip__check,.rk-chip[aria-checked="true"] .rk-chip__check{display:inline-flex}
.rk-chip:disabled{border-style:dashed;border-color:var(--rk-steel-200);background:transparent;color:var(--rk-steel-400);cursor:not-allowed}
[data-surface="dark"] .rk-chip:not([data-surface="light"] *){background:transparent;border-color:var(--rk-ink-3);color:var(--rk-steel-50)}
[data-surface="dark"] .rk-chip:hover:not([data-surface="light"] *){border-color:var(--rk-steel-on-dark)}
[data-surface="dark"] .rk-chip[aria-pressed="true"]:not([data-surface="light"] *),[data-surface="dark"] .rk-chip[aria-checked="true"]:not([data-surface="light"] *){background:var(--rk-steel-50);border-color:var(--rk-steel-50);color:var(--rk-ink)}

/* ── switch + checkbox ────────────────────────────────────────────────── */
.rk-toggle{box-sizing:border-box;display:inline-flex;align-items:center;gap:10px;min-height:var(--rk-tap-min);padding:0;border:0;background:transparent;color:var(--rk-fg);font-family:var(--rk-font-ui);font-size:15px;line-height:1.3;text-align:left;cursor:pointer;border-radius:var(--rk-r-sm)}
.rk-toggle:focus{outline:none}
.rk-toggle:focus-visible{box-shadow:var(--rk-focus-ring)}
.rk-toggle:disabled{color:var(--rk-steel-400);cursor:not-allowed}
.rk-switch__track{position:relative;flex:none;width:52px;height:30px;border-radius:15px;background:var(--rk-steel-400);transition:background-color var(--rk-dur-base) var(--rk-ease-out)}
.rk-switch__knob{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform var(--rk-dur-base) var(--rk-ease-out)}
.rk-toggle[aria-checked="true"] .rk-switch__track{background:var(--rk-ink)}
.rk-toggle[aria-checked="true"] .rk-switch__knob{transform:translateX(22px)}
[data-surface="dark"] .rk-toggle[aria-checked="true"] .rk-switch__track:not([data-surface="light"] *){background:var(--rk-accent)}
.rk-toggle:disabled .rk-switch__track{background:var(--rk-steel-200)}
.rk-checkbox__box{flex:none;width:24px;height:24px;border-radius:5px;border:1.5px solid var(--rk-steel-400);background:var(--rk-steel-0);color:#fff;display:flex;align-items:center;justify-content:center;transition:background-color var(--rk-dur-fast) var(--rk-ease-out),border-color var(--rk-dur-fast) var(--rk-ease-out)}
.rk-checkbox__box svg{opacity:0;transition:opacity var(--rk-dur-fast) var(--rk-ease-out)}
.rk-toggle[aria-checked="true"] .rk-checkbox__box{background:var(--rk-ink);border-color:var(--rk-ink)}
.rk-toggle[aria-checked="true"] .rk-checkbox__box svg{opacity:1}
.rk-toggle:disabled .rk-checkbox__box{border-color:var(--rk-steel-200);background:var(--rk-steel-100)}

/* ── segmented ────────────────────────────────────────────────────────── */
.rk-seg{box-sizing:border-box;display:grid;grid-template-columns:repeat(var(--rk-seg-n,4),minmax(0,1fr));gap:3px;padding:3px;margin:0;background:var(--rk-steel-100);border-radius:var(--rk-r-sm)}
.rk-seg__opt{box-sizing:border-box;min-width:0;min-height:var(--rk-tap-min);padding:10px 4px;margin:0;border:0;border-radius:var(--rk-r-seg);background:transparent;color:var(--rk-ink);font-family:var(--rk-font-ui);font-size:14px;font-weight:500;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--rk-dur-fast) var(--rk-ease-out),color var(--rk-dur-fast) var(--rk-ease-out)}
.rk-seg__opt:hover{background:var(--rk-steel-200)}
.rk-seg__opt:focus{outline:none}
.rk-seg__opt:focus-visible{box-shadow:var(--rk-focus-ring);position:relative;z-index:1}
.rk-seg__opt[aria-checked="true"]{background:var(--rk-ink);color:var(--rk-steel-50)}
.rk-seg__opt:disabled{color:var(--rk-steel-400);cursor:not-allowed;background:transparent}
.rk-seg.is-disabled{opacity:.6}
@media (max-width:480px){.rk-seg[data-rk-seg4]{grid-template-columns:1fr 1fr}}

/* ── card ─────────────────────────────────────────────────────────────── */
.rk-card{box-sizing:border-box;display:flex;flex-direction:column;gap:12px;min-width:0;background:var(--rk-steel-0);color:var(--rk-ink);border:1px solid var(--rk-steel-200);border-radius:var(--rk-r-lg);padding:16px}
.rk-card--pad-lg{padding:28px}
.rk-card--flat{background:var(--rk-steel-50)}
.rk-card--elevated{border-color:transparent;box-shadow:var(--rk-shadow-card)}
.rk-card--interactive{text-decoration:none;cursor:pointer;transition:border-color var(--rk-dur-fast) var(--rk-ease-out),box-shadow var(--rk-dur-fast) var(--rk-ease-out)}
.rk-card--interactive:hover{border-color:var(--rk-ink);color:var(--rk-ink)}
.rk-card--interactive:focus{outline:none}
.rk-card--interactive:focus-visible{box-shadow:var(--rk-focus-ring)}
[data-surface="dark"] .rk-card--outline-dark:not([data-surface="light"] *){background:transparent;border-color:var(--rk-ink-3);color:var(--rk-steel-50)}

/* ── badge ────────────────────────────────────────────────────────────── */
.rk-badge{box-sizing:border-box;display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:5px 10px;border-radius:var(--rk-r-pill);font-family:var(--rk-font-ui);font-size:13px;font-weight:600;line-height:1.2;white-space:nowrap}
.rk-badge--sm{gap:5px;padding:3px 8px;font-size:12px;font-weight:700}
.rk-badge__dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--rk-accent)}
.rk-badge--sm .rk-badge__dot{width:6px;height:6px}
.rk-badge--free{background:var(--rk-accent-soft);color:var(--rk-accent-ink);font-weight:700}
.rk-badge--featured{background:var(--rk-ink);color:var(--rk-steel-50);font-weight:700}
.rk-badge--verified,.rk-badge--ok{background:var(--rk-ok-bg);color:var(--rk-ok)}
.rk-badge--error{background:var(--rk-error-bg);color:var(--rk-error)}
.rk-badge--neutral{background:var(--rk-steel-100);color:var(--rk-ink)}
.rk-badge--muted{background:var(--rk-steel-100);color:var(--rk-steel-600);font-weight:700}
.rk-badge--strong{background:var(--rk-steel-200);color:var(--rk-ink);font-weight:700}
[data-surface="dark"] .rk-badge--featured:not([data-surface="light"] *){background:var(--rk-steel-50);color:var(--rk-ink)}
[data-surface="dark"] .rk-badge--neutral:not([data-surface="light"] *){background:var(--rk-ink-2);color:var(--rk-steel-50)}

/* ── toast ────────────────────────────────────────────────────────────── */
.rk-toast{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:10px 16px;border-radius:var(--rk-r-md);background:var(--rk-ink);color:var(--rk-steel-50);box-shadow:var(--rk-shadow-toast);font-family:var(--rk-font-ui);font-size:15px;line-height:1.4}
.rk-toast__msg{display:flex;align-items:center;gap:10px;min-width:0}
.rk-toast--success{background:var(--rk-ok);color:#fff;font-weight:600}
.rk-toast--error{background:var(--rk-error-bg);color:var(--rk-error);font-weight:600;box-shadow:none}
.rk-toast--error.is-floating{box-shadow:var(--rk-shadow-toast)}
.rk-toast .rk-link-btn{flex:none;color:inherit}
.rk-toast-region{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);width:min(420px,calc(100% - 32px));display:flex;flex-direction:column;gap:8px;z-index:var(--rk-z-toast);pointer-events:none}
.rk-toast-region .rk-toast{pointer-events:auto;animation:rkin var(--rk-dur-enter) var(--rk-ease-out)}
.rk-toast-region .rk-toast.is-leaving{opacity:0;transform:translateY(8px);transition:opacity var(--rk-dur-base) var(--rk-ease-out),transform var(--rk-dur-base) var(--rk-ease-out)}

/* ── modal / sheet ────────────────────────────────────────────────────── */
.rk-overlay{position:fixed;inset:0;z-index:var(--rk-z-overlay);display:flex;align-items:center;justify-content:center;padding:24px;background:var(--rk-overlay);animation:rkfade var(--rk-dur-base) var(--rk-ease-out)}
.rk-modal{box-sizing:border-box;position:relative;display:flex;flex-direction:column;gap:12px;width:100%;max-width:var(--rk-modal-w,400px);max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;padding:22px;background:var(--rk-steel-50);color:var(--rk-ink);border-radius:var(--rk-r-lg);box-shadow:var(--rk-shadow-card);animation:rkin var(--rk-dur-enter) var(--rk-ease-out)}
.rk-modal:focus{outline:none}
.rk-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.rk-modal__title{margin:0;font-family:var(--rk-font-display);font-size:var(--rk-fs-display-s);line-height:var(--rk-lh-display-s);font-weight:600;color:var(--rk-ink)}
.rk-modal__close{flex:none;width:var(--rk-tap-min);height:var(--rk-tap-min);margin:-10px -10px 0 0;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:var(--rk-r-sm);background:transparent;color:var(--rk-steel-600);cursor:pointer}
.rk-modal__close:hover{background:var(--rk-steel-100);color:var(--rk-ink)}
.rk-modal__close:focus{outline:none}
.rk-modal__close:focus-visible{box-shadow:var(--rk-focus-ring)}
.rk-modal__body{margin:0;font-size:15px;line-height:1.5;color:var(--rk-steel-600)}
.rk-modal__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px}
.rk-modal__actions--single{grid-template-columns:1fr}
.rk-modal__grip{display:none}
@media (max-width:480px){
  .rk-overlay{align-items:flex-end;padding:0}
  .rk-modal{max-width:none;max-height:92dvh;border-radius:var(--rk-r-sheet) var(--rk-r-sheet) 0 0;box-shadow:var(--rk-shadow-sheet);padding:12px 20px calc(20px + env(safe-area-inset-bottom,0px));animation:rksheet var(--rk-dur-sheet) var(--rk-ease-out)}
  .rk-modal__grip{display:block;align-self:center;width:40px;height:4px;border-radius:2px;background:var(--rk-steel-200);margin-bottom:6px}
}
.rk-scroll-lock{overflow:hidden!important}

/* ── empty state ──────────────────────────────────────────────────────── */
.rk-empty{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:36px 20px;background:var(--rk-steel-0);border:1px solid var(--rk-steel-200);border-radius:var(--rk-r-lg);color:var(--rk-ink)}
.rk-empty__icon{width:56px;height:56px;border-radius:50%;border:2px solid var(--rk-steel-200);display:flex;align-items:center;justify-content:center;color:var(--rk-steel-600)}
.rk-empty__pulse{width:12px;height:12px;border-radius:50%;background:var(--rk-accent);animation:rkpulse var(--rk-dur-pulse) infinite}
.rk-empty__title{margin:0;font-family:var(--rk-font-display);font-size:20px;line-height:1.2;font-weight:600}
.rk-empty__text{margin:0;font-size:14px;line-height:1.5;color:var(--rk-steel-600);max-width:34ch}
.rk-empty__action{margin-top:4px}

/* ── skeleton ─────────────────────────────────────────────────────────── */
.rk-skel{display:block;border-radius:4px;background:linear-gradient(90deg,var(--rk-steel-100) 0,var(--rk-steel-50) 50%,var(--rk-steel-100) 100%) var(--rk-steel-100) no-repeat;background-size:200px 100%;animation:rkshimmer var(--rk-dur-shimmer) linear infinite}
.rk-skel--static{animation:none;background:var(--rk-steel-100)}
.rk-skel-card{box-sizing:border-box;display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--rk-steel-0);border:1px solid var(--rk-steel-200);border-radius:var(--rk-r-lg)}

/* ── stat tiles ───────────────────────────────────────────────────────── */
.rk-stats{box-sizing:border-box;display:grid;grid-template-columns:repeat(var(--rk-stats-n,3),minmax(0,1fr));gap:1px;margin:0;min-width:0;background:var(--rk-steel-200);border:1px solid var(--rk-steel-200);border-radius:var(--rk-r-md);overflow:hidden}
.rk-stat{display:flex;flex-direction:column;gap:4px;min-width:0;padding:16px 18px;background:var(--rk-steel-0)}
.rk-stat__label{display:flex;align-items:center;gap:7px;margin:0;font-size:13px;line-height:1.35;color:var(--rk-steel-600)}
.rk-stat__value{margin:0;font-family:var(--rk-font-display);font-size:28px;line-height:1.15;font-weight:600;color:var(--rk-ink);font-variant-numeric:tabular-nums}
.rk-stat__unit{font-size:15px;font-weight:500;color:var(--rk-steel-600)}
.rk-stat__live{width:8px;height:8px;flex:none;border-radius:50%;background:var(--rk-accent);animation:rkpulse 2s infinite}
[data-surface="dark"] .rk-stats:not([data-surface="light"] *){background:var(--rk-ink-3);border-color:var(--rk-ink-3)}
[data-surface="dark"] .rk-stat:not([data-surface="light"] *){background:var(--rk-ink-2)}
[data-surface="dark"] .rk-stat__label:not([data-surface="light"] *),[data-surface="dark"] .rk-stat__unit:not([data-surface="light"] *){color:var(--rk-steel-on-dark)}
[data-surface="dark"] .rk-stat__value:not([data-surface="light"] *){color:var(--rk-steel-50)}
@media (max-width:400px){.rk-stat{padding:14px 12px}.rk-stat__value{font-size:24px}.rk-stat__unit{font-size:13px}}

/* ── stars ────────────────────────────────────────────────────────────── */
.rk-stars{position:relative;display:inline-flex;align-items:center;gap:8px;color:var(--rk-ink);font-size:16px;line-height:1}
.rk-stars__track{position:relative;display:inline-block;letter-spacing:2px;color:var(--rk-steel-200);white-space:nowrap}
.rk-stars__fill{position:absolute;inset:0 auto 0 0;overflow:hidden;color:var(--rk-ink);white-space:nowrap}
.rk-stars__num{font-size:14px;font-weight:700;color:var(--rk-ink)}
[data-surface="dark"] .rk-stars__track:not([data-surface="light"] *){color:var(--rk-ink-3)}
[data-surface="dark"] .rk-stars__fill:not([data-surface="light"] *),[data-surface="dark"] .rk-stars__num:not([data-surface="light"] *){color:var(--rk-steel-50)}
.rk-stars-input{display:inline-flex;gap:0;margin:0;padding:0;border:0}
.rk-stars-input__star{box-sizing:border-box;width:var(--rk-tap-min);height:var(--rk-tap-min);display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:var(--rk-r-sm);background:transparent;color:var(--rk-steel-200);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color var(--rk-dur-fast) var(--rk-ease-out),transform var(--rk-dur-fast) var(--rk-ease-out)}
.rk-stars-input__star svg{width:30px;height:30px}
.rk-stars-input__star.is-on{color:var(--rk-ink)}
.rk-stars-input__star:hover{transform:scale(1.08)}
.rk-stars-input__star:focus{outline:none}
.rk-stars-input__star:focus-visible{box-shadow:var(--rk-focus-ring)}
.rk-stars-input__star:disabled{cursor:not-allowed;transform:none}

/* ── stepper ──────────────────────────────────────────────────────────── */
.rk-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:2px;background:var(--rk-steel-200);border:1px solid var(--rk-steel-200);border-radius:var(--rk-r-lg);overflow:hidden}
.rk-step{display:flex;flex-direction:column;gap:14px;padding:32px;background:var(--rk-steel-0)}
.rk-step__num{font-family:var(--rk-font-display);font-size:15px;font-weight:600;line-height:1.2;color:var(--rk-steel-600);display:flex;align-items:center;gap:8px}
.rk-step__title{margin:0;font-family:var(--rk-font-display);font-size:24px;line-height:1.15;font-weight:600;color:var(--rk-ink)}
.rk-step__text{margin:0;font-size:16px;line-height:1.5;color:var(--rk-steel-600)}
.rk-step[aria-current="step"] .rk-step__num{color:var(--rk-ink)}
.rk-step[aria-current="step"]{box-shadow:inset 0 3px 0 var(--rk-ink)}
.rk-step.is-done .rk-step__num{color:var(--rk-ok)}
.rk-step.is-upcoming .rk-step__title{color:var(--rk-steel-600)}
.rk-steps--compact .rk-step{padding:20px}
.rk-steps--compact .rk-step__title{font-size:18px}
.rk-steps--compact .rk-step__text{font-size:14px}
@media (max-width:480px){.rk-step{padding:24px 20px}}

/* ── reduced motion ───────────────────────────────────────────────────── */
@media (prefers-reduced-motion:reduce){
  .rk-btn,.rk-chip,.rk-seg__opt,.rk-input,.rk-textarea,.rk-select,.rk-plate,.rk-switch__track,.rk-switch__knob,.rk-checkbox__box,.rk-checkbox__box svg,.rk-card--interactive,.rk-stars-input__star,.rk-toast-region .rk-toast.is-leaving{transition:none}
  .rk-overlay,.rk-modal,.rk-toast-region .rk-toast{animation:none}
  .rk-empty__pulse,.rk-stat__live,.rk-skel{animation:none}
  .rk-btn__spinner{animation-duration:2.4s}
  .rk-btn:active:not(:disabled),.rk-btn.is-active,.rk-stars-input__star:hover{transform:none}
}

/* Shared visual finish across the public site and all app surfaces. */
.rk-editorial{position:relative;overflow:hidden;border-radius:14px;background:#252a30;isolation:isolate}.rk-editorial img{display:block;width:100%;height:100%;object-fit:cover}.rk-editorial::after{content:"";position:absolute;inset:0;border:1px solid #ffffff14;border-radius:inherit;pointer-events:none}
.rk-card{box-shadow:0 3px 12px #15181d04}.rk-card--interactive:hover{box-shadow:0 8px 22px #15181d09}.rk-btn{transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease}.rk-btn--primary:not(:disabled):hover{box-shadow:0 5px 18px #ff6a1a28}.rk-btn:active:not(:disabled){transform:translateY(1px)}.rk-input,.rk-select,.rk-textarea{transition:border-color .18s ease,box-shadow .18s ease}.rk-empty{background:#fffdf9;border-color:#e8e3dc}.rk-empty__icon{border:1px solid #ecdaca;background:#fff1e7;color:#a7430d}.rk-badge{letter-spacing:.1px}
@media(prefers-reduced-motion:reduce){.rk-btn,.rk-input,.rk-select,.rk-textarea{transition:none}.rk-btn:active:not(:disabled){transform:none}}
