:root { --bg:#0b1014; --panel:#11191f; --line:#26323a; --text:#e8eef1; --muted:#8ea0aa; --signal:#8cf3c7; --warning:#ffbf69; --danger:#ff7474; }
* { box-sizing:border-box; }
body { margin:0; color:var(--text); background:var(--bg); font:15px/1.45 Inter, ui-sans-serif, system-ui, sans-serif; }
a { color:inherit; }
.topbar { min-height:62px; display:flex; align-items:center; justify-content:space-between; padding:0 max(24px, calc((100vw - 1440px)/2)); border-bottom:1px solid var(--line); background:#0d1419; }
.brand { display:flex; align-items:center; gap:10px; font-weight:750; text-decoration:none; letter-spacing:.02em; }
.brand-mark { display:grid; place-items:center; width:31px; height:31px; border:1px solid var(--signal); color:var(--signal); font:700 11px ui-monospace, monospace; }
nav { display:flex; gap:22px; } nav a { color:var(--muted); text-decoration:none; } nav a:hover { color:var(--text); }
main { max-width:1440px; margin:auto; padding:30px 24px 60px; }
.site-footer { max-width:1440px; margin:auto; padding:18px 24px 30px; border-top:1px solid var(--line); color:var(--muted); text-align:right; }.site-footer a { color:inherit; }
.hero { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:26px; }
.hero h1 { margin:2px 0 2px; font-size:clamp(28px, 4vw, 46px); line-height:1.05; letter-spacing:-.04em; }
.hero p { margin:0; color:var(--muted); }.eyebrow { color:var(--signal)!important; font:700 11px ui-monospace, monospace; letter-spacing:.16em; }
.button { min-height:39px; display:inline-flex; align-items:center; justify-content:center; padding:8px 14px; border:1px solid #3a4a54; border-radius:3px; background:#172128; color:var(--text); text-decoration:none; cursor:pointer; font:inherit; }
.button:hover { border-color:#667b87; }.button.primary { background:var(--signal); border-color:var(--signal); color:#07110e; font-weight:700; }.button.ghost { background:transparent; }
.notice { margin:0 0 18px; padding:11px 14px; border-left:3px solid var(--signal); background:#10251e; }.notice.error { border-color:var(--danger); background:#291719; }
.filters { display:grid; grid-template-columns:repeat(auto-fit,minmax(145px,1fr)); gap:10px; align-items:end; padding:15px; border:1px solid var(--line); background:var(--panel); }
.filters .search-field { grid-column:span 2; }
label span { display:block; margin-bottom:5px; color:var(--muted); font:700 10px ui-monospace, monospace; text-transform:uppercase; letter-spacing:.1em; }
input,select,textarea { width:100%; min-height:40px; border:1px solid #34434c; border-radius:2px; padding:9px 10px; color:var(--text); background:#0b1216; font:inherit; } textarea { resize:vertical; }
.stream { margin-top:18px; border-top:1px solid var(--line); }
.item { display:grid; grid-template-columns:115px 150px 180px minmax(0,1fr); gap:16px; padding:14px 8px; border-bottom:1px solid var(--line); }.item.unread { border-left:3px solid var(--signal); padding-left:10px; }
.item time,.source,.tags { padding-top:2px; color:var(--muted); font:12px ui-monospace, monospace; }.source { color:#c4d0d5; overflow:hidden; text-overflow:ellipsis; }
.tags { display:flex; flex-wrap:wrap; align-content:start; gap:5px; }.tags span { padding:2px 6px; border:1px solid #31414a; font-size:10px; text-transform:uppercase; }
.story a { font-size:16px; font-weight:680; text-decoration:none; }.story a:hover { color:var(--signal); }.story p { margin:4px 0 0; color:var(--muted); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.editorial-meta,.quick-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:8px; color:var(--muted); font:10px ui-monospace,monospace; text-transform:uppercase; }.editorial-meta span,.editorial-meta a { padding:2px 6px; border:1px solid #31414a; font-size:10px; }.editorial-meta a { color:var(--signal); }.review.approved { color:var(--signal); }.review.rejected { color:var(--danger); }.quick-actions form { margin:0; }.quick-actions button { min-height:27px; padding:3px 9px; border:1px solid #34434c; background:transparent; color:var(--muted); cursor:pointer; }.quick-actions button:hover { color:var(--text); border-color:#667b87; }
.empty { padding:70px 20px; text-align:center; color:var(--muted); }.empty h2 { color:var(--text); }
.source-layout { display:grid; grid-template-columns:minmax(360px,.72fr) minmax(520px,1.28fr); gap:18px; align-items:start; }.panel { padding:20px; border:1px solid var(--line); background:var(--panel); }.panel h2 { margin-top:0; }
.source-form { display:grid; gap:13px; }.form-row { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }.source-list article { display:flex; justify-content:space-between; gap:18px; padding:14px 0; border-top:1px solid var(--line); }.source-list small,.source-list article>div>a { display:block; color:var(--muted); }.source-list article>div>a { max-width:500px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }.source-state { display:flex; align-items:center; gap:9px; }.status,.feed-error { padding:3px 7px; border:1px solid var(--line); color:var(--muted); font:10px ui-monospace, monospace; text-transform:uppercase; }.status.on { color:var(--signal); border-color:#285b49; }.feed-error { color:var(--warning); }.muted { color:var(--muted); }
.source-state { flex-wrap:wrap; justify-content:flex-end; }.button.danger { color:var(--danger); border-color:#69383c; background:transparent; }.error-detail { margin-top:8px; color:var(--warning); font-size:12px; }.error-detail summary { cursor:pointer; }.error-detail p { max-width:600px; white-space:normal; overflow-wrap:anywhere; }.archived-panel { grid-column:1/-1; }.edit-panel { max-width:850px; }.form-actions { display:flex; gap:10px; }
.source-bulk-panel,.source-list-panel{grid-column:1/-1}.source-bulk-form{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;align-items:end}.source-bulk-form label span input{width:auto;min-height:0;margin-right:5px}.source-bulk-form .bulk-select-all{grid-column:1/-1}.source-list article{position:relative}.source-selector{align-self:center}.source-selector input{width:auto;min-height:0;accent-color:var(--signal)}
.catalog-panel { grid-column:1/-1; }.catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.catalog-grid fieldset { min-width:0; margin:0; padding:12px; border:1px solid var(--line); }.catalog-grid legend { padding:0 6px; color:var(--signal); font:11px ui-monospace,monospace; text-transform:uppercase; }.catalog-source { display:flex; align-items:flex-start; gap:9px; padding:8px 4px; cursor:pointer; }.catalog-source+.catalog-source { border-top:1px solid var(--line); }.catalog-source input { margin-top:3px; }.catalog-source span,.catalog-source small { display:block; min-width:0; }.catalog-source small { margin-top:3px; color:var(--muted); }.catalog-source.existing { opacity:.55; cursor:default; }
.bulk-toolbar { display:flex; align-items:end; flex-wrap:wrap; gap:10px; margin:16px 0 8px; padding:12px; border:1px solid var(--line); background:var(--panel); }.bulk-toolbar label { display:grid; gap:4px; }.bulk-toolbar label span { color:var(--muted); font-size:11px; }.bulk-toolbar .select-all { display:flex; align-items:center; gap:7px; align-self:center; margin-right:auto; }.item { position:relative; }.item-selector { position:absolute; top:15px; left:-22px; }.item-selector input { accent-color:var(--signal); }
.saved-filter-panel { display:flex; align-items:start; gap:12px; flex-wrap:wrap; margin:12px 0; }.save-filter { display:flex; gap:8px; }.saved-filters { display:flex; gap:7px; flex-wrap:wrap; }.saved-filters article { display:flex; align-items:center; gap:8px; padding:7px 9px; border:1px solid var(--line); }.saved-filters span { color:var(--muted); font-size:11px; }.saved-filters form button { border:0; color:var(--muted); background:none; cursor:pointer; }
.topbar nav form { display:inline; }.nav-button { padding:0; border:0; color:inherit; background:none; font:inherit; cursor:pointer; }.login-panel { max-width:430px; margin:8vh auto; }.reader form[method="post"]:not([action="/login"]):not(.personal-action),.reader a[href$="/edit"],.reader .bulk-toolbar,.reader .item-selector,.reader .quick-actions { display:none; }
.user-layout { display:grid; grid-template-columns:minmax(280px,.6fr) minmax(520px,1.4fr); gap:18px; }.user-list { display:grid; gap:10px; }.user-list form { display:grid; grid-template-columns:minmax(100px,1fr) 120px auto minmax(180px,1fr) auto; gap:9px; align-items:center; padding:10px 0; border-top:1px solid var(--line); }
.access-panel { grid-column:1/-1; }.access-mode-form { display:flex; align-items:center; justify-content:space-between; gap:20px; }.switch-row { display:flex; align-items:flex-start; gap:10px; }.switch-row input { margin-top:4px; accent-color:var(--signal); }.switch-row span,.switch-row small { display:block; }.switch-row small { margin-top:4px; color:var(--muted); }
.config-transfer,.config-transfer form { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.token-reveal { margin:16px 0; padding:18px; border:1px solid var(--signal); background:#102a26; }.token-reveal code,.token-help code { display:block; margin:10px 0; padding:10px; overflow-wrap:anywhere; color:var(--signal); background:var(--bg); }.token-reveal p { margin-bottom:0; color:var(--muted); }.token-help { margin-top:18px; }
.api-docs { margin-top:18px; }.api-docs code,.api-docs pre { display:block; max-width:100%; padding:10px; overflow:auto; color:var(--signal); background:var(--bg); }.api-docs p code { display:inline; padding:3px 6px; }
.audit-list article { display:grid; grid-template-columns:150px 130px 170px 1fr; gap:10px; padding:10px 0; border-top:1px solid var(--line); }.audit-list time,.audit-list small { color:var(--muted); font:11px ui-monospace,monospace; }.user-list .revoke-form { display:block; padding:0 0 10px; text-align:right; }
.metric-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-bottom:18px; }.metric-grid article { padding:18px; border:1px solid var(--line); background:var(--panel); }.metric-grid strong,.metric-grid span { display:block; }.metric-grid strong { color:var(--signal); font-size:25px; }.metric-grid span { margin-top:5px; color:var(--muted); }
.pagination { display:flex; align-items:center; justify-content:center; gap:14px; margin-top:20px; color:var(--muted); }
.retention-panel { margin-top:18px; }.retention-form { display:grid; grid-template-columns:2fr repeat(5,minmax(90px,1fr)) auto; gap:10px; align-items:end; margin:16px 0; }.retention-form .switch-row { align-self:center; }
.opml-panel { display:flex; align-items:end; gap:14px; }.opml-panel>div { margin-right:auto; }.opml-panel h2,.opml-panel p { margin-bottom:0; }.opml-panel form { display:flex; align-items:end; gap:8px; }.opml-panel input { max-width:290px; }
.rule-layout { display:grid; grid-template-columns:minmax(300px,.6fr) minmax(520px,1.4fr); gap:18px; align-items:start; }.rule-list article { display:flex; align-items:center; gap:10px; padding:14px 0; border-top:1px solid var(--line); }.rule-list article>div { margin-right:auto; }.rule-list small { display:block; max-width:650px; color:var(--muted); }.rule-list p { margin:5px 0 0; }
.subscription-action { display:inline-flex; margin-left:14px; }.subscription-new { border-color:#39745f; }.new-badge { color:var(--signal)!important; border-color:#39745f!important; }.event-card>.personal-action { margin-top:14px; }
.duplicate-settings { margin-bottom:18px; }.duplicate-settings-form { display:grid; grid-template-columns:1.4fr repeat(4,minmax(120px,1fr)) auto; gap:10px; align-items:end; }
.public-feed-links { display:grid; min-width:0; max-width:100%; gap:7px; margin:12px 0; }.public-feed-links a,.public-feed-links span { min-width:0; overflow-wrap:anywhere; word-break:break-word; }.public-feed-links a { color:var(--signal); }
.detail-heading { max-width:1050px; margin-bottom:24px; }.detail-heading h1 { margin:12px 0 8px; font-size:clamp(28px,5vw,52px); line-height:1.08; letter-spacing:-.04em; }.back-link { color:var(--signal); text-decoration:none; }.detail-tags { display:flex; gap:7px; margin-top:30px; }.detail-tags span { padding:3px 7px; border:1px solid var(--line); color:var(--muted); font:10px ui-monospace,monospace; text-transform:uppercase; }.detail-time { color:var(--muted); font:12px ui-monospace,monospace; }.detail-layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:18px; align-items:start; }.detail-content p { font-size:17px; line-height:1.65; white-space:pre-line; }.editorial-panel { position:sticky; top:20px; }.read-form { margin-top:10px; }
.tabs { display:flex; gap:4px; margin-bottom:18px; border-bottom:1px solid var(--line); }.tabs a { padding:10px 14px; color:var(--muted); text-decoration:none; border-bottom:2px solid transparent; }.tabs a.active { color:var(--signal); border-color:var(--signal); }.duplicate-list { display:grid; gap:16px; }.duplicate-card { border:1px solid var(--line); background:var(--panel); }.duplicate-card>header { display:flex; align-items:center; gap:12px; padding:10px 14px; border-bottom:1px solid var(--line); }.duplicate-card>header span { color:var(--muted); font:11px ui-monospace,monospace; }.duplicate-card>header .review { margin-left:auto; padding:3px 7px; border:1px solid var(--line); text-transform:uppercase; }.duplicate-card>header .confirmed { color:var(--signal); }.duplicate-card>header .rejected { color:var(--danger); }.comparison { display:grid; grid-template-columns:1fr 1fr; }.comparison section { min-width:0; padding:18px; }.comparison section+section { border-left:1px solid var(--line); }.comparison small { color:var(--muted); font:11px ui-monospace,monospace; }.comparison h2 { margin:7px 0; font-size:20px; }.comparison h2 a { text-decoration:none; }.comparison h2 a:hover,.comparison section>a { color:var(--signal); }.comparison p { color:var(--muted); }.duplicate-card>footer { display:flex; gap:9px; padding:12px 14px; border-top:1px solid var(--line); }.duplicate-card form { margin:0; }
.editorial-panel hr { margin:22px 0; border:0; border-top:1px solid var(--line); }.signal-link { color:var(--signal); }.assign-form { margin-top:14px; }.event-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(340px,1fr)); gap:14px; }.event-card { padding:20px; border:1px solid var(--line); background:var(--panel); }.event-card .detail-tags { margin-top:0; }.event-card h2 { margin:12px 0 8px; }.event-card h2 a { text-decoration:none; }.event-card h2 a:hover { color:var(--signal); }.event-card p { color:var(--muted); }.event-card footer { display:flex; flex-wrap:wrap; gap:8px 14px; margin-top:18px; color:var(--muted); font:11px ui-monospace,monospace; }.event-status { text-transform:uppercase; }.event-status.developing { color:var(--warning); }.event-status.stable { color:var(--signal); }.event-summary { max-width:900px; color:var(--muted); font-size:18px; white-space:pre-line; }.event-detail-layout { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:26px; align-items:start; }.timeline { position:relative; margin-top:20px; padding-left:28px; border-left:1px solid #38505b; }.timeline article { position:relative; padding:0 0 30px 18px; }.timeline-marker { position:absolute; left:-34px; top:4px; width:11px; height:11px; border:2px solid var(--signal); border-radius:50%; background:var(--bg); }.timeline time,.timeline small { color:var(--muted); font:11px ui-monospace,monospace; }.timeline small { margin-left:10px; }.timeline h3 { margin:7px 0; font-size:20px; }.timeline h3 a { text-decoration:none; }.timeline p { color:var(--muted); }.timeline-actions { display:flex; gap:14px; align-items:center; }.timeline-actions>a { color:var(--signal); }.timeline-actions form { margin:0; }.timeline-actions button { border:0; padding:0; background:transparent; color:var(--danger); cursor:pointer; text-decoration:underline; }
@media (max-width:900px) { .filters { grid-template-columns:1fr 1fr; }.search-field { grid-column:1/-1; }.item { grid-template-columns:100px 1fr; }.tags { grid-column:1; }.story { grid-column:2; grid-row:2/4; }.source-layout,.detail-layout,.event-detail-layout,.user-layout { grid-template-columns:1fr; }.source-bulk-form { grid-template-columns:1fr 1fr; }.user-list form { grid-template-columns:1fr 1fr; }.user-list form strong,.user-list form input,.user-list form button { grid-column:1/-1; }.catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.editorial-panel { position:static; }.comparison { grid-template-columns:1fr; }.comparison section+section { border-left:0; border-top:1px solid var(--line); } }
@media (max-width:560px) { main { padding:22px 14px 40px; }.topbar { padding:0 14px; }.topbar .brand { font-size:0; }.hero { align-items:start; flex-direction:column; }.topbar nav { gap:11px; font-size:13px; }.filters,.source-bulk-form { grid-template-columns:1fr; }.filters .search-field { grid-column:auto; }.item { grid-template-columns:1fr; gap:5px; padding:15px 2px 15px 26px; }.item-selector { left:2px; }.story,.tags { grid-column:auto; grid-row:auto; }.form-row,.catalog-grid { grid-template-columns:1fr; }.bulk-toolbar { align-items:stretch; }.bulk-toolbar label:not(.select-all),.bulk-toolbar select,.bulk-toolbar button { width:100%; }.source-list article { flex-direction:column; }.source-selector { align-self:flex-start; }.source-state { justify-content:space-between; }.tabs { overflow-x:auto; }.tabs a { white-space:nowrap; }.event-grid { grid-template-columns:1fr; }.timeline { padding-left:20px; }.timeline article { padding-left:10px; }.timeline-marker { left:-26px; } }
.anchor-list{display:flex;flex-wrap:wrap;gap:8px}.anchor{display:flex;flex-direction:column;gap:3px;padding:8px 10px;border:1px solid var(--line);background:var(--bg)}.anchor small{color:var(--muted);font:11px ui-monospace,monospace}
.anchor-quality{margin:18px 0}.anchor-quality .quality-count{color:var(--signal);font-size:28px}.anchor-quality .rule-list p a{color:var(--signal)}.anchor-bulk{margin-top:0}.anchor-bulk select{width:auto;min-width:140px}
.live-objects{margin:1.25rem 0}.live-result{overflow:hidden}.live-meta{color:var(--muted);font-size:.9rem}.result-bars{display:grid;gap:.55rem;margin:1rem 0}.result-row{display:grid;grid-template-columns:minmax(7rem,1fr) minmax(8rem,4fr) 4.5rem;gap:.7rem;align-items:center}.result-row>span{text-align:right;font-variant-numeric:tabular-nums}.result-bar{display:block;width:100%;height:.75rem;overflow:visible}.result-track{fill:rgba(255,255,255,.08)}.result-fill{fill:var(--accent)}.party-cdu{fill:#8c8c8c}.party-afd{fill:#009ee0}.party-linke{fill:#be3075}.party-spd{fill:#e3000f}.party-fdp{fill:#ffed00}.party-gruene{fill:#64a12d}.party-bsw{fill:#7b1e4b}.party-freie-waehler{fill:#f59c00}.party-other{fill:#78909c}.live-source{display:inline-block;margin-top:.5rem}@media(max-width:600px){.result-row{grid-template-columns:6.5rem 1fr 4rem;font-size:.85rem}}
.map-filters{margin-bottom:18px}.map-metrics{grid-template-columns:repeat(4,1fr)}.map-heading{display:flex;align-items:start;justify-content:space-between;gap:20px}.map-heading h2,.map-heading p{margin:0 0 4px}.map-legend{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;white-space:nowrap}.heat-dot{width:11px;height:11px;border-radius:50%;background:#61c7aa}.heat-dot.high{background:#ff7474}.world-map{position:relative;aspect-ratio:2/1;max-height:650px;margin-top:18px;overflow:hidden;border:1px solid #31414a;background:radial-gradient(circle at 50% 45%,#18303a,#091116 72%)}.world-map>svg{display:block;width:100%;height:100%}.world-map>svg path{fill:#1d3037;stroke:#3a515b;stroke-width:2;vector-effect:non-scaling-stroke}.heat-marker{position:absolute;display:grid;place-items:center;width:var(--heat-size);height:var(--heat-size);transform:translate(-50%,-50%);border:2px solid rgba(255,255,255,.8);border-radius:50%;background:rgba(97,199,170,.72);box-shadow:0 0 0 6px rgba(97,199,170,.1);color:#07110e;text-decoration:none;font:700 11px ui-monospace,monospace}.heat-marker:hover{z-index:2;filter:brightness(1.25)}.heat-marker.priority-3{background:rgba(255,191,105,.82);box-shadow:0 0 0 6px rgba(255,191,105,.12)}.heat-marker.priority-4,.heat-marker.priority-5{background:rgba(255,116,116,.82);box-shadow:0 0 0 6px rgba(255,116,116,.12)}.map-empty{position:absolute;inset:0;display:grid;place-items:center;margin:0;color:var(--muted)}.map-details{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.map-details .rule-list{max-height:420px;overflow:auto}@media(max-width:900px){.map-metrics{grid-template-columns:1fr 1fr}.map-details{grid-template-columns:1fr}}@media(max-width:560px){.map-heading{display:block}.map-legend{margin-top:10px}.world-map{min-height:260px;aspect-ratio:auto}.heat-marker{max-width:42px;max-height:42px}.map-metrics{grid-template-columns:1fr 1fr}.map-metrics article{padding:13px}.map-metrics strong{font-size:21px}}

/* SCPGX-inspired global design system. Fachansichten bauen in den nächsten Stufen darauf auf. */
:root{--bg:#050706;--panel:#101412;--panel-raised:#161b18;--surface-light:#c9ccc4;--line:#4b5b52;--line-bright:#839187;--text:#edf2ed;--muted:#9ca79f;--signal:#62d47c;--orange:#ef9138;--warning:#e4d35b;--violet:#b485d7;--blue:#173f67;--cyan:#6bbddd;--danger:#ef6b5f;--accent:var(--cyan)}
html{background:var(--bg)}
body{font-family:"Lucida Console","DejaVu Sans Mono","Courier New",monospace;letter-spacing:.005em;background-color:var(--bg);background-image:linear-gradient(rgba(107,189,221,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(107,189,221,.018) 1px,transparent 1px);background-size:24px 24px}
::selection{color:#050706;background:var(--warning)}
:focus-visible{outline:2px solid var(--warning);outline-offset:2px}
.topbar{position:relative;z-index:20;min-height:54px;padding:0 max(24px,calc((100vw - 1440px)/2));border-color:var(--cyan);background:#09131d;box-shadow:0 3px 0 #020303}
.brand{align-self:stretch;gap:9px;color:var(--text);font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.brand-mark{width:34px;height:28px;border:1px solid var(--orange);color:var(--orange);background:#050706;font-size:11px;box-shadow:3px 3px 0 #020303}
.primary-nav{align-self:stretch;display:flex;align-items:stretch;gap:0;border-left:1px solid #243846}
.primary-nav>a,.nav-more>summary{display:flex;align-items:center;min-height:53px;padding:0 13px;border-right:1px solid #243846;color:#b8c9cf;text-decoration:none;font-size:12px;letter-spacing:.045em;text-transform:uppercase;white-space:nowrap}
.primary-nav>a:hover,.nav-more>summary:hover{color:var(--text);background:#10283d}
.primary-nav>a.active{color:var(--warning);background:var(--blue);box-shadow:inset 0 -3px 0 var(--orange)}
.nav-more.current>summary{color:var(--violet);box-shadow:inset 0 -3px 0 var(--violet)}
.nav-more{position:relative}
.nav-more>summary{list-style:none;cursor:pointer;user-select:none}
.nav-more>summary::-webkit-details-marker{display:none}
.nav-more[open]>summary{color:#050706;background:var(--orange)}
.nav-menu{position:absolute;top:calc(100% + 1px);right:0;display:grid;grid-template-columns:1fr 1fr;width:min(460px,calc(100vw - 24px));padding:8px;border:1px solid var(--cyan);background:#09110e;box-shadow:6px 6px 0 #020303}
.nav-menu p{grid-column:1/-1;margin:8px 7px 3px;padding-bottom:4px;border-bottom:1px solid var(--line);color:var(--orange);font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.nav-menu a,.nav-menu .nav-button{display:block;width:100%;padding:8px;border:0;color:var(--text);background:transparent;text-align:left;text-decoration:none;font:12px/1.25 "Lucida Console","DejaVu Sans Mono","Courier New",monospace}
.nav-menu a::before,.nav-menu .nav-button::before{content:"> ";color:var(--cyan)}
.nav-menu a:hover,.nav-menu .nav-button:hover{color:#050706;background:var(--signal)}
.nav-menu form{margin:0}
main{padding-top:28px}
.site-footer{border-color:var(--line);font-size:11px;text-transform:uppercase}
.hero{padding-bottom:13px;border-bottom:1px solid var(--line)}
.hero h1,.detail-heading h1{letter-spacing:-.035em}
.eyebrow{color:var(--orange)!important}
.panel,.filters,.metric-grid article,.event-card,.duplicate-card,.saved-filters article{border-color:var(--line);border-radius:0;background:var(--panel);box-shadow:4px 4px 0 #020303}
.panel h2{padding-bottom:7px;border-bottom:1px solid var(--line);font-size:16px;letter-spacing:.035em}
.button{border-radius:0;border-color:var(--line-bright);background:var(--panel-raised);font-size:12px;letter-spacing:.03em;text-transform:uppercase;box-shadow:2px 2px 0 #020303}
.button:hover{border-color:var(--cyan);color:var(--cyan);background:#0a151a}
.button:active{transform:translate(2px,2px);box-shadow:none}
.button.primary{border-color:var(--orange);color:#080805;background:var(--orange)}
.button.primary:hover{border-color:var(--warning);color:#080805;background:var(--warning)}
.button.danger{border-color:var(--danger);color:var(--danger)}
input,select,textarea{border-radius:0;border-color:var(--line);background:#080d0a;font-family:inherit;box-shadow:inset 2px 2px 0 #020303}
input:hover,select:hover,textarea:hover{border-color:var(--line-bright)}
input:focus,select:focus,textarea:focus{border-color:var(--warning)}
label span,.status,.feed-error,.eyebrow{font-family:inherit}
.notice{border:1px solid #376b47;border-left:4px solid var(--signal);background:#0d2113;box-shadow:3px 3px 0 #020303}
.notice.error{border-color:#713b36;border-left-color:var(--danger);background:#24100e}
.tabs a.active{color:var(--warning);border-color:var(--orange)}
.signal-link,.public-feed-links a,.back-link,.editorial-meta a,.comparison h2 a:hover,.comparison section>a,.timeline-actions>a{color:var(--cyan)}
.review.approved,.status.on,.metric-grid strong{color:var(--signal)}
@media(max-width:900px){.topbar{flex-wrap:wrap;padding:0 14px}.brand{min-height:48px}.primary-nav{order:2;width:100%;overflow-x:auto;border-top:1px solid #243846;border-left:0}.primary-nav>a,.nav-more>summary{min-height:42px}.nav-menu{position:fixed;top:91px;right:12px}}
@media(max-width:560px){.topbar{padding:0 8px}.topbar .brand{font-size:12px}.primary-nav{margin:0 -8px;width:calc(100% + 16px);padding-left:8px}.primary-nav>a,.nav-more>summary{padding:0 10px;font-size:11px}.nav-menu{top:91px;right:8px;left:8px;width:auto;max-height:calc(100vh - 105px);overflow:auto}.panel,.filters,.metric-grid article,.event-card,.duplicate-card,.saved-filters article{box-shadow:3px 3px 0 #020303}}

/* GX-Arbeitsfenster, Formulare und Meldungsstrom */
.panel>h2:first-child{margin:-20px -20px 16px;padding:8px 11px;border-bottom:1px solid var(--cyan);color:var(--text);background:var(--blue);font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.panel>h2:first-child::before{content:"□ ";color:var(--orange)}
.window-title{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;min-height:30px;margin:-15px -15px 4px;padding:6px 10px;border-bottom:1px solid var(--cyan);color:var(--text);background:var(--blue);font-size:11px;font-weight:700;letter-spacing:.1em}
.window-title::before{content:"□";margin-right:7px;color:var(--orange)}
.window-title span{margin-right:auto}.window-title small{color:var(--cyan);font-size:10px}
.filters{gap:12px;padding-top:15px}.filters label{position:relative}.filters label span{color:#bdc8c0}.filters .button{align-self:end}
.source-form{gap:15px}.source-form label,.form-row label{min-width:0}
label span{color:#b7c2ba;letter-spacing:.12em}
input[type="checkbox"],input[type="radio"]{width:15px;height:15px;min-height:0;padding:0;accent-color:var(--orange);box-shadow:none}
select{background-image:linear-gradient(45deg,transparent 50%,var(--cyan) 50%),linear-gradient(135deg,var(--cyan) 50%,transparent 50%);background-position:calc(100% - 13px) 17px,calc(100% - 8px) 17px;background-size:5px 5px;background-repeat:no-repeat;appearance:none;padding-right:27px}
fieldset{border:1px solid var(--line);border-radius:0;background:#0b100d}legend{color:var(--orange);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.bulk-toolbar{position:relative;padding-top:36px;border-color:var(--line);box-shadow:3px 3px 0 #020303}.toolbar-title{position:absolute;inset:0 0 auto 0;padding:6px 10px;border-bottom:1px solid var(--line);color:var(--orange);background:#101b20;font-size:10px;letter-spacing:.1em}
.gx-stream{border:1px solid var(--line);box-shadow:4px 4px 0 #020303;background:#090d0b}
.stream-heading{display:grid;grid-template-columns:115px 150px 180px minmax(0,1fr);gap:16px;padding:7px 8px;border-bottom:1px solid var(--cyan);color:var(--cyan);background:var(--blue);font-size:10px;letter-spacing:.11em}
.gx-stream .item{padding:13px 10px;border-bottom-color:#29352f;background:#0c110e}
.gx-stream .item:nth-of-type(even){background:#0f1511}
.gx-stream .item:hover{background:#111e19;box-shadow:inset 3px 0 0 var(--cyan)}
.gx-stream .item.unread{border-left:3px solid var(--signal);padding-left:7px}
.gx-stream .item.priority-3{box-shadow:inset 3px 0 0 var(--violet)}
.gx-stream .item.priority-4{box-shadow:inset 3px 0 0 var(--warning)}
.gx-stream .item.priority-5{box-shadow:inset 4px 0 0 var(--orange)}
.gx-stream .item.review-rejected{opacity:.66}.gx-stream .item.is-hidden{background-image:repeating-linear-gradient(135deg,transparent,transparent 8px,rgba(239,145,56,.045) 8px,rgba(239,145,56,.045) 9px)}
.gx-stream .source{color:var(--cyan)}.gx-stream .story>a{color:var(--text);line-height:1.35}.gx-stream .story>a:hover{color:var(--warning)}
.tags span{border-color:#604b71;color:#d2b7e5;background:#18121d}.editorial-meta span,.editorial-meta a{border-radius:0}.editorial-meta .approved{border-color:#326943;background:#0c2012}.editorial-meta .rejected{border-color:#783d37;background:#25110f}
.quick-actions button{border-color:var(--line);color:#b4beb7;font-family:inherit}.quick-actions button:hover{border-color:var(--orange);color:#050706;background:var(--orange)}
.source-list article{padding:12px 8px}.source-list article:hover{background:#121a16}.source-list strong{color:var(--text)}.source-list .status{min-width:64px;text-align:center}
@media(max-width:900px){.stream-heading{grid-template-columns:100px 1fr}.stream-heading span:nth-child(3),.stream-heading span:nth-child(4){display:none}}
@media(max-width:560px){.panel>h2:first-child{margin:-20px -20px 15px}.window-title{margin:-15px -15px 3px}.stream-heading{display:none}.gx-stream{border-left:1px solid var(--line);border-right:1px solid var(--line)}.gx-stream .item{padding-left:27px}.bulk-toolbar{padding-top:39px}}

/* Ereignis-, Themen- und Verwaltungsarbeitsräume */
.tabs{gap:0;border:1px solid var(--line);background:#09110e;box-shadow:3px 3px 0 #020303}.tabs a{position:relative;padding:9px 14px;border-right:1px solid var(--line);border-bottom:0;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.tabs a.active{color:#080805;background:var(--warning);box-shadow:inset 0 -3px 0 var(--orange)}
.event-grid{gap:18px}.event-card{position:relative;overflow:hidden;padding:20px;border-top-color:var(--cyan)}
.card-statusbar{display:flex;align-items:center;justify-content:space-between;margin:-20px -20px 16px;padding:6px 9px;border-bottom:1px solid var(--line);color:var(--cyan);background:#0b1c29;font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.card-statusbar .developing{color:var(--warning)}.card-statusbar .stable,.card-statusbar .state-on{color:var(--signal)}.card-statusbar .closed,.card-statusbar .state-off{color:var(--muted)}.card-statusbar .new{color:var(--cyan)}
.event-card h2{font-size:19px;line-height:1.3}.event-card h2 a:hover{color:var(--warning)}.event-card footer{padding-top:9px;border-top:1px solid #29352f}.event-card .detail-tags span{border-color:#604b71;color:#d2b7e5;background:#18121d}
.detail-heading{position:relative;padding:14px 16px 17px;border-left:3px solid var(--cyan);background:#0d1211}
.detail-heading::after{content:"";position:absolute;right:0;bottom:0;width:38%;border-bottom:1px solid var(--line)}
.detail-heading .eyebrow{margin-top:12px}.detail-heading h1{font-size:clamp(25px,4.2vw,46px)}
.workspace-view{min-width:0;padding:18px;border:1px solid var(--line);background:#090d0b;box-shadow:4px 4px 0 #020303}.workspace-view>h2:first-child{margin:-18px -18px 17px;padding:7px 10px;border-bottom:1px solid var(--cyan);color:var(--text);background:var(--blue);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.workspace-view>h2:first-child::before{content:"◇ ";color:var(--orange)}
.timeline{border-left-color:var(--cyan)}.timeline article{padding-bottom:25px;border-bottom:1px solid #25312b;margin-bottom:18px}.timeline-marker{width:9px;height:9px;left:-33px;border:1px solid var(--orange);border-radius:0;background:var(--warning);box-shadow:0 0 0 3px #15201a}.timeline time{color:var(--cyan)}.timeline h3 a:hover{color:var(--warning)}
.editorial-panel{border-top:1px solid var(--orange)}.editorial-panel>h2:first-child{border-bottom-color:var(--orange);background:#34230f}.editorial-panel hr+h2{margin:0 0 12px;padding:6px 8px;border-left:3px solid var(--violet);background:#17131b;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.rule-layout,.source-layout,.user-layout{gap:22px}.rule-list article{padding:11px 8px}.rule-list article:hover{background:#121a16}.rule-list article>div>strong{color:var(--text)}.rule-list article>div>small{margin-top:3px}.rule-list .status{letter-spacing:.08em}
.metric-grid article{position:relative;min-height:92px;border-top-color:var(--cyan)}.metric-grid article::before{content:"SYS";position:absolute;top:5px;right:7px;color:#46616f;font-size:9px;letter-spacing:.12em}.metric-grid strong{font-family:inherit;font-variant-numeric:tabular-nums}.metric-grid span{font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.catalog-grid fieldset{box-shadow:2px 2px 0 #020303}.catalog-source:hover{background:#142019}.catalog-source input:checked+span strong{color:var(--warning)}
.anchor{border-radius:0;border-color:var(--line);background:#090e0b;text-decoration:none}.anchor:hover{border-color:var(--violet);background:#17131b}.anchor strong{color:var(--violet)}
.source-state{padding-left:12px;border-left:1px solid var(--line)}.status.on{background:#0c2012}.status.off{color:var(--warning);border-color:#6a6031;background:#201d0d}
@media(max-width:900px){.event-detail-layout{gap:18px}.workspace-view{padding:15px}.workspace-view>h2:first-child{margin:-15px -15px 15px}.source-state{padding-left:0;border-left:0}}
@media(max-width:560px){.tabs{box-shadow:none}.tabs a{padding:8px 11px}.event-card{padding:16px}.card-statusbar{margin:-16px -16px 14px}.detail-heading{padding:12px}.workspace-view{border-left:1px solid var(--line);border-right:1px solid var(--line);box-shadow:3px 3px 0 #020303}.timeline-marker{left:-26px}}

/* Lokale geografische Vektorkarte */
.map-controls{display:flex;align-items:center;gap:7px;margin-top:14px}.map-controls output{margin-left:auto;color:var(--cyan);font-size:11px;font-variant-numeric:tabular-nums}
.world-map{isolation:isolate;aspect-ratio:2/1;max-height:none;background:#071015;box-shadow:inset 0 0 0 1px #162b37,4px 4px 0 #020303}
.world-map::after{content:"GEO / 110M";position:absolute;right:7px;bottom:5px;color:#365363;font-size:9px;letter-spacing:.12em;pointer-events:none}
.world-map>svg{position:relative;z-index:1;display:block;width:100%;height:100%;cursor:grab;touch-action:none}.world-map>svg:active{cursor:grabbing}
.world-map>svg .map-graticule line{stroke:#173345;stroke-width:.65;stroke-dasharray:2 4;vector-effect:non-scaling-stroke}
.world-map>svg .map-countries path{fill:#152a30;stroke:#63808a;stroke-width:.65;vector-effect:non-scaling-stroke;transition:fill .12s}.world-map>svg .map-countries path:hover{fill:#203e43;stroke:var(--cyan)}
.world-map>svg .heat-marker{position:static;display:block;width:auto;height:auto;transform-box:view-box;border:0;border-radius:0;background:none;box-shadow:none;color:inherit;text-decoration:none}
.world-map>svg .heat-marker .target-ring{fill:rgba(98,212,124,.18);stroke:var(--signal);stroke-width:1.5;vector-effect:non-scaling-stroke}.world-map>svg .heat-marker .target-cross{fill:none;stroke:var(--signal);stroke-width:1;vector-effect:non-scaling-stroke}.world-map>svg .heat-marker .target-core{fill:var(--signal);stroke:#edf2ed;stroke-width:1;vector-effect:non-scaling-stroke}.world-map>svg .heat-marker text{fill:#050706;font-size:10px;font-weight:700;text-anchor:middle;pointer-events:none}
.world-map>svg .heat-marker.priority-3 .target-ring,.world-map>svg .heat-marker.priority-3 .target-cross{stroke:var(--violet)}.world-map>svg .heat-marker.priority-3 .target-core{fill:var(--violet)}
.world-map>svg .heat-marker.priority-4 .target-ring,.world-map>svg .heat-marker.priority-4 .target-cross{stroke:var(--warning)}.world-map>svg .heat-marker.priority-4 .target-core{fill:var(--warning)}
.world-map>svg .heat-marker.priority-5 .target-ring,.world-map>svg .heat-marker.priority-5 .target-cross{stroke:var(--orange)}.world-map>svg .heat-marker.priority-5 .target-core{fill:var(--orange)}
.world-map>svg a:hover .target-ring{fill:rgba(228,211,91,.28);stroke:var(--warning);stroke-width:2.5}.world-map>svg a:focus-visible .target-ring{stroke:var(--warning);stroke-width:3}
.map-loading{position:absolute;z-index:2;top:8px;left:10px;margin:0;color:var(--cyan);font-size:10px;letter-spacing:.08em}.map-empty{z-index:3;pointer-events:none}.map-credit{display:block;margin-top:9px;color:var(--muted);font-size:10px}
@media(max-width:560px){.map-controls{flex-wrap:wrap}.map-controls .button{padding:6px 8px}.world-map{min-height:280px}.world-map>svg .map-countries path{stroke-width:.8}}

/* Geografische Arbeitslast und Gebietsauswahl */
.heat-swatch{display:inline-block;width:18px;height:11px;border:1px solid var(--line-bright)}.heat-swatch.heat-1{background:#15362e}.heat-swatch.heat-5{background:var(--orange)}.target-symbol{display:inline-grid;place-items:center;width:18px;height:18px;color:var(--warning);font-size:17px}
.world-map>svg .map-countries a{outline:none}.world-map>svg .map-countries a path{cursor:pointer}.world-map>svg .map-countries a:focus-visible path{stroke:var(--warning);stroke-width:2.5}
.world-map>svg .map-countries path.heat-1{fill:#15362e}.world-map>svg .map-countries path.heat-2{fill:#1e5544}.world-map>svg .map-countries path.heat-3{fill:#53642e}.world-map>svg .map-countries path.heat-4{fill:#9b6630}.world-map>svg .map-countries path.heat-5{fill:#c65b2d}
.world-map>svg .map-countries path[class^="heat-"]{stroke:#d9dfd9;stroke-width:1}.world-map>svg .map-countries a:hover path{fill:var(--warning);stroke:#fff;color:#050706}
.map-region-entry{border-left:3px solid var(--line)}.map-region-entry.heat-border-1{border-left-color:#27634f}.map-region-entry.heat-border-2{border-left-color:#3b8068}.map-region-entry.heat-border-3{border-left-color:#7d8d3e}.map-region-entry.heat-border-4{border-left-color:#c57d36}.map-region-entry.heat-border-5{border-left-color:var(--orange)}
@media(max-width:700px){.map-legend{flex-wrap:wrap;white-space:normal}}

/* Abschließende Bedienbarkeit, Kontrast und kleine Bildschirme */
.skip-link{position:fixed;z-index:1000;top:6px;left:6px;padding:9px 12px;border:2px solid var(--warning);color:#050706;background:var(--warning);transform:translateY(-150%);text-decoration:none}.skip-link:focus{transform:none}
main:focus{outline:none}
.panel,.event-card,.duplicate-card,.workspace-view,.story,.source-info,.rule-list article>div{min-width:0}
h1,h2,h3,p,a,small,strong{overflow-wrap:anywhere}
.button,.quick-actions button,.nav-button{min-height:40px}
.nav-menu .nav-button{min-height:34px}
button:disabled,.button:disabled{cursor:not-allowed;opacity:.48}
.detail-tags,.editorial-meta,.card-statusbar,.event-card footer,.duplicate-card>header,.duplicate-card>footer{flex-wrap:wrap}
.duplicate-card>header .review{white-space:nowrap}
.public-feed-links a,.token-reveal code,.token-help code,.source-list article>div>a{overflow-wrap:anywhere;word-break:break-word}
@media(max-width:1100px){.duplicate-settings-form{grid-template-columns:repeat(3,minmax(140px,1fr))}.duplicate-settings-form button{align-self:end}.retention-form{grid-template-columns:repeat(3,minmax(120px,1fr))}.retention-form .switch-row{grid-column:1/-1}.source-bulk-form{grid-template-columns:repeat(3,minmax(150px,1fr))}.audit-list article{grid-template-columns:130px 120px minmax(130px,170px) minmax(220px,1fr);overflow-x:auto}}
@media(max-width:760px){main{padding-left:14px;padding-right:14px}.hero{gap:13px}.hero h1{font-size:clamp(25px,8vw,38px)}.hero form,.hero .button{max-width:100%}.duplicate-settings-form,.retention-form,.source-bulk-form{grid-template-columns:1fr 1fr}.opml-panel{align-items:stretch;flex-direction:column}.opml-panel>div{margin-right:0}.opml-panel form{align-items:stretch;flex-direction:column}.opml-panel input{max-width:none}.access-mode-form{align-items:flex-start;flex-direction:column}.comparison h2{font-size:17px}.duplicate-card>footer{align-items:stretch}.duplicate-card>footer form,.duplicate-card>footer .button{flex:1 1 145px}.map-details{grid-template-columns:1fr}.user-list form{display:flex;align-items:stretch;flex-direction:column}.audit-list article{display:grid;grid-template-columns:1fr;gap:4px}.metric-grid{grid-template-columns:1fr 1fr}.form-actions{flex-wrap:wrap}}
@media(max-width:480px){main{padding:18px 10px 36px}.topbar{padding:0 6px}.primary-nav{margin:0 -6px;width:calc(100% + 12px);padding-left:6px}.primary-nav>a,.nav-more>summary{padding:0 9px}.nav-menu{right:6px;left:6px;grid-template-columns:1fr}.duplicate-settings-form,.retention-form,.source-bulk-form,.metric-grid,.map-metrics{grid-template-columns:1fr}.button{width:100%}.primary-nav a,.nav-more>summary,.nav-menu a,.nav-menu .nav-button{width:auto}.quick-actions .button,.quick-actions button,.tabs .button,.tabs a,.map-controls .button,.source-state .button,.form-actions .button{width:auto}.save-filter{align-items:stretch;flex-direction:column;width:100%}.saved-filter-panel{display:block}.saved-filters{margin-top:9px}.source-state{align-items:stretch;flex-direction:column}.source-state form,.source-state .button{width:100%}.duplicate-card>footer{flex-direction:column}.duplicate-card>footer form,.duplicate-card>footer .button{width:100%;flex-basis:auto}.result-row{grid-template-columns:minmax(5.5rem,.9fr) minmax(5rem,1.4fr) 3.5rem}.detail-tags{align-items:flex-start;flex-direction:column}.timeline{margin-left:4px}.map-controls output{width:100%;margin-left:0}.site-footer{text-align:left}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(forced-colors:active){.brand-mark,.panel,.filters,.event-card,.duplicate-card,.workspace-view,.tabs,.world-map{border:1px solid CanvasText;box-shadow:none}.primary-nav>a.active,.tabs a.active,.button.primary{color:HighlightText;background:Highlight}.world-map>svg .map-countries path{fill:Canvas;stroke:CanvasText}.world-map>svg .map-countries path[class^="heat-"]{fill:Highlight}.heat-marker .target-ring,.heat-marker .target-cross{stroke:Highlight!important}.heat-marker .target-core{fill:Highlight!important}}
