.rlm-dialog, .rlm-dialog * { box-sizing: border-box; }
.rlm-dialog * { font-family: inherit; }
.rlm-dialog {
    --rlm-accent: var(--color-primary, 125, 48, 66);
    --rlm-bg: #fff;
    --rlm-ink: #172033;
    --rlm-muted: #64748b;
    --rlm-soft: #f7f8fa;
    --rlm-line: rgba(100, 116, 139, .16);
    position: fixed;
    inset: 0;
    width: min(32rem, calc(100vw - 2rem));
    max-width: none;
    max-height: calc(100vh - 2rem);
    max-height: calc(100dvh - 2rem);
    margin: auto;
    padding: 0;
    border: 1px solid var(--rlm-line);
    border-radius: 20px;
    background: var(--rlm-bg);
    color: var(--rlm-ink);
    font-family: inherit;
    font-size: 15px;
    text-align: start;
    overflow: hidden;
    box-shadow: 0 24px 80px -20px rgba(10, 20, 36, .34);
    opacity: 0;
    transform: translateY(8px) scale(.985);
    transition: opacity 180ms ease-out, transform 180ms cubic-bezier(.23, 1, .32, 1);
}
.dark .rlm-dialog {
    --rlm-accent: var(--color-primary-dark, var(--color-primary, 185, 100, 119));
    --rlm-bg: #1e293b;
    --rlm-ink: #f1f5f9;
    --rlm-muted: #a8b4c6;
    --rlm-soft: #172235;
    --rlm-line: rgba(148, 163, 184, .18);
}
.rlm-dialog.is-open { opacity: 1; transform: translateY(0) scale(1); }
.rlm-dialog.is-closing { transition-duration: 120ms; }
.rlm-dialog::backdrop { background: rgba(11, 18, 31, .55); backdrop-filter: blur(3px); }
.rlm-dialog.is-instant { transition: none; }
.rlm-layout { display: flex; flex-direction: column; max-height: calc(100vh - 2rem); max-height: calc(100dvh - 2rem); }
.rlm-main { min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 28px 28px 24px; }
.rlm-header { display: grid; grid-template-columns: 42px minmax(0, 1fr) 44px; align-items: center; gap: 13px; margin-bottom: 25px; }
.rlm-emblem { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 13px; background: rgba(var(--rlm-accent), .1); color: rgba(var(--rlm-accent), 1); }
.rlm-emblem svg { width: 23px; height: 23px; }
.rlm-dialog .rlm-title { margin: 0; padding: 0; border: 0; color: var(--rlm-ink); font: inherit; font-size: 23px; font-weight: 650; line-height: 1.22; letter-spacing: -.025em; overflow-wrap: anywhere; }
.rlm-dialog .rlm-title:focus { outline: none; }
.rlm-close { display: grid; place-items: center; width: 44px; height: 44px; padding: 12px; align-self: start; border: 0; border-radius: 50%; background: transparent; color: var(--rlm-muted); cursor: pointer; transition: background-color 140ms ease, color 140ms ease; }
.rlm-close svg { width: 18px; height: 18px; }
.rlm-status { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 0 0 24px; padding: 15px 17px; border: 1px solid var(--rlm-line); border-radius: 12px; background: var(--rlm-soft); }
.rlm-status-label { margin: 0 0 5px; color: var(--rlm-muted); font-size: 12px; font-weight: 450; line-height: 1.4; }
.rlm-status-value { margin: 0; color: var(--rlm-ink); font-size: 15px; line-height: 1.4; font-weight: 600; font-variant-numeric: tabular-nums; }
.rlm-status dt, .rlm-status dd { display: block; float: none; width: auto; padding: 0; text-align: start; }
.rlm-body { color: var(--rlm-muted); line-height: 1.65; overflow-wrap: anywhere; }
.rlm-body:empty { display: none; }
.rlm-dialog .rlm-body p { margin: 0 0 14px; font: inherit; line-height: inherit; }
.rlm-dialog .rlm-body h3, .rlm-dialog .rlm-body h4 { margin: 22px 0 8px; color: var(--rlm-ink); font-size: 17px; line-height: 1.4; font-weight: 600; letter-spacing: -.015em; text-transform: none; }
.rlm-body strong, .rlm-body b { color: var(--rlm-ink); font-weight: 600; }
.rlm-body > :last-child { margin-bottom: 0 !important; }
.rlm-body ul, .rlm-body ol { margin: 12px 0 16px; padding-inline-start: 23px; list-style: disc; }
.rlm-body ol { list-style: decimal; }
.rlm-body li { margin: 5px 0; }
.rlm-body blockquote { margin: 16px 0; padding-inline-start: 14px; border-inline-start: 2px solid rgba(var(--rlm-accent), .5); }
.rlm-body a { color: rgba(var(--rlm-accent), 1); text-decoration: underline; text-underline-offset: 3px; }
.rlm-actions { display: flex; flex-direction: column; gap: 7px; flex-shrink: 0; padding: 19px 28px 21px; border-top: 1px solid var(--rlm-line); }
.rlm-dialog .rlm-action, .rlm-body a.rlm-inline-button, .rlm-body a.rlm-inline-button-secondary { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 44px; padding: 11px 17px; border: 1px solid transparent; border-radius: 10px; font: inherit; font-size: 14px; font-weight: 550; line-height: 1.4; text-align: center; text-decoration: none; cursor: pointer; overflow-wrap: anywhere; transition: background-color 140ms ease, color 140ms ease, transform 140ms ease-out; }
.rlm-dialog .rlm-action-primary, .rlm-body a.rlm-inline-button { background: rgba(var(--rlm-accent), 1); border-color: rgba(var(--rlm-accent), 1); color: var(--rlm-button-ink, #fff); }
.rlm-dialog .rlm-action-secondary, .rlm-body a.rlm-inline-button-secondary { color: var(--rlm-muted); background: transparent; }
.rlm-action svg { width: 17px; height: 17px; flex-shrink: 0; }
.rlm-body a.rlm-inline-button, .rlm-body a.rlm-inline-button-secondary { margin: 5px 5px 5px 0; }
.rlm-body a.rlm-inline-button-secondary { border-color: var(--rlm-line); }
.rlm-close:focus-visible, .rlm-action:focus-visible, .rlm-body a:focus-visible { outline: 2px solid rgba(var(--rlm-accent), 1); outline-offset: 3px; }
.rlm-action:active, .rlm-body a.rlm-inline-button:active { transform: scale(.98); }
@media (hover: hover) and (pointer: fine) {
    .rlm-close:hover, .rlm-dialog .rlm-action-secondary:hover { background: rgba(var(--rlm-accent), .08); color: var(--rlm-ink); }
    .rlm-dialog .rlm-action-primary:hover, .rlm-body a.rlm-inline-button:hover { background: rgba(var(--rlm-accent), .94); color: var(--rlm-button-ink, #fff); }
}
@media (max-width: 480px) {
    .rlm-dialog { border-radius: 17px; }
    .rlm-main { padding: 22px 20px; }
    .rlm-header { grid-template-columns: 38px minmax(0, 1fr) 44px; gap: 10px; margin-bottom: 22px; }
    .rlm-emblem { width: 38px; height: 38px; border-radius: 11px; }
    .rlm-dialog .rlm-title { font-size: 21px; }
    .rlm-status { gap: 12px; padding: 13px; }
    .rlm-actions { padding: 16px 20px 18px; }
}
@media (prefers-reduced-motion: reduce) {
    .rlm-dialog, .rlm-dialog.is-open { transform: none; transition: opacity 100ms linear; }
    .rlm-action, .rlm-close { transition: none !important; }
    .rlm-action:active, .rlm-body a.rlm-inline-button:active { transform: none; }
}
