.availability.available.only-for-prm,.availability.partial.only-for-prm{color:#ff9f43}.own-availability{cursor:pointer;outline:none}.own-availability:hover,.own-availability:focus-visible{background:rgba(85,216,220,.11);box-shadow:inset 0 0 0 1px rgba(85,216,220,.42)}.checkbox-label{display:flex!important;align-items:center;gap:8px}.checkbox-label input{width:auto}
:root { color-scheme: dark; --bg:#07131b; --panel:#0d202b; --soft:#122c39; --line:rgba(151,201,219,.17); --text:#effbfc; --muted:#98b2bc; --aqua:#55d8dc; --green:#62dda0; --yellow:#f4c65b; --red:#ff7b7b; --purple:#b59aff; font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif }
*{box-sizing:border-box} body{margin:0;min-height:100vh;color:var(--text);background:radial-gradient(circle at 12% 0,rgba(49,152,170,.18),transparent 34rem),radial-gradient(circle at 92% 8%,rgba(106,83,190,.15),transparent 30rem),var(--bg)}
.hero,main{width:min(1640px,calc(100% - 36px));margin-inline:auto}.hero{padding:34px 0 22px;display:flex;justify-content:space-between;align-items:flex-end;gap:22px}.eyebrow,.team-kicker{margin:0 0 7px;color:var(--aqua);font-size:.7rem;font-weight:850;letter-spacing:.15em}h1{margin:0;font-size:clamp(2rem,4.5vw,4rem);line-height:.95;letter-spacing:-.05em}.subtitle{margin:12px 0 0;color:var(--muted)}h2,h3,p{margin-top:0}.connection{display:flex;align-items:center;gap:10px;padding:11px 14px;border:1px solid var(--line);border-radius:13px;background:rgba(13,32,43,.8)}.connection strong,.connection small{display:block}.connection small{margin-top:2px;color:var(--muted);font-size:.72rem}.dot{width:10px;height:10px;border-radius:50%;background:var(--yellow)}.dot.online{background:var(--green);box-shadow:0 0 14px var(--green)}
.panel{border:1px solid var(--line);border-radius:18px;background:rgba(11,29,39,.84);backdrop-filter:blur(16px)}.login{max-width:520px;margin:42px auto;padding:28px;text-align:center}.login p:not(.eyebrow),.login small{color:var(--muted)}.login small{display:block;margin-top:12px}.account{display:flex;justify-content:flex-end;gap:12px;margin-bottom:8px;color:var(--muted);font-size:.78rem}.account a,.planner-toolbar a{color:var(--aqua)}[hidden]{display:none!important}
.button{appearance:none;border:1px solid var(--line);border-radius:9px;padding:9px 12px;color:var(--text);background:var(--soft);font:inherit;font-size:.78rem;font-weight:750;cursor:pointer;text-decoration:none}.button:hover{border-color:rgba(85,216,220,.55)}.button.primary{border-color:rgba(85,216,220,.45);background:linear-gradient(135deg,#187b86,#335db3)}.button.ghost{background:transparent}.button.danger{border-color:rgba(255,123,123,.42);color:#ffc0c0;background:rgba(255,123,123,.09)}.button.danger:hover{border-color:var(--red);background:rgba(255,123,123,.16)}.button:disabled{opacity:.42;cursor:not-allowed}.week-nav{display:flex;align-items:center;gap:9px;padding:12px;position:sticky;top:8px;z-index:10;box-shadow:0 10px 35px rgba(0,0,0,.22)}.week-nav label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.76rem}.week-nav input{color:var(--text);border:1px solid var(--line);border-radius:8px;padding:7px;background:#091a23}.week-nav #week-label{margin-right:auto;font-weight:800}
.insights{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0}.insights article,#matchday{padding:15px}.section-title{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}.section-title h2{margin:0;font-size:1rem}.hint{color:var(--muted);font-size:.7rem}.stack{display:grid;gap:7px;max-height:150px;overflow:auto}.task,.change{width:100%;border:0;border-radius:9px;padding:9px 11px;text-align:left;color:var(--text);background:rgba(255,255,255,.035);font:inherit;font-size:.78rem}.task{cursor:pointer}.task-warning{border-left:3px solid var(--yellow)}.task-archive,.task-external{border-left:3px solid var(--purple)}.task-complete{border-left:3px solid var(--green)}.change{display:flex;align-items:center;gap:8px;border-left:3px solid var(--red)}.change-summary{min-width:0;flex:1}.acknowledge-change{display:grid;flex:0 0 auto;width:27px;height:27px;place-items:center;border:1px solid rgba(98,221,160,.38);border-radius:50%;padding:0;color:var(--green);background:rgba(98,221,160,.08);cursor:pointer}.acknowledge-change:hover{border-color:var(--green);background:rgba(98,221,160,.16)}.acknowledge-all{justify-self:end;padding:6px 9px;color:var(--green);font-size:.68rem}.empty-copy{margin:0;color:var(--muted);font-size:.78rem}.success-copy{color:var(--green);font-weight:800}.conflicts{margin:12px 0;padding:10px 14px;border:1px solid rgba(255,123,123,.34);border-radius:12px;background:rgba(255,123,123,.08);color:#ffb1b1}.conflicts p{margin:3px 0;font-size:.8rem}
.calendar{overflow:hidden;margin-bottom:14px}.calendar-scroll{overflow-x:auto;padding:14px;scrollbar-color:var(--aqua) transparent}.team-section{min-width:1240px;border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-bottom:13px;background:rgba(5,18,25,.28)}.team-section:last-child{margin-bottom:0}.team-row{display:grid;grid-template-columns:180px repeat(7,minmax(145px,1fr));border-bottom:1px solid var(--line)}.team-row>*{min-width:0;border-right:1px solid var(--line)}.team-row>*:last-child{border-right:0}.row-label{padding:11px}.row-label h2{margin:0;font-size:1.15rem}.team-heading-row{background:rgba(19,48,61,.52)}.day-heading{padding:10px;text-align:center}.day-heading strong,.day-heading small{display:block}.day-heading strong{font-size:.8rem}.day-heading small{margin-top:4px;color:var(--muted);font-size:.62rem}.day-heading.full-lineup{background:rgba(98,221,160,.1);box-shadow:inset 0 3px var(--green)}.day-heading.full-lineup small{color:var(--green)}.events-row .row-label{display:flex;align-items:center}.day-cell{min-height:104px;padding:7px;display:grid;align-content:start;gap:6px}.empty-day{margin:auto;color:rgba(152,178,188,.35)}
.event-card{width:100%;min-width:0;max-width:100%;overflow:hidden;padding:9px;border:1px solid var(--line);border-left:3px solid var(--yellow);border-radius:10px;color:var(--text);background:linear-gradient(145deg,rgba(21,51,64,.97),rgba(10,31,40,.97));text-align:left;cursor:pointer}.event-card:hover{transform:translateY(-1px);border-color:rgba(85,216,220,.46)}.event-card.state-preplanned{border-left-color:var(--purple)}.event-card.state-published{border-left-color:var(--green)}.event-card.state-excluded{opacity:.58}.event-card span{display:block}.event-top{display:flex!important;min-width:0;justify-content:space-between;gap:6px;align-items:flex-start}.event-top strong{min-width:0;font-size:.76rem;overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere}.state-indicator{display:grid!important;flex:0 0 auto;width:18px;height:18px;place-items:center;border:1px solid currentColor;border-radius:50%;font-size:.62rem;font-weight:900}.state-indicator.state-published{color:var(--green);background:rgba(98,221,160,.12)}.state-indicator.state-preplanned{color:var(--purple);background:rgba(181,154,255,.1)}.state-indicator.state-excluded{color:var(--muted);background:rgba(152,178,188,.08)}.event-detail{margin-top:5px;color:var(--muted);font-size:.63rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result{margin-top:6px;color:var(--green);font-size:.68rem;font-weight:800}.warning-copy{margin-top:6px!important;color:#ffd889;font-size:.62rem;overflow-wrap:anywhere}.roster{border-top:1px solid var(--line)}.roster summary{padding:10px 13px;color:var(--aqua);font-size:.75rem;font-weight:800;cursor:pointer}.player-row{min-height:45px}.player-label{position:relative;padding:7px 11px}.player-label strong,.player-label small{display:block}.player-label strong{font-size:.76rem}.player-label small{color:var(--muted);font-size:.61rem}.hide-player{position:absolute;right:7px;top:13px;border:0;background:none;color:var(--muted);font-size:.58rem;cursor:pointer}.availability{display:grid;place-items:center;font-size:.95rem}.availability.available{color:var(--green)}.availability.partial{color:var(--yellow)}.availability.unavailable{color:var(--red)}.reset-hidden{margin:9px}
.matchday-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.matchday-grid .event-card{max-width:340px}.team-tag{color:var(--aqua);font-size:.62rem;font-weight:850;margin-bottom:5px}
dialog{width:min(820px,calc(100% - 24px));max-height:90vh;overflow:auto;border:1px solid var(--line);border-radius:18px;padding:20px;color:var(--text);background:#0c202b;box-shadow:0 30px 90px rgba(0,0,0,.55)}dialog::backdrop{background:rgba(1,8,12,.75);backdrop-filter:blur(5px)}.dialog-heading,.dialog-actions{display:flex;justify-content:space-between;align-items:center;gap:12px}.dialog-heading h2{margin:0}.icon-button{border:0;background:none;color:var(--text);font-size:2rem;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.form-grid label,.form-grid fieldset{display:grid;gap:5px;color:var(--muted);font-size:.72rem}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px;color:var(--text);background:#071922;font:inherit}.inline-actions{display:flex;gap:6px}.inline-actions input{flex:1}.lineup-editor{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.form-grid fieldset{margin:0;border:1px solid var(--line);border-radius:10px}.form-grid small{color:var(--muted)}.form-message{min-height:20px;margin-top:8px;color:var(--red);font-size:.75rem}.dialog-actions{justify-content:flex-end;margin-top:12px}.dialog-spacer{flex:1}.preview-group{padding:10px 0;border-bottom:1px solid var(--line)}.preview-group h3{margin-bottom:5px;font-size:.85rem}#toast{position:fixed;right:18px;bottom:18px;z-index:100;padding:11px 15px;border-radius:10px;background:#15594c;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}#toast.show{opacity:1;transform:none}#toast.error{background:#783535}
.notification-center{position:relative;z-index:20;display:flex;justify-content:flex-end;gap:9px;margin:0 0 8px}.notification-menu{position:relative}.notification-menu>summary{position:relative;display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--soft);cursor:pointer;list-style:none}.notification-menu>summary::-webkit-details-marker{display:none}.notification-menu[open]>summary{border-color:rgba(85,216,220,.6);background:#173846}.notification-icon{font-size:1.15rem;line-height:1}.notification-badge{position:absolute;right:-5px;top:-5px;min-width:20px;height:20px;padding:0 5px;border:2px solid var(--bg);border-radius:999px;color:#fff;background:#e84242;font-size:.68rem;font-weight:900;line-height:16px;text-align:center}.notification-popover{position:absolute;right:0;top:49px;width:min(430px,calc(100vw - 28px));padding:14px;box-shadow:0 20px 55px rgba(0,0,0,.48)}.notification-popover .stack{max-height:310px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.availability{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:3px;text-align:center}.availability-status{display:flex;align-items:center;justify-content:center;gap:6px}.availability-restriction{max-width:100%;color:var(--yellow);font-size:.56rem;line-height:1.15;overflow-wrap:anywhere}.availability-symbol{display:block}.availability-add{display:grid;width:19px;height:19px;place-items:center;border:1px solid rgba(85,216,220,.4);border-radius:50%;padding:0;color:var(--aqua);background:rgba(85,216,220,.08);font:inherit;font-size:.78rem;font-weight:900;line-height:1;cursor:pointer}.availability-add:hover{border-color:var(--aqua);background:rgba(85,216,220,.18)}.new-standin{margin-top:9px;padding-top:8px;border-top:1px solid var(--line)}.new-standin>summary{color:var(--aqua);font-weight:800;cursor:pointer}.standin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:9px}.standin-grid .button{align-self:end}.standin-grid label{min-width:0}
.add-event-cell{cursor:pointer;transition:background .16s}.add-event-cell:hover{background:rgba(85,216,220,.045)}.add-event-cell .empty-day{padding:7px 9px;border:1px dashed rgba(85,216,220,.22);border-radius:8px;color:rgba(85,216,220,.62);font-size:.65rem;font-weight:750}.add-event-cell:has(.event-card)::after{content:'+ weiterer Termin';padding:3px 4px;color:rgba(85,216,220,.5);font-size:.55rem;text-align:center}
@media(max-width:900px){.hero{align-items:flex-start;flex-direction:column}.connection{width:100%}.insights{grid-template-columns:1fr}.week-nav{flex-wrap:wrap}.week-nav #week-label{order:-1;width:100%}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.lineup-editor{grid-template-columns:1fr 1fr}.standin-grid{grid-template-columns:1fr 1fr}.inline-actions{flex-wrap:wrap}.team-section{min-width:1120px}.team-row{grid-template-columns:160px repeat(7,minmax(135px,1fr))}}
@media(max-width:520px){.hero,main{width:calc(100% - 20px)}.hero{padding-top:24px}.week-nav .button{flex:1}.week-nav label{width:100%;justify-content:space-between}.lineup-editor,.standin-grid{grid-template-columns:1fr}.notification-popover{position:fixed;top:120px;right:10px;left:10px;width:auto}}
