.source-heading h1 { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
.source-heading h1 .badge { font-size:12px; }
.source-actions { position:relative; }
.source-actions summary { cursor:pointer; list-style:none; }
.source-actions summary::-webkit-details-marker { display:none; }
.source-action-menu { position:absolute; right:0; z-index:20; min-width:220px; padding:8px; background:var(--paper); border:1px solid var(--line); border-radius:8px; box-shadow:0 8px 24px #182b431a; }
.source-action-menu a { display:block; padding:10px 12px; }
.source-settings-layout { display:grid; grid-template-columns:210px minmax(0, 1fr); gap:24px; align-items:start; }
.source-settings-nav { display:flex; flex-direction:column; gap:4px; position:sticky; top:20px; }
.source-settings-nav a { padding:12px 14px; border-radius:6px; color:inherit; text-decoration:none; }
.source-settings-nav a[aria-current="page"], .source-subnav a[aria-current="page"] { background:var(--green-soft); color:var(--ink); font-weight:600; }
.source-settings-nav a:hover { background:var(--canvas); }
.source-settings-content { min-width:0; }
.source-fields { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:18px 24px; }
.source-setting-field:has(textarea) { grid-column:1 / -1; }
.source-setting-field textarea { min-height:90px; width:100%; }
.source-setting-field input:not([type="checkbox"]), .source-setting-field select { width:100%; }
.source-setting-field .muted { font-size:13px; margin:6px 0 0; }
.source-save { border-top:1px solid var(--line); margin-top:24px; padding-top:18px; }
.source-subnav { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:18px; }
.source-subnav a { padding:8px 12px; border-radius:6px; }
.source-url-filters { grid-template-columns:minmax(180px, 2fr) repeat(2, minmax(130px, 1fr)) auto; }
.source-settings-content pre { white-space:pre-wrap; overflow-wrap:anywhere; }
@media(max-width:1100px) { .source-url-filters { grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media(max-width:760px) { .source-settings-layout { grid-template-columns:1fr; gap:12px; } .source-settings-nav { position:static; flex-direction:row; flex-wrap:wrap; gap:4px; } .source-settings-nav a { padding:8px 10px; } .source-fields, .source-url-filters { grid-template-columns:1fr; } .source-action-menu { right:0; } .source-heading .actions { flex-wrap:wrap; } }

@media(max-width:760px) { .source-tabs { flex-wrap:wrap; overflow:visible; } .source-tabs a { white-space:normal; } }

.source-json-setting { grid-column:1 / -1; border-top:1px solid var(--line); padding-top:14px; }
.source-json-setting[open] summary { margin-bottom:14px; }
