
.fi-pdf-group {
    margin: 0 0 1.15rem;
    padding: 0;
    border: 0;
}
.fi-pdf-group legend {
    float: none;
    width: auto;
    margin-bottom: .5rem;
    font-size: .92rem;
    font-weight: 700;
}

/* botões lado a lado (um radio por botão) */
.fi-seg { display: flex; flex-wrap: wrap; gap: .4rem; }
.fi-seg label { position: relative; flex: 1 1 auto; margin: 0; }
.fi-seg input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.fi-seg span {
    display: block;
    padding: .5rem .7rem;
    border: 2px solid var(--up-border);
    border-radius: 12px;
    font-size: .85rem;
    font-weight: 700;
    text-align: center;
    white-space: nowrap;
    cursor: pointer;
    transition: border-color .15s, background-color .15s, color .15s;
}
.fi-seg label:hover input:not(:disabled) + span {
    border-color: color-mix(in srgb, var(--up-accent) 50%, white);
}
.fi-seg input:checked + span {
    border-color: var(--up-accent);
    background: color-mix(in srgb, var(--up-accent) 8%, white);
    color: var(--up-accent);
}
.fi-seg input:focus-visible + span { outline: 3px solid var(--up-accent); outline-offset: 2px; }
.fi-seg input:disabled + span { opacity: .45; cursor: not-allowed; }

.fi-pdf-hint {
    margin: .45rem 0 0;
    font-size: .78rem;
    color: var(--up-muted);
}

.fi-pdf-notes { margin-bottom: 1.25rem; }
.fi-pdf-notes p {
    margin: 0 0 .4rem;
    padding: .5rem .7rem;
    border-radius: 10px;
    background: color-mix(in srgb, var(--up-accent) 7%, white);
    font-size: .8rem;
    color: var(--up-ink);
}
