/* Netzwerk und Gegnerverzeichnis – dieselben Farb- und Abstands-Tokens wie SquadOS. */
.nx{max-width:1500px;margin:0 auto;padding:28px 32px 60px;color:var(--c-black)}
.nx *{box-sizing:border-box}
.nx__heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}
.nx__eyebrow{font-size:11px;font-weight:750;letter-spacing:.11em;color:var(--c-fill);margin-bottom:7px}
.nx h1{font-size:30px;line-height:1.15;letter-spacing:-.035em;margin:0 0 8px}
.nx h2{font-size:21px;line-height:1.25;letter-spacing:-.025em;margin:0 0 6px}
.nx h3{font-size:17px;line-height:1.3;letter-spacing:-.015em;margin:0 0 12px}
.nx p{line-height:1.5}.nx__heading p,.nx__toolbar p,.nx__intro p{color:var(--c-muted);margin:0;font-size:13px}
.nx__tabs{display:flex;gap:4px;border-bottom:1px solid var(--c-line);margin-bottom:26px;overflow-x:auto}
.nx__tab{appearance:none;border:0;border-bottom:2px solid transparent;background:none;color:var(--c-muted);padding:11px 17px;font:inherit;font-size:13px;font-weight:650;white-space:nowrap;cursor:pointer}
.nx__tab:hover{color:var(--c-black);background:var(--c-hover)}.nx__tab.is-active{color:var(--c-fill);border-color:var(--c-fill)}
.nx__message{background:var(--c-fill-soft);border:1px solid var(--c-fill);border-radius:var(--radius-md);padding:10px 14px;font-size:13px;margin:0 0 18px}
.nx__toolbar{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}
.nx__toolbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.nx__seg{display:flex;gap:0;padding:3px;border:1px solid var(--c-line);border-radius:var(--radius-md);background:var(--c-white)}
.nx__seg button{font:inherit;font-size:12px;font-weight:650;color:var(--c-muted);border:0;border-radius:6px;background:transparent;padding:7px 12px;cursor:pointer}.nx__seg button.is-active{background:var(--c-fill);color:var(--c-white)}
.nx__game-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,1fr);gap:18px;align-items:start}
.nx__game-main,.nx__editor,.nx__directory-list,.nx__directory-detail,.nx__concept{border:1px solid var(--c-line);border-radius:var(--radius-lg);background:var(--c-white);box-shadow:var(--shadow-sm)}
.nx__game-main{min-height:440px;overflow:hidden}.nx__list-head{display:grid;grid-template-columns:150px minmax(100px,1fr) 90px;gap:12px;padding:13px 16px;background:var(--c-surface-2);color:var(--c-muted);font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:750}
.nx__game-row{display:grid;grid-template-columns:150px minmax(100px,1fr) 90px;gap:12px;align-items:center;width:100%;text-align:left;padding:15px 16px;border:0;border-top:1px solid var(--c-line);background:transparent;color:var(--c-black);font:inherit;font-size:13px;cursor:pointer}.nx__game-row:hover,.nx__game-row.is-selected{background:var(--c-fill-soft)}
.nx__game-row strong,.nx__game-row small{display:block}.nx__game-row small{color:var(--c-muted);margin-top:3px}.nx__game-row>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nx__status{justify-self:start;border:1px solid var(--c-line-strong);border-radius:99px;padding:4px 8px;color:var(--c-muted);font-size:11px;font-weight:650;white-space:nowrap}.nx__status--done{border-color:var(--c-fill);color:var(--c-fill);background:var(--c-fill-soft)}
.nx__editor{padding:22px;min-height:440px}.nx__editor h3{margin-bottom:18px}.nx__form{display:block}.nx__form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.nx__form label,.nx__fact-add{font-size:12px;font-weight:650;color:var(--c-muted)}.nx__form-grid label{display:flex;flex-direction:column;gap:6px}.nx__full{grid-column:1/-1}
.nx__form input:not([type=checkbox]),.nx__form select,.nx__form textarea,.nx__fact-add input,.nx__fact-add select,.nx__inline select{width:100%;min-width:0;border:1px solid var(--c-line-strong);border-radius:var(--radius-md);background:var(--c-white);color:var(--c-black);padding:9px 10px;font:inherit;font-size:13px}
.nx__form textarea{resize:vertical}.nx__candidates{border-top:1px solid var(--c-line);margin-top:20px;padding-top:16px}.nx__candidates>strong,.nx__candidates>small{display:block}.nx__candidates>strong{font-size:13px}.nx__candidates>small,.nx__hint{color:var(--c-muted);font-size:12px;line-height:1.5}.nx__candidates>small{margin:4px 0 12px}
.nx__checks{display:flex;flex-direction:column;gap:8px;max-height:155px;overflow:auto;margin:12px 0}.nx__checks label{display:flex;align-items:center;gap:7px;color:var(--c-black);font-size:12px;font-weight:500}.nx__checks input{accent-color:var(--c-fill)}.nx__checks--teams{flex-flow:row wrap;max-height:none;gap:10px 20px}
.nx__actions{margin-top:18px}.nx__confirm{border-top:1px solid var(--c-line);margin-top:20px;padding-top:18px}.nx__confirm>strong{font-size:13px}.nx__confirm p{font-size:12px;color:var(--c-muted);margin:5px 0 11px}.nx__inline{display:flex;gap:8px}.nx__inline select{flex:1}.nx__delete{margin-top:14px}.nx__delete button{color:var(--c-black)}
.nx__summary{display:grid;grid-template-columns:80px 1fr;gap:12px 8px;font-size:13px;margin:20px 0}.nx__summary dt{color:var(--c-muted)}.nx__summary dd{margin:0;font-weight:600}
.nx__empty{padding:55px 24px;text-align:center;color:var(--c-muted)}.nx__empty strong{color:var(--c-black)}.nx__empty p{font-size:12px;margin:8px auto;max-width:300px}
.nx__month{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;text-transform:capitalize}.nx__calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--c-line)}.nx__weekday{text-align:center;color:var(--c-muted);font-size:11px;font-weight:700;padding:10px 3px;background:var(--c-surface-2)}
.nx__day{display:flex;flex-direction:column;gap:4px;align-items:start;text-align:left;min-height:86px;min-width:0;padding:8px;border:0;border-right:1px solid var(--c-line);border-top:1px solid var(--c-line);background:transparent;color:var(--c-black);cursor:pointer;font:inherit;font-size:12px}.nx__day:nth-child(7n){border-right:0}.nx__day:hover,.nx__day.is-selected{background:var(--c-fill-soft)}.nx__day.is-outside{color:var(--c-faint);opacity:.55}.nx__day small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:var(--c-surface-2);border-radius:4px;padding:3px 4px;color:var(--c-muted);font-size:10px}.nx__day small.is-done{color:var(--c-fill);background:var(--c-fill-soft)}
.nx__intro{max-width:690px;margin-bottom:24px}.nx__intro h2{font-size:25px}.nx__concept-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.nx__concept{padding:22px;min-height:185px}.nx__concept span{font-size:10px;font-weight:750;letter-spacing:.08em;color:var(--c-fill)}.nx__concept h3{margin:18px 0 8px}.nx__concept p{font-size:12px;color:var(--c-muted);margin:0}
.nx__directory{display:grid;grid-template-columns:minmax(185px,20%) minmax(0,1fr);gap:18px;align-items:start}.nx__directory-list{min-height:620px;overflow:hidden}.nx__directory-listhead{display:flex;justify-content:space-between;align-items:center;padding:17px 16px;border-bottom:1px solid var(--c-line);font-size:13px}.nx__directory-listhead span{font-size:11px;color:var(--c-muted)}
.nx__add-opponent{display:block;width:calc(100% - 20px);margin:10px;text-align:left;background:var(--c-fill-soft);border:1px solid var(--c-line);border-radius:var(--radius-md);padding:10px;color:var(--c-fill);font:inherit;font-size:12px;font-weight:700;cursor:pointer}.nx__add-opponent:hover{border-color:var(--c-fill)}
.nx__opponent-row{display:block;width:100%;text-align:left;padding:12px 16px;border:0;border-bottom:1px solid var(--c-line);background:transparent;color:var(--c-black);font:inherit;cursor:pointer}.nx__opponent-row:hover,.nx__opponent-row.is-selected{background:var(--c-fill-soft)}.nx__opponent-row strong,.nx__opponent-row small{display:block}.nx__opponent-row strong{font-size:12px}.nx__opponent-row small{font-size:10px;color:var(--c-muted);margin-top:3px}.nx__list-empty{padding:16px}
.nx__suggestions{border-top:1px solid var(--c-line);margin-top:10px;padding:14px 10px}.nx__suggestions>strong,.nx__suggestions>small{display:block;padding:0 6px}.nx__suggestions>strong{font-size:12px}.nx__suggestions>small{font-size:10px;color:var(--c-muted);margin:4px 0 8px}.nx__suggestions button,.nx__suggestions>div{display:flex;width:100%;justify-content:space-between;text-align:left;background:none;border:0;border-radius:var(--radius-sm);padding:8px 6px;color:var(--c-muted);font:inherit;font-size:11px;cursor:pointer}.nx__suggestions button:hover{background:var(--c-fill-soft);color:var(--c-fill)}
.nx__directory-detail{padding:26px;min-height:620px}.nx__detail-head{margin-bottom:22px}.nx__detail-head h2{font-size:24px}.nx__section-title{display:flex;align-items:center;gap:8px;border-top:1px solid var(--c-line);padding-top:20px;margin:25px 0 13px;font-size:14px;font-weight:750}.nx__section-title:first-child{border-top:0;padding-top:0;margin-top:0}.nx__section-title span{color:var(--c-muted);font-size:11px}
.nx__fact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.nx__fact-card{border:1px solid var(--c-line);border-radius:var(--radius-md);padding:15px;min-height:110px}.nx__fact-card h3{font-size:13px;margin-bottom:12px}.nx__fact{display:flex;justify-content:space-between;gap:8px;padding:8px 0;border-top:1px solid var(--c-line)}.nx__fact:first-of-type{border-top:0}.nx__fact strong,.nx__fact span{display:block;font-size:11px}.nx__fact span{color:var(--c-muted);margin-top:3px;overflow-wrap:anywhere}.nx__fact button{background:none;border:0;color:var(--c-muted);font-size:18px;cursor:pointer}
.nx__fact-add{display:grid;grid-template-columns:125px minmax(100px,1fr) minmax(100px,1.4fr) auto;gap:8px;margin-top:12px}.nx__matches{border-top:1px solid var(--c-line)}.nx__matches>div{display:grid;grid-template-columns:135px 40px minmax(100px,1fr) minmax(100px,1fr);gap:8px;border-bottom:1px solid var(--c-line);padding:10px 0;font-size:12px}.nx__matches span{color:var(--c-muted)}.nx__read-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.nx__read-grid small,.nx__read-grid strong{display:block}.nx__read-grid small{color:var(--c-muted)}.nx__read-grid strong{font-size:13px;margin-top:4px;overflow-wrap:anywhere}
@media(max-width:1100px){.nx__game-layout{grid-template-columns:1fr}.nx__directory{grid-template-columns:230px minmax(0,1fr)}.nx__concept-grid{grid-template-columns:1fr}}
@media(max-width:700px){.nx{padding:18px 14px 50px}.nx__heading,.nx__toolbar{align-items:start;flex-direction:column}.nx__game-layout,.nx__directory{display:block}.nx__directory-list{min-height:0;max-height:240px;overflow:auto;margin-bottom:14px}.nx__directory-detail{padding:18px;min-height:0}.nx__fact-grid{grid-template-columns:1fr}.nx__fact-add{grid-template-columns:1fr 1fr}.nx__fact-add button{grid-column:1/-1}.nx__day{min-height:62px;padding:5px}.nx__day small{font-size:9px}.nx__list-head,.nx__game-row{grid-template-columns:110px minmax(80px,1fr) 75px;gap:6px;padding-left:9px;padding-right:9px;font-size:11px}.nx__status{font-size:10px;padding:3px 5px}.nx__form-grid{grid-template-columns:1fr}.nx__matches>div{grid-template-columns:90px 30px 1fr}.nx__matches>div span:last-child{display:none}}

