/* ============================================
   SCHEMA-EXTRACTOR.HTML
   ============================================ */

.main-content-no-padding {
    padding-top: 0 !important;
}

.sx-layout {
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin-bottom: 50px;
}

.sx-card {
    background: var(--surface);
    border: 2px solid #1a1a1a;
    border-radius: 8px;
    padding: 24px;
    box-shadow: 4px 4px 0 #1a1a1a;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.sx-card:hover {
    transform: translate(2px, 2px);
    box-shadow: 2px 2px 0 #1a1a1a;
}

.sx-card-title {
    font-size: 1.2rem;
    font-weight: 700;
    margin: -24px -24px 16px -24px;
    padding: 12px 16px;
    border-bottom: 2px solid #1a1a1a;
    border-radius: 6px 6px 0 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.sx-card-url {
    background: #e0d4fc;
}

.sx-card-url .sx-card-title {
    background: #e0d4fc;
}

.sx-card-results {
    background: #b8f0ef;
}

.sx-card-results .sx-card-title {
    background: #b8f0ef;
}

.sx-help {
    margin: 0 0 12px;
    font-size: 0.9rem;
    color: var(--text-muted);
}

.sx-input {
    width: 100%;
    box-sizing: border-box;
    padding: 12px 14px;
    border: 2px solid #1a1a1a;
    border-radius: 8px;
    box-shadow: 2px 2px 0 #1a1a1a;
    background: #fff;
    font: inherit;
    margin: 0 0 12px;
}

.sx-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.sx-types {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 14px;
}

.sx-type-chip {
    border: 2px solid #1a1a1a;
    border-radius: 8px;
    box-shadow: 2px 2px 0 #1a1a1a;
    padding: 4px 10px;
    font-weight: 700;
    background: #f8f0b8;
}

.sx-block {
    border: 2px solid #1a1a1a;
    border-radius: 8px;
    box-shadow: 2px 2px 0 #1a1a1a;
    padding: 12px 14px;
    margin-bottom: 10px;
    background: #fff;
}

.sx-block-err {
    background: #ffe8d6;
}

.sx-block-head {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    align-items: center;
    margin-bottom: 8px;
    font-weight: 700;
}

.sx-node {
    margin: 6px 0;
    font-size: 0.95rem;
}

.sx-missing {
    color: #9a3412;
    font-weight: 600;
}

.sx-empty {
    margin: 0;
}

@media (prefers-color-scheme: dark) {
    .sx-card,
    .sx-input,
    .sx-block,
    .sx-type-chip {
        border-color: #f0ede8;
        box-shadow: 4px 4px 0 #f0ede8;
    }
    .sx-card-url,
    .sx-card-url .sx-card-title { background: rgba(224, 212, 252, 0.14); }
    .sx-card-results,
    .sx-card-results .sx-card-title { background: rgba(184, 240, 239, 0.12); }
    .sx-block-err { background: rgba(255, 214, 184, 0.12); }
}
