/* nanoPost Error Decoder */

.np-error-decoder .np-tool__lead {
    margin-bottom: 1.5rem;
    color: var(--np-color-muted, #6b7280);
}

.np-ed-input-group {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.np-ed-label {
    font-weight: 600;
    font-size: 0.9375rem;
}

.np-ed-textarea {
    font-family: ui-monospace, 'SFMono-Regular', Menlo, monospace;
    font-size: 0.875rem;
    line-height: 1.6;
    padding: 0.75rem 1rem;
    border: 1px solid var(--np-color-border, #d1d5db);
    border-radius: 6px;
    resize: vertical;
    width: 100%;
    box-sizing: border-box;
    background: var(--np-color-bg, #fff);
    color: var(--np-color-text, #111827);
    transition: border-color 0.15s;
}

.np-ed-textarea:focus {
    outline: none;
    border-color: var(--np-color-primary, #2563eb);
    box-shadow: 0 0 0 3px rgba(37,99,235,0.12);
}

/* Result card */

.np-ed-result__card {
    border: 1px solid var(--np-color-border, #d1d5db);
    border-radius: 8px;
    padding: 1.5rem;
    background: var(--np-color-surface, #f9fafb);
    margin-bottom: 1.5rem;
}

.np-ed-result__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 0.875rem;
}

.np-ed-badge {
    display: inline-block;
    padding: 0.2rem 0.625rem;
    border-radius: 4px;
    font-size: 0.78125rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    background: var(--np-color-badge-bg, #e5e7eb);
    color: var(--np-color-badge-text, #374151);
}

.np-ed-badge--fault[data-fault="sender"] {
    background: #fef3c7;
    color: #92400e;
}

.np-ed-badge--fault[data-fault="receiver"] {
    background: #dbeafe;
    color: #1e40af;
}

.np-ed-badge--fault[data-fault="relay"] {
    background: #ede9fe;
    color: #5b21b6;
}

.np-ed-result__label {
    font-size: 1.125rem;
    font-weight: 700;
    margin: 0 0 1rem;
}

.np-ed-result__section {
    margin-bottom: 1rem;
}

.np-ed-result__section h4 {
    font-size: 0.875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--np-color-muted, #6b7280);
    margin: 0 0 0.4rem;
}

.np-ed-result__section p {
    margin: 0;
    line-height: 1.65;
}

.np-ed-result__actions {
    margin-top: 1.25rem;
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

/* No-match state */

.np-ed-nomatch {
    border: 1px solid var(--np-color-border, #d1d5db);
    border-radius: 8px;
    padding: 1.25rem 1.5rem;
    background: var(--np-color-surface, #f9fafb);
}

.np-ed-nomatch p {
    margin: 0 0 0.5rem;
    font-weight: 600;
}

.np-ed-nomatch ul {
    margin: 0;
    padding-left: 1.25rem;
}

.np-ed-nomatch li {
    margin-bottom: 0.375rem;
    line-height: 1.55;
}