/* --- Netzwerk v2: Suche, Spielgesuche, Platzbelegung, Börse, Team-/Konto-Einstellungen (funktionale Erstfassung) --- */
.nx__badge{display:inline-block;min-width:18px;padding:1px 6px;border-radius:99px;background:var(--c-fill);color:var(--c-white);font-size:10px;font-weight:750;text-align:center;margin-left:4px}
.nx__pill{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--c-line-strong);border-radius:99px;padding:6px 12px;font-size:12px;font-weight:650;color:var(--c-muted);background:var(--c-white);text-decoration:none}.nx__pill--warn{border-color:var(--c-muted);color:var(--c-muted);background:var(--c-surface-2)}
.nx__muted{color:var(--c-muted);font-size:12px}.nx__box{border:1px solid var(--c-line);border-radius:var(--radius-lg);background:var(--c-white);box-shadow:var(--shadow-sm);padding:16px 18px;margin-bottom:16px}.nx__box h3{display:flex;align-items:baseline;gap:8px}
.nx__row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--c-line);font-size:13px}.nx__row:first-of-type{border-top:0}.nx__row>div>strong,.nx__row>div>small{display:block}.nx__row>div>small{color:var(--c-muted);margin-top:3px;font-size:12px;line-height:1.4}.nx__row.is-unread>div>strong{color:var(--c-fill)}
.nx__toolbar--sub{margin-top:-6px;align-items:center}.nx__select{border:1px solid var(--c-line-strong);border-radius:var(--radius-md);background:var(--c-white);color:var(--c-black);padding:7px 10px;font:inherit;font-size:12px}
.nx__ck{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--c-black)}.nx__ck input{accent-color:var(--c-fill)}
.nx__levels{width:100%;border:1px solid var(--c-line-strong);border-radius:var(--radius-md);background:var(--c-white);color:var(--c-black);font:inherit;font-size:12px;padding:4px}
.nx__act{border-top:1px solid var(--c-line);margin-top:12px;padding-top:10px}.nx__act>summary{cursor:pointer;font-size:12px;font-weight:700;color:var(--c-fill)}.nx__act .nx__form{margin-top:10px}
.nx__link{background:none;border:0;padding:0;color:var(--c-fill);font:inherit;font-size:12px;cursor:pointer;text-decoration:underline}
/* Suche */
.nx__search-layout{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:18px;align-items:start}.nx__filter{border:1px solid var(--c-line);border-radius:var(--radius-lg);background:var(--c-white);box-shadow:var(--shadow-sm);padding:18px}
.nx__kinds{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.nx__kind{border:1px solid var(--c-line-strong);border-radius:99px;padding:6px 11px;font-size:12px;font-weight:650;color:var(--c-muted);cursor:pointer}.nx__kind input{display:none}.nx__kind.is-active{background:var(--c-fill);border-color:var(--c-fill);color:var(--c-white)}
.nx__map{height:260px;border:1px solid var(--c-line);border-radius:var(--radius-md);margin:12px 0;background:var(--c-surface-2)}.nx__map-tools{grid-column:1/-1;display:flex;gap:6px;flex-wrap:wrap}
.nx__results-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-size:13px}.nx__saved{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.nx__chip{border:1px solid var(--c-line-strong);border-radius:99px;background:var(--c-white);padding:5px 10px;font:inherit;font-size:11px;font-weight:650;color:var(--c-black);cursor:pointer}.nx__chip-x{border:0;background:none;color:var(--c-muted);font-size:14px;cursor:pointer;padding:0 6px}
.nx__card{border:1px solid var(--c-line);border-radius:var(--radius-lg);background:var(--c-white);box-shadow:var(--shadow-sm);padding:14px 16px;margin-bottom:10px;font-size:13px}.nx__card-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.nx__card-head strong,.nx__card-head small{display:block}.nx__card-head small{color:var(--c-muted);margin-top:2px}.nx__card-meta{display:flex;gap:10px;flex-wrap:wrap;justify-content:end;font-size:12px;font-weight:650;color:var(--c-black)}
.nx__tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.nx__tag{border-radius:99px;background:var(--c-surface-2);color:var(--c-muted);padding:3px 8px;font-size:11px;font-weight:650}.nx__tag--blue{background:var(--c-fill-soft);color:var(--c-fill)}
.nx__cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin-bottom:18px}.nx__cards--list{grid-template-columns:1fr}.nx__card--btn{text-align:left;cursor:pointer;font:inherit;color:var(--c-black)}.nx__card--btn strong,.nx__card--btn small{display:block}.nx__card--btn small{color:var(--c-muted);margin-top:4px;font-size:12px}.nx__card--btn:hover,.nx__card--btn.is-selected{border-color:var(--c-fill);background:var(--c-fill-soft)}
/* Platzbelegung */
.nx__legend{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;color:var(--c-muted);margin:0 0 10px}.nx__legend-item::before{content:"";display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px;background:var(--c-surface-2);border:1px solid var(--c-line-strong)}
.nx__legend-item.is-own::before,.nx__seg-item.is-own{background:var(--c-fill-soft);border-color:var(--c-fill)}.nx__legend-item.is-foreign::before,.nx__seg-item.is-foreign{background:var(--c-surface-2);border-color:var(--c-line-strong);border-style:dashed}
.nx__legend-item.is-free::before,.nx__seg-item.is-free{background:var(--c-fill-soft);border-color:var(--c-fill)}.nx__legend-item.is-published::before,.nx__seg-item.is-published{background:var(--c-fill);border-color:var(--c-fill);color:var(--c-white)}
.nx__legend-item.is-closure::before,.nx__seg-item.is-closure{background:var(--c-surface-2);border-color:var(--c-black)}.nx__legend-item.is-away::before,.nx__seg-item.is-away{background:transparent;border-color:var(--c-line-strong);border-style:dotted}.nx__seg-item.is-unassigned{background:var(--c-surface-2);border-color:var(--c-muted)}.nx__seg-item.is-room{background:var(--c-white)}
.nx__week-wrap{overflow:auto;border:1px solid var(--c-line);border-radius:var(--radius-lg);background:var(--c-white)}.nx__week{border-collapse:collapse;width:100%;min-width:980px;font-size:11px}.nx__week th,.nx__week td{border-bottom:1px solid var(--c-line);border-right:1px solid var(--c-line);vertical-align:top;padding:6px;text-align:left}.nx__week thead th{background:var(--c-surface-2);color:var(--c-muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.nx__week thead th small{display:block;text-transform:none;letter-spacing:0;font-weight:500}.nx__week thead th.is-today{color:var(--c-fill)}.nx__week tbody th{width:150px;background:var(--c-white)}.nx__week tbody th strong,.nx__week tbody th small{display:block}.nx__week tbody th small{color:var(--c-muted);font-weight:500}.nx__week td.is-closed{background:var(--c-surface-2)}.nx__week td.is-over{background:var(--c-surface-2)}
.nx__seg-item{border:1px solid var(--c-line);border-radius:4px;padding:3px 5px;margin-bottom:3px;line-height:1.3}.nx__seg-item b{font-weight:750;margin-right:3px}.nx__seg-item em{font-style:normal;color:var(--c-muted)}.nx__seg-item form{display:inline}.nx__seg-item button{border:0;background:none;color:inherit;font:inherit;font-size:10px;font-weight:750;text-decoration:underline;cursor:pointer;padding:0;margin-left:4px}
.nx__calendar--fac .nx__day{min-height:96px}.nx__day.is-today>span{color:var(--c-fill);font-weight:800}.nx__day small.is-others{color:var(--c-fill);background:var(--c-fill-soft)}
.nx__year{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.nx__table{width:100%;border-collapse:collapse;font-size:12px}.nx__table th,.nx__table td{border-bottom:1px solid var(--c-line);padding:6px 4px;text-align:left}.nx__table .is-done{color:var(--c-fill);font-weight:650}
.nx__setup{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:16px;align-items:start}.nx__setup .nx__box{margin-bottom:0}.nx__windows{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:var(--c-muted)}.nx__windows input{width:auto!important;display:inline-block;padding:4px 6px!important}
@media(max-width:1100px){.nx__search-layout{grid-template-columns:1fr}.nx__setup{grid-template-columns:1fr}}

/* Meldungen je Kategorie (Platzbelegung | Gegner | Transfermarkt) */
.nx__inbox { margin: 0 0 14px; border: 1px solid var(--c-line); border-radius: 10px; background: var(--c-white); }
.nx__inbox > summary { cursor: pointer; padding: 8px 12px; font-weight: 600; list-style: none; display: flex; align-items: center; gap: 8px; }
.nx__inbox > summary::-webkit-details-marker { display: none; }
.nx__inbox > .nx__box { border-top: 1px solid var(--c-line); }

/* Category workspace: shared controls and search. Colour is entirely token driven. */
.nx { padding:30px clamp(18px,3vw,42px) 64px; --nx-reading:65ch; }
.nx [hidden] { display:none!important; }
.nx h1 { font-size:var(--fs-xl); letter-spacing:-.04em; }
.nx h2 { font-size:var(--fs-lg); }
.nx h3 { font-size:var(--fs-md); }
.nx__heading { align-items:center; margin-bottom:24px; }
.nx__heading p { max-width:var(--nx-reading); }
.nx__eyebrow { font-size:var(--fs-micro); letter-spacing:.09em; }
.nx__tabs { gap:16px; margin-bottom:24px; scrollbar-width:thin; }
.nx__tab { padding:13px 3px; border-radius:0; }
.nx__tab:hover { background:transparent; color:var(--c-fill); }
.nx__tab.is-active { font-weight:750; }
.nx__box,.nx__card,.nx__filter,.nx__editor,.nx__directory-list,.nx__directory-detail { box-shadow:none; }
.nx__box { padding:22px; }
.nx__section-title { padding-top:22px; margin-top:22px; }
.nx__form-grid { gap:16px; }
.nx__form input:not([type=checkbox]):not([type=radio]),.nx__form select,.nx__form textarea,.nx__inline input { min-height:38px; border:1px solid var(--c-line-strong); border-radius:var(--radius-md); background:var(--c-white); color:var(--c-black); padding:9px 10px; font:inherit; font-size:var(--fs-sm); }
.nx__form label { line-height:1.45; }
.nx__form label.nx__ck { flex-direction:row; align-items:center; }
.nx__form input[type=checkbox],.nx__form input[type=radio] { width:16px; height:16px; flex-shrink:0; }
.nx__form input::placeholder,.nx__inline input::placeholder { color:var(--c-faint); }
.nx__seg { gap:2px; }
.nx__seg button { border-radius:var(--radius-sm); }
.nx__seg button.is-active,.nx__kind.is-active,.nx__badge { background:var(--c-fill-soft); color:var(--c-fill); }
.nx .btn--primary { color:var(--c-white); background:var(--c-fill); border-color:var(--c-fill); box-shadow:none; }
:root[data-theme=dark] .nx .btn--primary { color:var(--nav-bg); }
.nx .btn--ghost { color:var(--c-fill); }
.nx .btn:disabled { opacity:.5; cursor:not-allowed; }
.nx :is(button,a,input,select,textarea,summary):focus-visible { outline:2px solid var(--c-fill); outline-offset:3px; box-shadow:none; }
.nx input[type=search] { width:100%; }
.nx__inline { align-items:center; flex-wrap:wrap; }
.nx__inline>input { min-width:0; max-width:100%; }
.nx__row>div:first-child { min-width:0; }
.nx__row { flex-wrap:wrap; row-gap:8px; }
.nx__row small,.nx__card small { overflow-wrap:anywhere; }
.nx__message { display:block; padding:14px 18px; border-color:var(--c-line); border-left:3px solid var(--c-fill); color:var(--c-black); }
.nx__empty { border:1px dashed var(--c-line-strong); border-radius:var(--radius-lg); background:var(--c-white); padding:56px 24px; }
.nx__empty strong { display:block; font-size:var(--fs-md); }
.nx__empty p { max-width:42ch; line-height:1.7; font-size:var(--fs-sm); }
.nx__pill { flex-shrink:0; }
.nx__pill--warn { color:var(--c-muted); background:var(--c-surface-2); border-style:dashed; }
.nx__inbox { border-radius:var(--radius-md); background:var(--c-white); color:var(--c-black); }
.nx__inbox>summary { padding:12px 16px; font-size:var(--fs-sm); }
.nx__inbox>summary::after { content:'⌄'; margin-left:auto; color:var(--c-faint); }
.nx__inbox[open]>summary::after { transform:rotate(180deg); }
.nx__inbox .nx__box { border:0; border-top:1px solid var(--c-line); margin:0; border-radius:0 0 var(--radius-md) var(--radius-md); padding:8px 16px 16px; }
.nx__inbox .nx__row { display:grid; grid-template-columns:minmax(0,1fr) auto auto; }
.nx__inbox .nx__row.is-unread { border-left:2px solid var(--c-fill); padding-left:12px; }
.nx__inbox .nx__row small { max-width:75ch; }
.nx__search-layout { grid-template-columns:300px minmax(0,1fr); gap:24px; }
.nx__filter { padding:20px; }
.nx__filter-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:18px; }
.nx__filter-heading h3 { margin:0; font-size:var(--fs-base); }
.nx__filter>.nx__full { display:flex; flex-direction:column; gap:6px; margin-bottom:18px; }
.nx__filter .nx__form-grid { gap:12px; }
.nx__filter .nx__section-title { margin:20px 0 12px; font-size:var(--fs-sm); }
.nx__kind { position:relative; display:inline-flex; align-items:center; gap:6px; padding:7px 10px; }
.nx__kind input { display:block; width:13px!important; height:13px!important; margin:0; }
.nx__kind:focus-within { outline:2px solid var(--c-fill); outline-offset:2px; }
.nx__level-picker { border:1px solid var(--c-line-strong); border-radius:var(--radius-md); overflow:hidden; }
.nx__level-picker>summary { display:flex; align-items:center; justify-content:space-between; gap:6px; padding:10px; font-size:var(--fs-sm); cursor:pointer; }
.nx__level-picker>input { margin:0 10px 10px; width:calc(100% - 20px)!important; }
.nx__level-options { max-height:240px; overflow:auto; overscroll-behavior:contain; padding:0 10px; border-top:1px solid var(--c-line); }
.nx__level-options fieldset { padding:10px 0; margin:0; border:0; border-bottom:1px solid var(--c-line); min-width:0; }
.nx__level-options legend { font-size:var(--fs-micro); font-weight:750; color:var(--c-faint); padding-top:8px; }
.nx__level-options label { display:flex; align-items:center; gap:8px; color:var(--c-black); padding:6px 0; }
.nx__level-picker>.nx__link { margin:12px; }
.nx__search-submit .btn { width:100%; }
.nx__date-picker>input { width:100%; margin-top:8px; }
.nx__date-picker .nx__inline { display:flex; flex-wrap:nowrap; margin-top:6px; gap:4px; }
.nx__date-picker .nx__inline>input { min-width:0; flex:1; }
.nx__date-picker .nx__inline>.btn { padding:0 8px; }
.nx__date-chips { display:flex; flex-wrap:wrap; gap:5px; margin-top:8px; }
.nx__map-panel { border:1px solid var(--c-line); border-radius:var(--radius-lg); overflow:hidden; background:var(--c-white); margin-bottom:24px; }
.nx__map-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 18px; font-size:var(--fs-sm); }
.nx__map-heading .nx__hint { max-width:65%; text-align:right; font-size:var(--fs-micro); }
.nx__map { height:300px; border:0; border-top:1px solid var(--c-line); border-bottom:1px solid var(--c-line); border-radius:0; margin:0; z-index:0; }
.nx__map-footer { display:flex; gap:16px; align-items:center; flex-wrap:wrap; padding:10px 18px; font-size:var(--fs-micro); color:var(--c-muted); }
.nx__map-dot { display:inline-block; width:8px; height:8px; background:var(--c-fill); border-radius:50%; margin-right:5px; }
.nx__map-marker span { display:grid; place-items:center; width:28px; height:28px; border:2px solid var(--c-white); border-radius:50%; background:var(--c-fill); color:var(--c-white); font-size:var(--fs-micro); font-family:var(--ff); font-weight:750; box-shadow:var(--shadow-sm); }
:root[data-theme=dark] .nx__map-marker span { color:var(--nav-bg); }
.nx__map .leaflet-control-zoom a,.nx__map .leaflet-control-attribution,.nx__map .leaflet-tooltip { background:var(--c-white); color:var(--c-muted); border-color:var(--c-line); }
.nx__map .leaflet-control-attribution a { color:var(--c-fill); }
.nx__results-head { margin-bottom:16px; flex-wrap:wrap; }
.nx__results-head>strong { font-size:var(--fs-md); }
.nx__save-search { gap:4px; }
.nx__save-search input { width:180px; }
.nx__saved-item { display:flex; align-items:center; border:1px solid var(--c-line-strong); border-radius:var(--radius-full); background:var(--c-white); overflow:hidden; }
.nx__saved-item .nx__chip { border:0; background:transparent; padding:8px 4px 8px 12px; }
.nx__saved-item .nx__chip-x { padding:5px 10px 5px 4px; }
.nx__result-card { position:relative; padding:20px 20px 18px 56px; margin-bottom:12px; }
.nx__result-number { display:grid; place-items:center; position:absolute; top:20px; left:18px; width:26px; height:26px; border-radius:var(--radius-md); color:var(--c-fill); background:var(--c-fill-soft); font-size:var(--fs-sm); font-weight:750; }
.nx__card-head strong { font-size:var(--fs-base); line-height:1.4; }
.nx__card-meta { gap:6px 12px; max-width:45%; }
.nx__tags { margin:12px 0 4px; }
.nx__result-card .nx__act { margin-top:16px; }
.nx__act>summary { padding:6px 0; line-height:1.5; }
.nx__act[open]>summary { margin-bottom:10px; }
.nx__act .nx__actions { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.nx__checks label { line-height:1.5; }
.nx__setup { grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr)); }
.mob-notif { display:inline-flex; justify-content:center; min-width:22px; border-radius:var(--radius-full); background:var(--nav-active-bg); color:var(--nav-active-text); padding:2px 6px; font-size:var(--fs-micro); }
@media(max-width:1100px) {
 .nx__search-layout { grid-template-columns:280px minmax(0,1fr); gap:16px; }
 .nx__card-head { flex-wrap:wrap; }.nx__card-meta { justify-content:start; max-width:none; }
 .nx__map-heading { align-items:start; flex-direction:column; }.nx__map-heading .nx__hint { max-width:none; text-align:left; }
}
@media(max-width:900px) { .nx__search-layout { grid-template-columns:1fr; }.nx__filter .nx__form-grid { grid-template-columns:1fr 1fr; }.nx__level-options { max-height:190px; } }
@media(max-width:700px) {
 .nx { padding:20px 14px 40px; }.nx__heading { align-items:start; }.nx__tabs { gap:18px; margin-inline:-14px; padding-inline:14px; }
 .nx__tab { min-height:44px; }.nx__toolbar-actions { width:100%; }.nx__pill { max-width:100%; flex-wrap:wrap; }
 .nx__box,.nx__filter { padding:18px; }.nx__form-grid { grid-template-columns:1fr; }
 .nx__row { align-items:start; }.nx__inbox .nx__row { grid-template-columns:minmax(0,1fr) auto; }.nx__inbox .nx__row>.nx__muted { grid-column:1; grid-row:2; }
 .nx__filter .nx__form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.nx__result-card { padding:18px 14px 16px 49px; }.nx__result-number { left:12px; top:18px; }
 .nx__map { height:260px; }.nx__map-footer { gap:10px; padding:10px 14px; }.nx__map-tools .btn { padding-inline:8px; }
 .nx__save-search { width:100%; }.nx__save-search input { flex:1; }.nx__results-head { gap:12px; }
 .nx__kind { min-height:40px; }.nx__checks label,.nx__level-options label { min-height:32px; }
 .nx .btn--sm { min-height:36px; }.nx__empty { padding:36px 20px; }
}
.nx__map-panel>.nx__map-tools { padding:8px 12px 0; }

