/* header */
.top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px 20px;
    flex-wrap: wrap;
    margin-bottom: 16px
}

.brand {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0
}

.logo {
    display: grid;
    grid-template-columns: repeat(2, 19px);
    grid-template-rows: repeat(2, 19px);
    gap: 3px;
    flex: none
}

.logo i {
    border-radius: 5px;
    transition: background-color .45s
}

.logo i:nth-child(1) {
    border-radius: 12px 5px 5px 5px
}

.logo i:nth-child(4) {
    border-radius: 5px 5px 12px 5px
}

.brand h1 {
    font-family: var(--f-display);
    font-weight: 800;
    font-size: 30px;
    line-height: 1.05;
    margin: 0;
    letter-spacing: -.02em
}

.brand p {
    margin: 3px 0 0;
    color: var(--ink-2);
    font-size: 14px
}

.top-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap
}

.btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 0 14px;
    border-radius: 10px;
    border: 1px solid var(--line);
    background: var(--panel);
    font-weight: 600;
    font-size: 14px;
    line-height: 1.3;
    white-space: nowrap;
    transition: border-color .15s, background-color .15s
}

.btn:hover {
    border-color: var(--ink-3)
}

.btn.solid {
    background: var(--ink);
    color: var(--panel);
    border-color: var(--ink)
}

.btn.solid:hover {
    opacity: .9
}

.btn:disabled {
    opacity: .4;
    cursor: not-allowed
}

.btn.sm {
    min-height: 30px;
    padding: 0 10px;
    font-size: 13px;
    border-radius: 8px
}

.btn.wide {
    width: 100%;
    justify-content: center;
    min-height: 42px
}

kbd {
    font-family: var(--f-mono);
    font-size: 11px;
    padding: 0 5px;
    border-radius: 4px;
    border: 1px solid currentColor;
    opacity: .65;
    line-height: 1.5
}