.rapidboard {
    --rb-accent: #1769aa;
    --rb-danger: #b42318;
    --rb-border: #d9dee5;
    --rb-muted: #657080;
    box-sizing: border-box;
    color: #1f2937;
    display: grid;
    gap: 24px;
    margin: 24px auto;
    max-width: 900px;
}
.rapidboard *, .rapidboard *::before, .rapidboard *::after { box-sizing: inherit; }
.rapidboard__composer, .rapidboard__feed {
    background: #fff;
    border: 1px solid var(--rb-border);
    border-radius: 12px;
    padding: clamp(16px, 3vw, 28px);
}
.rapidboard h2 { font-size: 1.25rem; margin: 0 0 18px; }
.rapidboard__field { display: grid; gap: 7px; margin: 0 0 16px; }
.rapidboard__field > label { font-weight: 650; }
.rapidboard__field input[type="text"],
.rapidboard__field input[type="password"],
.rapidboard__field textarea,
.rapidboard__field select {
    background: #fff;
    border: 1px solid #aeb7c2;
    border-radius: 7px;
    color: inherit;
    font: inherit;
    max-width: 100%;
    padding: 10px 12px;
    width: 100%;
}
.rapidboard__field :focus { border-color: var(--rb-accent); box-shadow: 0 0 0 2px rgba(23, 105, 170, .16); outline: 0; }
.rapidboard__radios { display: flex; flex-wrap: wrap; gap: 12px 20px; }
.rapidboard__checkbox { align-items: flex-start; display: flex; gap: 8px; }
.rapidboard__checkbox input { margin-top: .2em; }
.rapidboard__primary {
    background: var(--rb-accent);
    border: 0;
    border-radius: 7px;
    color: #fff;
    cursor: pointer;
    font: inherit;
    font-weight: 650;
    padding: 10px 18px;
}
.rapidboard button:disabled { cursor: wait; opacity: .55; }
.rapidboard__message { border-radius: 7px; margin: 12px 0 0; padding: 10px 12px; }
.rapidboard__message.is-success { background: #eaf7ee; color: #176b35; }
.rapidboard__message.is-error { background: #fff0ef; color: var(--rb-danger); }
.rapidboard__card { border-bottom: 1px solid var(--rb-border); padding: 18px 0; }
.rapidboard__card:first-of-type { padding-top: 0; }
.rapidboard__value { align-items: baseline; display: flex; gap: 8px; margin: 8px 0; overflow-wrap: anywhere; }
.rapidboard__copy { background: transparent; border: 0; cursor: pointer; padding: 2px; }
.rapidboard__card footer { align-items: center; color: var(--rb-muted); display: flex; font-size: .9rem; gap: 12px; justify-content: space-between; margin-top: 14px; }
.rapidboard__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.rapidboard__actions button, .rapidboard__cancel, .rapidboard__cancel-pending {
    background: #fff;
    border: 1px solid var(--rb-border);
    border-radius: 6px;
    color: inherit;
    cursor: pointer;
    padding: 6px 10px;
}
.rapidboard__cancel-pending { margin-top: 12px; }
.rapidboard__delete, .rapidboard__report { color: var(--rb-danger) !important; }
.rapidboard__pagination { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 20px; }
.rapidboard__pagination .page-numbers { border: 1px solid var(--rb-border); border-radius: 5px; padding: 5px 9px; text-decoration: none; }
.rapidboard__pagination .current { background: var(--rb-accent); color: #fff; }
.rapidboard__dialog { border: 0; border-radius: 12px; box-shadow: 0 18px 60px rgba(0, 0, 0, .28); max-width: 520px; padding: 24px; width: calc(100% - 32px); }
.rapidboard__dialog::backdrop { background: rgba(16, 24, 40, .62); }
.rapidboard__dialog-actions { display: flex; gap: 10px; justify-content: flex-end; }
.rapidboard__empty { color: var(--rb-muted); }
.rapidboard-error { color: var(--rb-danger); }
@media (max-width: 600px) {
    .rapidboard { gap: 14px; margin: 14px 0; }
    .rapidboard__card footer, .rapidboard__value { align-items: flex-start; flex-direction: column; }
    .rapidboard__actions { width: 100%; }
}