.nx__fieldset { min-width:0; padding:0; margin:0; border:0; }
/* OSM tiles retain their attribution; only the background responds to the content theme. */
.nx__map .leaflet-tile-pane { filter:grayscale(1); }
:root[data-theme=dark] .nx__map .leaflet-tile-pane { filter:grayscale(1) invert(1) contrast(.85); }

/* SFV combobox: a visible, keyboard-accessible list directly below each field. */
.sfv-combo{position:relative;min-width:0}
.sfv-combo>label{display:block;margin-bottom:6px}
.sfv-combo__control{position:relative;display:flex;align-items:center}
.nx .sfv-combo__control input{width:100%;padding-right:42px}
.sfv-combo__toggle{position:absolute;right:1px;top:1px;bottom:1px;width:38px;border:0;border-left:1px solid var(--c-line);border-radius:0 7px 7px 0;background:transparent;color:var(--c-black);cursor:pointer;font-size:18px}
.sfv-combo__toggle:focus-visible{outline:2px solid var(--c-fill)}
.sfv-combo__popup{position:absolute;top:100%;left:0;right:0;z-index:40;margin-top:4px;background:var(--c-white);border:1px solid var(--c-line-strong);border-radius:9px;box-shadow:var(--shadow-sm);overflow:hidden}
.sfv-combo__popup[hidden],.sfv-combo [data-sfv-choices]{display:none!important}
.sfv-combo__list{max-height:260px;overflow:auto;overscroll-behavior:contain}
.sfv-combo [role=option]{padding:10px 12px;cursor:pointer;color:var(--c-black);font-size:13px;border-bottom:1px solid var(--c-line);overflow-wrap:anywhere}
.sfv-combo [role=option]:hover,.sfv-combo [role=option][aria-selected=true]{background:var(--c-fill-soft)}
.sfv-combo [role=option] span,.sfv-combo [role=option] small{display:block}
.sfv-combo [role=option] small{color:var(--c-muted);margin-top:3px}
.sfv-combo__popup>[role=status]{display:block;padding:9px 12px;color:var(--c-muted);font-size:11px}
/* Vereinsdatenbank: Regionen tragen die Reihenfolge auch auf kleinen Bildschirmen. */
.ne-sfv-region{grid-column:1/-1;margin:20px 0 4px}.ne-sfv-checkbox{display:flex!important;align-items:center;gap:8px}.ne-sfv-checkbox input{width:18px!important;height:18px!important;min-height:0!important;margin:0}.ne-sfv-detail{padding:24px;max-height:85dvh;overflow:auto}.ne-sfv-fields{display:grid;grid-template-columns:minmax(100px,1fr) minmax(0,2fr);gap:8px 16px}.ne-sfv-fields dt{font-weight:600}.ne-sfv-fields dd{margin:0;overflow-wrap:anywhere}.ne-sfv-json{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}.ne-sfv-detail .btn{white-space:normal;text-align:left}@media(max-width:540px){.ne-sfv-fields{grid-template-columns:1fr}.ne-sfv-fields dd{margin-bottom:8px}}

/* Gegnerabgleich direkt am Gegnerfeld, für Matrix und Mobil. */
.opponent-notice{margin-top:6px;padding:8px;border:1px solid var(--c-line-strong);border-radius:var(--radius);background:var(--c-white);color:var(--c-black);white-space:normal;font-size:var(--fs-sm)}
.opponent-notice p{margin:0 0 5px;overflow-wrap:anywhere}
.opponent-notice__actions{display:flex;flex-wrap:wrap;gap:5px}
.opponent-notice__actions form{margin:0}
.opponent-notice--done{border:none;padding:2px 0;background:transparent;font-size:var(--fs-micro)}
.amx__col-opp:has(.opponent-notice:not(.opponent-notice--done)){width:270px;max-width:270px;overflow:visible;white-space:normal}
.amx__col-opp .opponent-notice{font-size:var(--fs-micro);cursor:default}
.amx__col-opp .opponent-notice .btn{font-size:var(--fs-micro);padding:4px 6px}
.cos-pop.opponent-picker{width:min(620px,calc(100vw - 36px));max-width:620px;max-height:calc(100dvh - 90px);overflow:auto;border-color:var(--c-line-strong)}
.opponent-picker__filters{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.opponent-picker__filters .sfv-combo{grid-column:1/-1}
.opponent-picker__filters label{display:grid;gap:4px}
.opponent-picker__filters select{min-width:0;width:100%}
.opponent-picker__results{margin:10px 0}
.opponent-picker__team{display:grid;gap:5px;padding:12px 0;border-top:1px solid var(--c-line-strong)}
.opponent-picker__team .btn{justify-self:start}
.opponent-picker__team small{color:var(--c-muted)}
@media(max-width:520px){.opponent-picker__filters{grid-template-columns:1fr}.opponent-notice__actions .btn{min-height:40px}.opponent-notice{font-size:14px}}

.matt-cardlink { display:block;color:inherit;text-decoration:none; }
:root{--opponent-picker-bg:var(--c-white);--opponent-picker-text:var(--c-black);--opponent-picker-muted:var(--c-muted);--opponent-picker-line:var(--c-line-strong)}
.app-page #cos-popup .cos-pop.opponent-picker{background:var(--opponent-picker-bg);color:var(--opponent-picker-text);border-color:var(--opponent-picker-line)}
.opponent-picker__filters input,.opponent-picker__filters select{width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--opponent-picker-line);border-radius:8px;background:var(--opponent-picker-bg);color:var(--opponent-picker-text);font:inherit}
.opponent-picker__filters .sfv-combo__control input{padding-right:42px}
.opponent-picker .sfv-combo__toggle,.opponent-picker .cos-pop__close{color:var(--opponent-picker-text)}
.opponent-picker__team small{color:var(--opponent-picker-muted)}
.opponent-notice .btn:disabled{opacity:.4;cursor:default}
