:root{
  --dtkv-primary:#A9936F;
  --dtkv-primary-soft:#F3EFE8;
  --dtkv-text:#1F1F1F;
  --dtkv-secondary:#4A4A4A;
  --dtkv-bg:#F6F4F1;
  --dtkv-line:#E8E4DE;
  --dtkv-white:#fff;
  --dtkv-dark:#111820;
  --dtkv-radius:12px;
  --dtkv-shadow:0 10px 30px rgba(25,25,25,.06);
}

.dtkv-calendar-app,
.dtkv-calendar-app *{box-sizing:border-box}
.dtkv-calendar-app{color:var(--dtkv-text);font:inherit}
.dtkv-calendar-app button,
.dtkv-calendar-app input,
.dtkv-calendar-app select{font:inherit}
.dtkv-calendar-app button{cursor:pointer}
.dtkv-calendar-actions{display:flex;justify-content:flex-end;gap:12px;margin:0 0 24px}
.dtkv-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border:1px solid transparent;border-radius:6px;text-decoration:none!important;font-weight:600;line-height:1.2;transition:.2s ease}
.dtkv-button:hover{transform:translateY(-1px)}
.dtkv-button--primary{background:var(--dtkv-dark);color:#fff!important;border-color:var(--dtkv-dark)}
.dtkv-button--secondary{background:#fff;color:var(--dtkv-text)!important;border-color:#BCC2C8}
.dtkv-button--dark{background:var(--dtkv-dark);color:#fff!important;border-color:var(--dtkv-dark)}

.dtkv-calendar-layout{display:grid;grid-template-columns:minmax(220px,250px) minmax(0,1fr) minmax(235px,270px);gap:18px;align-items:start}
.dtkv-calendar-filter,.dtkv-calendar-main,.dtkv-calendar-sidebar>section{background:#fff;border:1px solid var(--dtkv-line);border-radius:7px}
.dtkv-calendar-filter{padding:18px;position:sticky;top:20px}
.dtkv-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.dtkv-panel-heading h3,.dtkv-calendar-sidebar h3,.dtkv-subscribe-panel h3{font-size:18px;line-height:1.2;margin:0}
.dtkv-filter-reset{border:0;background:none;color:#63728A;padding:0;font-size:13px}
.dtkv-filter-body>label:not(.dtkv-check){display:block;margin:0 0 15px;font-size:13px;font-weight:600;color:#454A50}
.dtkv-calendar-filter select,.dtkv-calendar-filter input[type=search]{width:100%;min-height:42px;margin-top:7px;border:1px solid #D8DCDD;border-radius:5px;background:#fff;padding:8px 12px;color:var(--dtkv-text)}
.dtkv-calendar-filter select{appearance:auto}
.dtkv-check{display:flex;align-items:flex-start;gap:8px;margin:11px 0;font-size:13px;line-height:1.35;color:#3E454B}
.dtkv-check input{width:16px;height:16px;margin:1px 0 0;accent-color:var(--dtkv-primary)}
.dtkv-search-label{margin-top:18px!important}
.dtkv-search-label input{padding-left:38px!important;background-image:linear-gradient(45deg,transparent,transparent)}
.dtkv-my-events-teaser{margin:20px -1px -1px;padding:18px;background:linear-gradient(145deg,#F8FAFC,#EEF3F8);border:1px solid #DDE4EB;border-radius:6px}
.dtkv-my-events-teaser h3{font-size:18px;margin:0 0 8px}
.dtkv-my-events-teaser p{font-size:13px;line-height:1.45;margin:0 0 14px;color:#4C5661}
.dtkv-my-events-teaser .dtkv-button{min-height:38px;padding:8px 14px;font-size:13px}

.dtkv-calendar-main{min-width:0;overflow:hidden}
.dtkv-view-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid var(--dtkv-line)}
.dtkv-view-tabs button{min-height:48px;border:0;border-right:1px solid var(--dtkv-line);background:#fff;color:#343A40;font-weight:600}
.dtkv-view-tabs button:last-child{border-right:0}
.dtkv-view-tabs button.is-active{background:var(--dtkv-dark);color:#fff}
.dtkv-view-tabs button span{font-size:8px;margin-left:4px;vertical-align:middle}
.dtkv-calendar-toolbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:18px;border-bottom:1px solid var(--dtkv-line)}
.dtkv-calendar-toolbar[hidden]{display:none!important}
.dtkv-calendar-nav,.dtkv-calendar-mode{display:flex;align-items:center}
.dtkv-calendar-nav button,.dtkv-calendar-mode button{min-height:38px;border:1px solid #D6DADD;background:#fff;padding:7px 12px;color:#333}
.dtkv-calendar-nav button+button,.dtkv-calendar-mode button+button{margin-left:-1px}
.dtkv-calendar-nav button:first-child,.dtkv-calendar-mode button:first-child{border-radius:5px 0 0 5px}
.dtkv-calendar-nav button:last-child,.dtkv-calendar-mode button:last-child{border-radius:0 5px 5px 0}
.dtkv-calendar-mode{justify-self:end}
.dtkv-calendar-mode button.is-active{background:var(--dtkv-dark);color:#fff;border-color:var(--dtkv-dark)}
.dtkv-calendar-month{font-size:19px!important;line-height:1.2!important;margin:0!important;text-transform:capitalize;text-align:center}
.dtkv-calendar-status{padding:12px 18px;background:#F7F9FB;border-bottom:1px solid var(--dtkv-line);font-size:13px;color:#58636E}
.dtkv-calendar-status.is-error{color:#9C2929;background:#FFF2F2}
.dtkv-calendar-status[hidden]{display:none}
.dtkv-calendar-content{min-height:420px}

.dtkv-weekdays,.dtkv-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.dtkv-weekdays{border-bottom:1px solid var(--dtkv-line);background:#FBFBFA}
.dtkv-weekdays>div{padding:11px 8px;text-align:center;font-size:12px;font-weight:700;color:#3D4348}
.dtkv-day{min-width:0;min-height:112px;padding:8px;border-right:1px solid var(--dtkv-line);border-bottom:1px solid var(--dtkv-line);background:#fff}
.dtkv-day:nth-child(7n){border-right:0}
.dtkv-day.is-outside{background:#FCFCFB;color:#BCC0C3}
.dtkv-day-number{height:25px;font-size:13px;font-weight:600}
.dtkv-day-number span{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:50%;background:var(--dtkv-dark);color:#fff}
.dtkv-day-events{display:flex;flex-direction:column;gap:5px}
.dtkv-event-pill{display:block;width:100%;min-width:0;border:0;border-radius:4px;padding:6px 7px;text-align:left;color:#23303B;line-height:1.2}
.dtkv-event-pill strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}
.dtkv-event-pill span{display:flex;justify-content:space-between;gap:4px;margin-top:3px;font-size:10px}
.dtkv-event-pill small{display:block;margin-top:3px;font-size:9px;font-weight:700;text-transform:uppercase}
.dtkv-event-pill.is-cancelled{text-decoration:line-through;opacity:.62}
.dtkv-lock{font-size:7px!important}
.dtkv-more-events{border:0;background:none;padding:2px 0;color:#52677D;font-size:10px;text-align:left}

.dtkv-event--turnier{background:#F0E8FA!important;color:#5D358B!important}
.dtkv-event--spielbetrieb{background:#E5F0FC!important;color:#185B9D!important}
.dtkv-event--dtkv{background:#FFF2CF!important;color:#936500!important}
.dtkv-event--training{background:#E8F5E7!important;color:#2E7A36!important}
.dtkv-event--frist{background:#FFF0DF!important;color:#A75A13!important}
.dtkv-event--sonstiges{background:#EEEEEE!important;color:#555!important}
.dtkv-type-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px}
.dtkv-type-dot.dtkv-type--turnier{background:#8F5BD5}
.dtkv-type-dot.dtkv-type--spielbetrieb{background:#4D93DC}
.dtkv-type-dot.dtkv-type--dtkv{background:#F0B61A}
.dtkv-type-dot.dtkv-type--training{background:#67B968}
.dtkv-type-dot.dtkv-type--frist{background:#E89545}
.dtkv-type-dot.dtkv-type--sonstiges{background:#A9A9A9}
.dtkv-calendar-legend{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:18px;padding:16px;border-top:1px solid var(--dtkv-line);font-size:12px;color:#444}

.dtkv-event-list{padding:0 18px 18px}
.dtkv-event-list section>h3{margin:0 -18px!important;padding:16px 18px 10px;border-bottom:1px solid var(--dtkv-line);font-size:17px!important;text-transform:capitalize}
.dtkv-list-event{display:grid;grid-template-columns:52px 44px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--dtkv-line)}
.dtkv-list-event:last-child{border-bottom:0}
.dtkv-list-event>time{display:flex;flex-direction:column;align-items:center;text-transform:uppercase;line-height:1}
.dtkv-list-event>time small{font-size:10px;color:#5C6670;font-weight:700}
.dtkv-list-event>time strong{font-size:28px;margin:3px 0}
.dtkv-list-event>time span{font-size:10px;font-weight:700}
.dtkv-list-event-icon,.dtkv-upcoming-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:4px;font-size:18px;font-weight:700}
.dtkv-list-event-body{min-width:0}
.dtkv-list-event-top{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-bottom:5px}
.dtkv-list-event-body h4{font-size:16px!important;line-height:1.3!important;margin:0 0 4px!important}
.dtkv-list-event-body p{margin:0;color:#3F4952;font-size:13px}
.dtkv-list-event-body small{display:block;margin-top:5px;color:#5A6470}
.dtkv-list-event-action{font-size:12px;min-height:38px;padding:8px 12px}
.dtkv-type-badge,.dtkv-status-badge{display:inline-flex;align-items:center;width:max-content;border-radius:3px;padding:3px 7px;font-size:9px!important;line-height:1.2;text-transform:uppercase;font-style:normal;font-weight:800;letter-spacing:.03em}
.dtkv-status-badge{background:#F1E2E2;color:#9B3434}
.dtkv-list-event.is-cancelled{opacity:.62}
.dtkv-list-event.is-cancelled h4{text-decoration:line-through}
.dtkv-empty-state{display:flex;min-height:360px;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;color:#5D6670}
.dtkv-empty-state strong{color:var(--dtkv-text);font-size:18px}
.dtkv-empty-state p{margin:7px 0 0}

.dtkv-calendar-sidebar{display:flex;flex-direction:column;gap:14px}
.dtkv-upcoming-panel h3{padding:17px 18px;border-bottom:1px solid var(--dtkv-line)}
.dtkv-upcoming-item{display:grid;width:100%;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:start;padding:15px 18px;border:0;border-bottom:1px solid var(--dtkv-line);background:#fff;text-align:left;color:var(--dtkv-text)}
.dtkv-upcoming-item:hover{background:#FAFAF8}
.dtkv-upcoming-item>span:last-child{min-width:0}
.dtkv-upcoming-item small{display:block;margin-bottom:4px;font-size:10px;text-transform:uppercase;color:#68737D}
.dtkv-upcoming-item strong{display:block;font-size:13px;line-height:1.3}
.dtkv-upcoming-item em{display:block;margin:3px 0 6px;font-size:11px;font-style:normal;color:#4F5962}
.dtkv-upcoming-all{display:flex;justify-content:space-between;width:100%;border:0;background:#fff;padding:14px 18px;color:#2F465F;font-size:12px;font-weight:700;text-align:left}
.dtkv-sidebar-empty{padding:18px;font-size:13px;color:#66717A}
.dtkv-subscribe-panel{padding:17px 18px;background:#FFFCF5!important;border-color:#EEDFC3!important}
.dtkv-subscribe-panel p{font-size:12px;line-height:1.45;color:#59626A}
.dtkv-subscribe-panel a{display:block;margin-top:7px;padding:9px 11px;border:1px solid #E5DDCF;border-radius:4px;background:#fff;color:#34495F!important;text-decoration:none!important;font-size:12px}

.dtkv-event-dialog{width:min(620px,calc(100vw - 30px));max-height:85vh;border:0;border-radius:12px;padding:0;box-shadow:0 24px 80px rgba(0,0,0,.22);overflow:auto}
.dtkv-event-dialog::backdrop{background:rgba(19,24,29,.58)}
.dtkv-dialog-close{position:sticky;z-index:3;top:10px;float:right;width:36px;height:36px;margin:10px 10px -46px 0;border:0;border-radius:50%;background:#F0F1F1;color:#1F262C;font-size:24px;line-height:1}
.dtkv-dialog-content{padding:28px}
.dtkv-dialog-content h2{margin:10px 40px 7px 0!important;font-size:27px!important;line-height:1.2!important}
.dtkv-dialog-type{display:flex;gap:8px;align-items:center}
.dtkv-dialog-date{font-weight:600;color:#4B5660}
.dtkv-dialog-details{list-style:none;padding:0;margin:20px 0;border-top:1px solid var(--dtkv-line)}
.dtkv-dialog-details li{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid var(--dtkv-line);font-size:13px}
.dtkv-dialog-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}
.dtkv-dialog-actions .dtkv-button{font-size:13px}
.dtkv-dialog-day-list{margin:18px -28px -28px}

.dtkv-upcoming-shortcode{display:grid;gap:10px}
.dtkv-upcoming-card{display:grid;grid-template-columns:58px minmax(0,1fr);gap:14px;align-items:center;padding:14px;border:1px solid var(--dtkv-line);border-radius:var(--dtkv-radius);background:#fff;color:var(--dtkv-text)!important;text-decoration:none!important}
.dtkv-upcoming-card time{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:58px;border-radius:8px;background:var(--dtkv-primary-soft);color:var(--dtkv-text)}
.dtkv-upcoming-card time strong{font-size:22px;line-height:1}
.dtkv-upcoming-card time span{font-size:11px;text-transform:uppercase}
.dtkv-upcoming-card>span small,.dtkv-upcoming-card>span strong,.dtkv-upcoming-card>span em{display:block}
.dtkv-upcoming-card>span small{font-size:10px;color:#68717A}
.dtkv-upcoming-card>span strong{font-size:15px;margin:2px 0}
.dtkv-upcoming-card>span em{font-size:12px;font-style:normal;color:#59636C}
.dtkv-no-events{color:#5D6670}

@media(max-width:1180px){
  .dtkv-calendar-layout{grid-template-columns:230px minmax(0,1fr)}
  .dtkv-calendar-sidebar{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}
  .dtkv-calendar-sidebar>section{min-width:0}
  .dtkv-calendar-filter{position:static}
}

@media(max-width:860px){
  .dtkv-calendar-actions{justify-content:stretch}
  .dtkv-calendar-actions .dtkv-button{flex:1}
  .dtkv-calendar-layout{grid-template-columns:1fr}
  .dtkv-calendar-filter{display:block}
  .dtkv-filter-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}
  .dtkv-my-events-teaser{grid-column:1/-1}
  .dtkv-check{grid-column:1/-1}
  .dtkv-search-label{grid-column:1/-1}
  .dtkv-calendar-sidebar{grid-column:auto;grid-template-columns:1fr 1fr}
  .dtkv-day{min-height:100px;padding:5px}
  .dtkv-event-pill{padding:5px}
  .dtkv-event-pill strong{font-size:10px}
  .dtkv-list-event{grid-template-columns:48px 40px minmax(0,1fr)}
  .dtkv-list-event-action{grid-column:3;justify-self:start}
}

@media(max-width:640px){
  .dtkv-calendar-actions{flex-direction:column}
  .dtkv-filter-body{display:block}
  .dtkv-calendar-sidebar{display:block}
  .dtkv-calendar-sidebar>section+section{margin-top:14px}
  .dtkv-view-tabs button{font-size:12px;padding:0 8px}
  .dtkv-calendar-toolbar{grid-template-columns:1fr auto;padding:12px}
  .dtkv-calendar-month{grid-column:1/-1;grid-row:1;text-align:left;font-size:17px!important}
  .dtkv-calendar-nav{grid-column:1;grid-row:2}
  .dtkv-calendar-mode{grid-column:2;grid-row:2}
  .dtkv-month-grid{min-width:760px}
  .dtkv-calendar-content{overflow-x:auto;min-height:300px}
  .dtkv-calendar-legend{justify-content:flex-start;gap:10px;padding:12px}
  .dtkv-event-list{padding:0 14px 14px}
  .dtkv-event-list section>h3{margin:0 -14px!important;padding:14px}
  .dtkv-list-event{grid-template-columns:42px minmax(0,1fr);gap:10px;padding:14px 0}
  .dtkv-list-event-icon{display:none}
  .dtkv-list-event-body{grid-column:2}
  .dtkv-list-event-action{grid-column:2;width:100%;margin-top:2px}
  .dtkv-list-event>time strong{font-size:23px}
  .dtkv-dialog-content{padding:22px}
  .dtkv-dialog-content h2{font-size:23px!important}
  .dtkv-dialog-details li{grid-template-columns:1fr;gap:3px}
  .dtkv-dialog-actions{flex-direction:column}
  .dtkv-dialog-actions .dtkv-button{width:100%}
}

/* Verbesserungen ab Version 0.1.1 */
.dtkv-button-icon{width:17px;height:17px;flex:0 0 17px}
.dtkv-scroll-link{scroll-behavior:smooth}
.dtkv-search-label input{
  padding-left:38px!important;
  background-color:#fff;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235c6670' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='10.8' cy='10.8' r='6.4'/%3E%3Cpath d='m16 16 4.2 4.2'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:13px center!important;
  background-size:16px 16px!important;
  text-align:left;
}
.dtkv-calendar-content{min-height:0}
.dtkv-day{min-height:96px}
.dtkv-event-pill strong{
  white-space:normal;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.dtkv-calendar-legend:empty{display:none}
.dtkv-calendar-app.is-list-view .dtkv-calendar-content{min-height:0}
.dtkv-calendar-app.is-list-view .dtkv-empty-state{min-height:260px}
.dtkv-subscribe-panel{scroll-margin-top:110px}
.dtkv-subscribe-panel:target{box-shadow:0 0 0 3px rgba(169,147,111,.16)}
.dtkv-subscribe-panel p{margin:5px 0 12px}
.dtkv-subscribe-panel a{min-height:40px;display:flex;align-items:center;font-weight:600}
.dtkv-dialog-actions{align-items:stretch}
.dtkv-dialog-actions .dtkv-button{min-height:42px}

@media(max-width:860px){
  .dtkv-day{min-height:88px}
}


/* Verbesserungen ab Version 0.1.2 */
.dtkv-button--secondary:hover,
.dtkv-button--secondary:focus-visible{
  background:var(--dtkv-dark)!important;
  border-color:var(--dtkv-dark)!important;
  color:#fff!important;
}
.dtkv-button--secondary:hover *,
.dtkv-button--secondary:focus-visible *{color:#fff!important}

.dtkv-filter-reset{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:32px;
  padding:5px 8px!important;
  border:1px solid transparent!important;
  border-radius:5px;
  background:transparent!important;
  color:#627087!important;
  font-size:13px;
  line-height:1.2;
  text-decoration:none!important;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease;
}
.dtkv-filter-reset svg{width:15px;height:15px;flex:0 0 15px}
.dtkv-filter-reset:hover,
.dtkv-filter-reset:focus-visible{
  border-color:#E0D8CC!important;
  background:var(--dtkv-primary-soft)!important;
  color:var(--dtkv-text)!important;
  box-shadow:none!important;
  transform:none!important;
}

.dtkv-check input[type="checkbox"]{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:inline-grid;
  place-content:center;
  flex:0 0 17px;
  width:17px!important;
  height:17px!important;
  margin:1px 0 0!important;
  border:1.5px solid #959DA4!important;
  border-radius:2px!important;
  background:#fff!important;
  box-shadow:none!important;
  cursor:pointer;
}
.dtkv-check input[type="checkbox"]::before{content:none!important;display:none!important}
.dtkv-check input[type="checkbox"]:checked{
  border-color:var(--dtkv-primary)!important;
  background-color:var(--dtkv-primary)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3.2 8.2 3 3.1 6.6-6.7' fill='none' stroke='white' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:13px 13px!important;
}
.dtkv-check input[type="checkbox"]:focus-visible{
  outline:2px solid rgba(169,147,111,.35)!important;
  outline-offset:2px!important;
}

.dtkv-upcoming-item:hover,
.dtkv-upcoming-item:focus,
.dtkv-upcoming-item:active,
.dtkv-upcoming-item:focus-visible{
  background:#FAFAF8!important;
  color:var(--dtkv-text)!important;
  box-shadow:none!important;
}
.dtkv-upcoming-item:hover strong,
.dtkv-upcoming-item:focus strong,
.dtkv-upcoming-item:active strong,
.dtkv-upcoming-item:focus-visible strong{color:var(--dtkv-text)!important}
.dtkv-upcoming-item:hover small,
.dtkv-upcoming-item:focus small,
.dtkv-upcoming-item:active small,
.dtkv-upcoming-item:focus-visible small{color:#68737D!important}
.dtkv-upcoming-item:hover em,
.dtkv-upcoming-item:focus em,
.dtkv-upcoming-item:active em,
.dtkv-upcoming-item:focus-visible em{color:#4F5962!important}
.dtkv-upcoming-item:focus-visible{outline:2px solid rgba(169,147,111,.4)!important;outline-offset:-3px!important}

.dtkv-event-dialog{position:relative}
.dtkv-dialog-close{
  position:absolute;
  top:18px;
  right:18px;
  float:none;
  display:flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  margin:0;
  padding:0!important;
  border:0!important;
  border-radius:0;
  clip-path:polygon(25% 6.7%,75% 6.7%,100% 50%,75% 93.3%,25% 93.3%,0 50%);
  background:var(--dtkv-primary-soft)!important;
  color:#111820!important;
  line-height:1;
  box-shadow:none!important;
  transform:none!important;
  transition:background-color .18s ease,color .18s ease;
}
.dtkv-dialog-close svg{display:block;width:19px;height:19px;pointer-events:none}
.dtkv-dialog-close:hover,
.dtkv-dialog-close:focus-visible{
  background:var(--dtkv-primary)!important;
  color:#111820!important;
  transform:none!important;
}
.dtkv-dialog-close:focus-visible{outline:2px solid #111820!important;outline-offset:3px!important}
.dtkv-dialog-content h2{margin-right:54px!important}
.dtkv-dialog-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.dtkv-dialog-actions .dtkv-button{width:100%;min-width:0;text-align:center}

@media(max-width:640px){
  .dtkv-dialog-close{top:13px;right:13px;width:38px;height:38px}
  .dtkv-dialog-actions{grid-template-columns:1fr}
}


/* Anpassungen ab Version 0.1.3 */
.dtkv-filter-reset{
  gap:4px!important;
  min-height:26px!important;
  padding:2px 4px!important;
  border-radius:4px!important;
  font-size:12px!important;
}
.dtkv-filter-reset svg{
  width:13px!important;
  height:13px!important;
  flex-basis:13px!important;
}

.dtkv-dialog-close{
  top:20px!important;
  right:20px!important;
  width:34px!important;
  height:34px!important;
  padding:0!important;
}
.dtkv-dialog-close svg{
  width:15px!important;
  height:15px!important;
}
.dtkv-dialog-close:hover,
.dtkv-dialog-close:focus-visible{
  color:#fff!important;
}

.dtkv-list-event-actions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:7px;
}
.dtkv-unbookmark-link{
  min-height:0!important;
  padding:2px 4px!important;
  border:0!important;
  background:transparent!important;
  color:#65717B!important;
  font-size:12px!important;
  line-height:1.3!important;
  text-decoration:underline!important;
  text-underline-offset:3px;
  box-shadow:none!important;
}
.dtkv-unbookmark-link:hover,
.dtkv-unbookmark-link:focus-visible{
  background:transparent!important;
  color:var(--dtkv-text)!important;
  transform:none!important;
}

@media(max-width:640px){
  .dtkv-dialog-close{
    top:14px!important;
    right:14px!important;
    width:32px!important;
    height:32px!important;
  }
  .dtkv-dialog-close svg{
    width:14px!important;
    height:14px!important;
  }
}


/* Anpassungen ab Version 0.1.4 */
.dtkv-filter-body[hidden]{display:none!important}
.dtkv-filter-toggle{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--dtkv-text)!important;
  font-size:18px!important;
  font-weight:700!important;
  line-height:1.2!important;
  box-shadow:none!important;
  cursor:default;
}
.dtkv-filter-toggle svg{
  display:none;
  width:18px;
  height:18px;
  transition:transform .18s ease;
}
.dtkv-filter-toggle:disabled{opacity:1!important;color:var(--dtkv-text)!important}
.dtkv-filter-reset{
  gap:3px!important;
  min-height:22px!important;
  padding:1px 3px!important;
  font-size:11px!important;
}
.dtkv-filter-reset svg{
  width:12px!important;
  height:12px!important;
  flex-basis:12px!important;
}

.dtkv-list-event-body h4{
  transition:color .18s ease;
}
.dtkv-list-event:hover .dtkv-list-event-body h4,
.dtkv-list-event:focus-within .dtkv-list-event-body h4{
  color:var(--dtkv-primary)!important;
}
.dtkv-upcoming-item:hover strong,
.dtkv-upcoming-item:focus strong,
.dtkv-upcoming-item:active strong,
.dtkv-upcoming-item:focus-visible strong{
  color:var(--dtkv-primary)!important;
}

.dtkv-list-event-icon.dtkv-event--turnier,
.dtkv-upcoming-icon.dtkv-event--turnier{
  font-size:0!important;
}
.dtkv-list-event-icon.dtkv-event--turnier::before,
.dtkv-upcoming-icon.dtkv-event--turnier::before{
  content:"";
  display:block;
  width:10px;
  height:10px;
  background:currentColor;
  transform:rotate(45deg);
  transform-origin:center;
}

.dtkv-dialog-close svg path{
  stroke-width:3!important;
}

@media(max-width:767px){
  .dtkv-calendar-filter{
    padding:0;
    position:static;
    overflow:hidden;
  }
  .dtkv-panel-heading{
    min-height:58px;
    margin:0;
    padding:16px 18px;
  }
  .dtkv-filter-toggle{
    cursor:pointer;
  }
  .dtkv-filter-toggle:disabled{cursor:default}
  .dtkv-filter-toggle svg{display:block}
  .dtkv-filter-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
  .dtkv-filter-toggle:hover,
  .dtkv-filter-toggle:focus-visible{
    color:var(--dtkv-primary)!important;
    transform:none!important;
  }
  .dtkv-filter-toggle:focus-visible{
    outline:2px solid rgba(169,147,111,.4)!important;
    outline-offset:4px!important;
  }
  .dtkv-filter-body{
    display:block;
    padding:0 18px 18px;
    border-top:1px solid var(--dtkv-line);
  }
  .dtkv-filter-body>label:first-child{margin-top:16px!important}
  .dtkv-my-events-teaser{margin-bottom:0}
}


/* Anpassungen ab Version 0.1.5 */
.dtkv-dialog-close{
  background:#111820!important;
  color:#fff!important;
}
.dtkv-dialog-close:hover,
.dtkv-dialog-close:focus-visible{
  background:#252C33!important;
  color:#fff!important;
}

@media(max-width:640px){
  .dtkv-list-event-actions{
    grid-column:2!important;
    width:100%;
    margin-top:8px;
  }
  .dtkv-list-event-action{
    grid-column:auto!important;
    width:100%!important;
    min-height:44px;
    padding:10px 14px;
    white-space:normal;
  }
  .dtkv-filter-reset{
    gap:5px!important;
    min-height:32px!important;
    padding:5px 6px!important;
    font-size:14px!important;
  }
  .dtkv-filter-reset svg{
    width:15px!important;
    height:15px!important;
    flex-basis:15px!important;
  }
  .dtkv-calendar-app.is-public-list-view .dtkv-upcoming-panel{
    display:none;
  }
}

/* ==========================================================
   TERMIN-DETAILSEITE – ab Version 0.2.0
   ========================================================== */
.dtkv-event-single-app,
.dtkv-event-single-app *{box-sizing:border-box}
.dtkv-event-single-app{background:var(--dtkv-bg);color:var(--dtkv-text);padding:0 0 80px}
.dtkv-event-single-shell{width:min(1180px,calc(100% - 48px));margin:0 auto}
.dtkv-event-single-hero{padding:54px 0 58px;background:linear-gradient(125deg,#77756f 0%,#a8a293 58%,#c7beaa 100%);color:#fff}
.dtkv-event-back-link{display:inline-flex;align-items:center;gap:7px;margin:0 0 28px;color:#fff!important;font-size:14px;font-weight:600;text-decoration:none!important}
.dtkv-event-back-link svg{width:18px;height:18px}
.dtkv-event-back-link:hover,.dtkv-event-back-link:focus-visible{color:#fff!important;text-decoration:underline!important;text-underline-offset:4px}
.dtkv-event-single-badges{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.dtkv-event-single-hero .dtkv-type-badge{padding:5px 9px;font-size:11px!important}
.dtkv-event-single-status,.dtkv-event-single-label{display:inline-flex;align-items:center;width:max-content;padding:5px 9px;border-radius:4px;background:rgba(255,255,255,.92);color:#252525;font-size:11px;font-weight:800;line-height:1.2;text-transform:uppercase;letter-spacing:.03em}
.dtkv-status--cancelled{background:#8d2f2f;color:#fff}
.dtkv-status--postponed{background:#fff0d7;color:#8a5615}
.dtkv-status--planned{background:#e9eef4;color:#35475c}
.dtkv-status--completed{background:#e7e7e7;color:#4c4c4c}
.dtkv-event-single-hero h1{max-width:900px;margin:0!important;color:#fff!important;font-size:clamp(36px,5vw,64px)!important;line-height:1.08!important;letter-spacing:-.025em}
.dtkv-event-single-hero-meta{display:flex;align-items:flex-start;flex-wrap:wrap;gap:14px 30px;margin-top:25px;font-size:17px;line-height:1.45}
.dtkv-event-single-hero-meta>div{display:flex;align-items:flex-start;gap:10px;max-width:520px}
.dtkv-event-single-hero-meta svg{width:21px;height:21px;flex:0 0 21px;margin-top:1px}
.dtkv-event-single-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:28px;align-items:start;padding-top:42px}
.dtkv-event-single-main,.dtkv-event-single-sidebar{display:flex;min-width:0;flex-direction:column;gap:22px}
.dtkv-event-single-sidebar{position:sticky;top:24px}
.dtkv-event-single-card{margin:0;padding:28px 30px;background:#fff;border:1px solid var(--dtkv-line);border-radius:var(--dtkv-radius);box-shadow:0 8px 24px rgba(31,31,31,.035)}
.dtkv-event-single-card h2{margin:0 0 18px!important;color:var(--dtkv-text)!important;font-size:24px!important;line-height:1.25!important}
.dtkv-event-single-card p:last-child{margin-bottom:0}
.dtkv-event-single-content{font-size:16px;line-height:1.72}
.dtkv-event-richtext>*:first-child{margin-top:0}
.dtkv-event-richtext>*:last-child{margin-bottom:0}
.dtkv-event-richtext a,.dtkv-event-facts a,.dtkv-event-contact-card a{color:#3c506a;text-decoration:underline;text-underline-offset:3px}
.dtkv-event-richtext a:hover,.dtkv-event-facts a:hover,.dtkv-event-contact-card a:hover{color:var(--dtkv-primary)}
.dtkv-event-single-image{overflow:hidden;margin:0;border-radius:var(--dtkv-radius);background:#ddd}
.dtkv-event-single-image img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.dtkv-event-notice{display:flex;flex-direction:column;gap:3px;padding:17px 20px;border:1px solid #e9d2aa;border-left:4px solid #bc7c20;border-radius:7px;background:#fff7e8;color:#523b1a}
.dtkv-event-notice--cancelled{border-color:#e2bcbc;border-left-color:#9d3939;background:#fff0f0;color:#682828}
.dtkv-event-facts{margin:0}
.dtkv-event-facts>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:22px;padding:15px 0;border-top:1px solid var(--dtkv-line)}
.dtkv-event-facts>div:first-child{padding-top:0;border-top:0}
.dtkv-event-facts>div:last-child{padding-bottom:0}
.dtkv-event-facts dt{font-weight:700;color:var(--dtkv-text)}
.dtkv-event-facts dd{margin:0;color:#3e464d}
.dtkv-event-actions-card p{margin:0 0 18px;color:#59636c;font-size:14px;line-height:1.5}
.dtkv-event-actions-card .dtkv-button,.dtkv-event-registration-card .dtkv-button{width:100%;margin-top:9px;min-height:46px;text-align:center}
.dtkv-event-actions-card .dtkv-button:first-of-type{margin-top:0}
.dtkv-single-bookmark[aria-pressed="true"]{background:#fff!important;border-color:var(--dtkv-dark)!important;color:var(--dtkv-dark)!important}
.dtkv-single-bookmark[aria-pressed="true"]:hover,.dtkv-single-bookmark[aria-pressed="true"]:focus-visible{background:var(--dtkv-dark)!important;color:#fff!important}
.dtkv-single-action-status{min-height:18px;margin:11px 0 0!important;color:#4e5d50!important;font-size:12px!important}
.dtkv-single-action-status.is-error{color:#9d3939!important}
.dtkv-event-registration-card{border-color:#ded0b7;background:#fffcf6}
.dtkv-event-registration-card>p{font-size:14px;line-height:1.55;color:#54504a}
.dtkv-event-deadline{padding:11px 13px;border-radius:5px;background:var(--dtkv-primary-soft);color:var(--dtkv-text)!important}
.dtkv-event-contact-card p{margin:0 0 8px}
.dtkv-event-contact-card>a{display:block;margin-top:7px;overflow-wrap:anywhere}
.dtkv-event-external-link{margin-top:18px!important;padding-top:16px;border-top:1px solid var(--dtkv-line);font-weight:600;text-decoration:none!important}
.dtkv-event-external-link span{font-size:13px}

@media(max-width:900px){
  .dtkv-event-single-layout{grid-template-columns:1fr}
  .dtkv-event-single-sidebar{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
  .dtkv-event-actions-card{grid-row:span 2}
}

@media(max-width:640px){
  .dtkv-event-single-app{padding-bottom:48px}
  .dtkv-event-single-shell{width:min(100% - 32px,1180px)}
  .dtkv-event-single-hero{padding:34px 0 38px}
  .dtkv-event-back-link{margin-bottom:22px}
  .dtkv-event-single-hero h1{font-size:36px!important}
  .dtkv-event-single-hero-meta{display:grid;gap:11px;margin-top:20px;font-size:15px}
  .dtkv-event-single-layout{gap:18px;padding-top:24px}
  .dtkv-event-single-main,.dtkv-event-single-sidebar{gap:18px}
  .dtkv-event-single-sidebar{display:flex}
  .dtkv-event-single-card{padding:22px 20px;border-radius:9px}
  .dtkv-event-single-card h2{font-size:21px!important}
  .dtkv-event-facts>div{grid-template-columns:1fr;gap:4px;padding:13px 0}
  .dtkv-event-facts dt{font-size:13px;color:#69727a;text-transform:uppercase;letter-spacing:.03em}
  .dtkv-event-actions-card{order:-1}
}

/* Elementor-/Shortcode-Bausteine */
.dtkv-event-shortcode-notice{padding:16px 18px;border:1px dashed var(--dtkv-primary,#a9936f);border-radius:10px;background:#fffaf2;color:#1f1f1f;font-size:14px}
.dtkv-event-component{width:100%}
.elementor-widget-shortcode .dtkv-event-single-card{margin:0}

/* Kompaktes Startseiten-Modul – ersetzt das bisherige dtkv_events_modul */
.dtkv-events-module{width:100%}
.dtkv-events-module .dtkv-chip-group{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.dtkv-events-module .dtkv-chip{appearance:none;border:1px solid var(--dtkv-line,#e8e4de);border-radius:999px;background:#f7f5f1;color:var(--dtkv-text,#1f1f1f);padding:6px 12px;font:inherit;font-size:13px;font-weight:650;line-height:1.2;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}
.dtkv-events-module .dtkv-chip:hover,.dtkv-events-module .dtkv-chip:focus-visible{border-color:var(--dtkv-primary,#a9936f);background:var(--dtkv-primary-soft,#f3efe8);color:var(--dtkv-text,#1f1f1f)}
.dtkv-events-module .dtkv-chip.active{border-color:var(--dtkv-primary,#a9936f);background:var(--dtkv-primary,#a9936f);color:#fff}
.dtkv-events-module .dtkv-event-list{display:block}
.dtkv-events-module .dtkv-event-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:center;padding:13px 0;border-bottom:1px solid var(--dtkv-line,#e8e4de);color:inherit!important;text-decoration:none!important;overflow:hidden;transition:background .2s ease,color .2s ease}
.dtkv-events-module .dtkv-event-item[hidden],.dtkv-events-module .dtkv-event-item.is-filter-hidden{display:none!important}
.dtkv-events-module .dtkv-event-item:hover,.dtkv-events-module .dtkv-event-item:focus-visible{background:color-mix(in srgb,var(--dtkv-primary,#a9936f) 8%,transparent)}
.dtkv-events-module .dtkv-event-date{width:68px;height:68px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:color-mix(in srgb,var(--dtkv-primary,#a9936f) 9%,white);color:var(--dtkv-primary,#a9936f);flex:0 0 68px}
.dtkv-events-module .dtkv-event-date strong{font-size:26px;font-weight:800;line-height:1}
.dtkv-events-module .dtkv-event-date span{margin-top:3px;font-size:13px;font-weight:800;line-height:1;text-transform:uppercase}
.dtkv-events-module .dtkv-event-body{display:flex;min-width:0;flex-direction:column}
.dtkv-events-module .dtkv-event-body h3{margin:0 0 8px!important;color:var(--dtkv-text,#1f1f1f)!important;font-size:16px!important;font-weight:800!important;line-height:1.18!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .2s ease}
.dtkv-events-module .dtkv-event-item:hover h3,.dtkv-events-module .dtkv-event-item:focus-visible h3{color:var(--dtkv-primary,#a9936f)!important}
.dtkv-events-module .dtkv-event-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}
.dtkv-events-module .dtkv-event-meta{min-width:0}
.dtkv-events-module .dtkv-event-location{display:flex;align-items:center;gap:7px;min-width:0;margin-bottom:3px;color:var(--dtkv-text,#1f1f1f);font-size:14px;line-height:1.2}
.dtkv-events-module .dtkv-event-location svg{width:16px;height:16px;flex:0 0 16px;color:var(--dtkv-primary,#a9936f)}
.dtkv-events-module .dtkv-event-location span,.dtkv-events-module .dtkv-event-category{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dtkv-events-module .dtkv-event-category{color:var(--dtkv-primary,#a9936f);font-size:13px;line-height:1.2}
.dtkv-events-module .dtkv-event-arrow{padding-right:14px;color:var(--dtkv-primary,#a9936f);font-size:28px;line-height:1;transition:transform .2s ease}
.dtkv-events-module .dtkv-event-item:hover .dtkv-event-arrow,.dtkv-events-module .dtkv-event-item:focus-visible .dtkv-event-arrow{transform:translateX(4px)}
.dtkv-events-module .dtkv-events-empty{margin:28px 0;color:#737373;font-size:15px}
.dtkv-events-module .dtkv-events-all-link{display:inline-flex;align-items:center;gap:8px;margin-top:14px;color:var(--dtkv-text,#1f1f1f)!important;font-size:16px;font-weight:500;text-decoration:none!important}
.dtkv-events-module .dtkv-events-all-link span{font-size:22px;line-height:1;transition:transform .2s ease}
.dtkv-events-module .dtkv-events-all-link:hover,.dtkv-events-module .dtkv-events-all-link:focus-visible{color:var(--dtkv-primary,#a9936f)!important}
.dtkv-events-module .dtkv-events-all-link:hover span,.dtkv-events-module .dtkv-events-all-link:focus-visible span{transform:translateX(4px)}
@media(max-width:700px){
  .dtkv-events-module .dtkv-chip-group{margin-bottom:18px}
  .dtkv-events-module .dtkv-event-item{grid-template-columns:62px minmax(0,1fr);gap:13px;padding:13px 0}
  .dtkv-events-module .dtkv-event-date{width:62px;height:62px;flex-basis:62px}
  .dtkv-events-module .dtkv-event-date strong{font-size:24px}
  .dtkv-events-module .dtkv-event-body h3{font-size:15px!important}
  .dtkv-events-module .dtkv-event-location{font-size:13px}
  .dtkv-events-module .dtkv-event-category{display:inline-flex;width:max-content;max-width:100%;margin-top:2px;padding:2px 7px;border-radius:999px;background:color-mix(in srgb,var(--dtkv-primary,#a9936f) 8%,white);font-size:11px;font-weight:700}
  .dtkv-events-module .dtkv-event-arrow{padding-right:8px}
}

/* DTKV-interne Anmeldungen ab Version 0.4.0 */
.dtkv-internal-registration{display:block}
.dtkv-registration-summary{margin:0 0 14px;padding:12px 14px;border-radius:8px;background:rgba(169,147,111,.10)}
.dtkv-registration-summary p{margin:0!important;color:var(--dtkv-text)!important}
.dtkv-registration-current{margin:14px 0 8px!important;color:var(--dtkv-text)!important}
.dtkv-registration-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}
.dtkv-registration-actions .dtkv-button{margin:0!important}
.dtkv-registration-feedback{min-height:20px;margin:10px 0 0!important;color:#59636c!important;font-size:13px!important}
.dtkv-internal-registration button[disabled]{opacity:.6;cursor:wait}
.dtkv-public-participants{margin-top:22px;padding-top:20px;border-top:1px solid var(--dtkv-line)}
.dtkv-public-participants h3{margin:0 0 12px!important;font-size:17px!important;line-height:1.3!important;color:var(--dtkv-text)!important}
.dtkv-public-participants ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:0;padding:0;list-style:none}
.dtkv-public-participants li{position:relative;padding-left:15px;font-size:14px;line-height:1.4}
.dtkv-public-participants li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--dtkv-primary)}
.dtkv-public-participants p{margin:0!important}

@media(max-width:640px){
  .dtkv-registration-actions{grid-template-columns:1fr}
  .dtkv-public-participants ul{grid-template-columns:1fr}
}

/* Gastanmeldung und Turnier-Teilnehmerlisten ab Version 0.5.0 */
.dtkv-registration-notice{margin:0 0 14px;padding:12px 14px;border:1px solid var(--dtkv-line,#e8e4de);border-radius:8px;background:#fff;font-size:14px;line-height:1.45}
.dtkv-registration-notice--confirmed,.dtkv-registration-notice--waitlist{border-color:rgba(47,126,78,.28);background:rgba(47,126,78,.08)}
.dtkv-registration-notice--cancelled{border-color:rgba(89,99,108,.22);background:rgba(89,99,108,.07)}
.dtkv-registration-notice--closed,.dtkv-registration-notice--invalid{border-color:rgba(176,82,49,.28);background:rgba(176,82,49,.08)}
.dtkv-guest-registration{margin-top:18px;padding-top:16px;border-top:1px solid var(--dtkv-line,#e8e4de)}
.dtkv-guest-registration summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;font-weight:700;color:var(--dtkv-text,#1f1f1f);list-style:none}
.dtkv-guest-registration summary::-webkit-details-marker{display:none}
.dtkv-guest-registration summary::after{content:"+";font-size:22px;font-weight:400;line-height:1}
.dtkv-guest-registration[open] summary::after{content:"−"}
.dtkv-guest-registration form{margin-top:16px}
.dtkv-guest-registration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.dtkv-guest-registration-grid label{display:flex;min-width:0;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:var(--dtkv-text,#1f1f1f)}
.dtkv-guest-registration-grid input{width:100%;min-height:44px;padding:9px 11px;border:1px solid #cfd3d7;border-radius:7px;background:#fff;color:var(--dtkv-text,#1f1f1f);font:inherit;font-weight:400}
.dtkv-guest-registration-grid input:focus{outline:2px solid color-mix(in srgb,var(--dtkv-primary,#a9936f) 42%,transparent);outline-offset:1px;border-color:var(--dtkv-primary,#a9936f)}
.dtkv-guest-registration-wide{grid-column:1/-1}
.dtkv-guest-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.dtkv-guest-registration-help{margin:12px 0!important;color:#59636c!important;font-size:13px!important;line-height:1.45!important}
.dtkv-participant-table-wrap{width:100%;overflow-x:auto}
.dtkv-participant-table{width:100%;border-collapse:collapse;border-spacing:0;font-size:14px;line-height:1.4}
.dtkv-participant-table th,.dtkv-participant-table td{padding:10px 12px;border-bottom:1px solid var(--dtkv-line,#e8e4de);text-align:left;vertical-align:top}
.dtkv-participant-table th{padding-top:0;color:#59636c;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.035em}
.dtkv-participant-table tbody tr:last-child td{border-bottom:0}
.dtkv-participant-table .dtkv-participant-rank{width:130px;text-align:right;white-space:nowrap}

@media(max-width:640px){
  .dtkv-guest-registration-grid{grid-template-columns:1fr}
  .dtkv-guest-registration-wide{grid-column:auto}
  .dtkv-participant-table,.dtkv-participant-table tbody,.dtkv-participant-table tr,.dtkv-participant-table td{display:block;width:100%}
  .dtkv-participant-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .dtkv-participant-table tr{padding:10px 0;border-bottom:1px solid var(--dtkv-line,#e8e4de)}
  .dtkv-participant-table tbody tr:last-child{border-bottom:0}
  .dtkv-participant-table td{display:grid;grid-template-columns:minmax(105px,.8fr) minmax(0,1.4fr);gap:12px;padding:4px 0;border:0;text-align:left!important}
  .dtkv-participant-table td::before{content:attr(data-label);color:#59636c;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
  .dtkv-participant-table .dtkv-participant-rank{width:auto}
}

/* Rollenabhängige Zusatzfelder im Elementor-Formular „Termin melden“ */
.dtkv-submission-registration-options{width:100%;margin:18px 0 8px;padding:22px;border:1px solid var(--dtkv-line,#e8e4de);border-radius:12px;background:var(--dtkv-primary-soft,#f3efe8);color:var(--dtkv-text,#1f1f1f)}
.dtkv-submission-registration-options__head{margin:0 0 16px}
.dtkv-submission-registration-options__head h3{margin:0 0 5px!important;color:var(--dtkv-text,#1f1f1f)!important;font-size:20px!important;font-weight:800!important;line-height:1.2!important}
.dtkv-submission-registration-options__head p,.dtkv-submission-tournament-options p{margin:0;color:#626262;font-size:14px;line-height:1.45}
.dtkv-submission-registration-options__details{margin-top:18px;padding-top:18px;border-top:1px solid color-mix(in srgb,var(--dtkv-primary,#a9936f) 28%,transparent)}
.dtkv-submission-options-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}
.dtkv-submission-field{display:flex;min-width:0;flex-direction:column;gap:7px;color:var(--dtkv-text,#1f1f1f);font-size:14px;font-weight:700}
.dtkv-submission-field input,.dtkv-submission-field select{width:100%;min-height:44px;margin:0;padding:9px 11px;border:1px solid var(--dtkv-line,#e8e4de);border-radius:8px;background:#fff;color:var(--dtkv-text,#1f1f1f);font:inherit;font-weight:400}
.dtkv-submission-field input:focus,.dtkv-submission-field select:focus{border-color:var(--dtkv-primary,#a9936f);outline:2px solid color-mix(in srgb,var(--dtkv-primary,#a9936f) 22%,transparent);outline-offset:1px}
.dtkv-submission-field small{color:#6c6c6c;font-size:12px;font-weight:400;line-height:1.35}
.dtkv-submission-options-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}
.dtkv-submission-option{display:flex;align-items:flex-start;gap:9px;color:var(--dtkv-text,#1f1f1f);font-size:14px;font-weight:600;line-height:1.35;cursor:pointer}
.dtkv-submission-option--main{font-size:15px;font-weight:750}
.dtkv-submission-option input[type="checkbox"]{appearance:none;-webkit-appearance:none;display:grid;width:18px;height:18px;flex:0 0 18px;place-content:center;margin:1px 0 0;border:1.5px solid var(--dtkv-primary,#a9936f);border-radius:3px;background:#fff;cursor:pointer}
.dtkv-submission-option input[type="checkbox"]::before{width:9px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;content:"";transform:rotate(-45deg) scale(0);transform-origin:center;transition:transform .12s ease}
.dtkv-submission-option input[type="checkbox"]:checked{background:var(--dtkv-primary,#a9936f)}
.dtkv-submission-option input[type="checkbox"]:checked::before{transform:rotate(-45deg) scale(1)}
.dtkv-submission-option input[type="checkbox"]:focus-visible{outline:2px solid var(--dtkv-text,#1f1f1f);outline-offset:2px}
.dtkv-submission-public-options{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,2fr);gap:18px;margin-top:16px;padding:16px;border-radius:9px;background:#fff}
.dtkv-submission-tournament-options{display:flex;flex-direction:column;gap:8px;justify-content:center}
.dtkv-submission-options-warning{margin:14px 0 0;padding:10px 12px;border-left:3px solid #b42318;background:#fff;color:#7a271a;font-size:13px;line-height:1.4}
.dtkv-submission-registration-options [hidden]{display:none!important}
@media(max-width:767px){
  .dtkv-submission-registration-options{padding:18px}
  .dtkv-submission-options-grid,.dtkv-submission-options-checks,.dtkv-submission-public-options{grid-template-columns:1fr}
}

/* Erweiterte bedingte Termineinreichung ab Version 0.8.0 */
.dtkv-submission-registration-options{display:flex;flex-direction:column;gap:20px}
.dtkv-submission-registration-options__head{margin:0}
.dtkv-submission-section{display:flex;flex-direction:column;gap:16px;margin:0;padding:18px;border:1px solid color-mix(in srgb,var(--dtkv-primary,#a9936f) 24%,transparent);border-radius:10px;background:color-mix(in srgb,#fff 68%,transparent)}
.dtkv-submission-section h4{margin:0!important;color:var(--dtkv-text,#1f1f1f)!important;font-size:17px!important;font-weight:800!important;line-height:1.2!important}
.dtkv-submission-registration-options__external,.dtkv-submission-registration-options__details{margin:0;padding-top:16px;border-top:1px solid color-mix(in srgb,var(--dtkv-primary,#a9936f) 24%,transparent)}
.dtkv-submission-options-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}
.dtkv-submission-options-grid--location{grid-template-columns:minmax(180px,.7fr) minmax(260px,1.3fr)}
.dtkv-submission-options-grid--address{grid-template-columns:minmax(250px,1.5fr) minmax(100px,.55fr) minmax(160px,1fr) minmax(150px,.8fr)}
.dtkv-submission-field--wide{grid-column:span 2}
.dtkv-submission-options-checks--single{grid-template-columns:1fr}
.dtkv-submission-image-field{padding-top:4px}
.dtkv-submission-image-field input[type="file"]{padding:10px;background:#fff}
.dtkv-submission-publish-note,.dtkv-submission-type-note{margin:0;padding:11px 13px;border-radius:8px;background:#fff;color:#4f565d;font-size:13px;line-height:1.45}
.dtkv-submission-publish-note{border-left:3px solid var(--dtkv-primary,#a9936f);font-weight:650;color:var(--dtkv-text,#1f1f1f)}
.dtkv-submission-type-note{border:1px solid var(--dtkv-line,#e8e4de)}
.dtkv-original-field-hidden{display:none!important}
@media(max-width:1024px){
  .dtkv-submission-options-grid--four,.dtkv-submission-options-grid--address{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  .dtkv-submission-section{padding:15px}
  .dtkv-submission-options-grid--four,.dtkv-submission-options-grid--location,.dtkv-submission-options-grid--address{grid-template-columns:1fr}
  .dtkv-submission-field--wide{grid-column:auto}
}

/* Formularvereinfachung ab Version 0.8.1 */
.dtkv-submission-section.elementor-field-group,
.dtkv-submission-publish-note.elementor-field-group,
.dtkv-submission-type-note.elementor-field-group{
  width:100%!important;
  max-width:100%!important;
  flex:0 0 100%!important;
}
.dtkv-submission-section[hidden],
.dtkv-submission-registration-options__external[hidden],
.dtkv-submission-registration-options__details[hidden],
.dtkv-submission-public-options[hidden],
.dtkv-submission-tournament-options[hidden],
[data-dtkv-alternative-location-options][hidden]{display:none!important}
.dtkv-submission-section--timing{
  padding:14px 16px;
  background:color-mix(in srgb,var(--dtkv-primary,#a9936f) 8%,#fff);
}
.dtkv-submission-section--timing h4{font-size:15px!important}
.dtkv-submission-section--timing .dtkv-submission-options-checks{grid-template-columns:repeat(2,minmax(0,1fr))}
.dtkv-submission-section--location{margin-top:2px}
.dtkv-submission-location-mode{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.dtkv-submission-location-alternative{margin-top:2px}
.dtkv-submission-options-grid--online{grid-template-columns:minmax(160px,.6fr) minmax(260px,1.4fr);margin-top:2px}
.dtkv-submission-section--image h4 span{font-size:13px;font-weight:500;color:#6c6c6c}
.dtkv-submission-section--image{padding-top:16px;padding-bottom:16px}
.dtkv-submission-section--registration .dtkv-submission-registration-options__external,
.dtkv-submission-section--registration .dtkv-submission-registration-options__details{margin-top:2px}
.dtkv-submission-capacity-field{max-width:280px}
.dtkv-organizer-group-expanded{width:100%!important;max-width:100%!important;flex-basis:100%!important}

@media (min-width:768px){
  form.elementor-form:not(.dtkv-is-multiday):not(.dtkv-is-allday) .dtkv-date-start-group,
  form.elementor-form:not(.dtkv-is-multiday):not(.dtkv-is-allday) .dtkv-time-start-group,
  form.elementor-form:not(.dtkv-is-multiday):not(.dtkv-is-allday) .dtkv-time-end-group{
    width:33.333%!important;max-width:33.333%!important;flex-basis:33.333%!important;
  }
  form.elementor-form.dtkv-is-multiday:not(.dtkv-is-allday) .dtkv-date-start-group,
  form.elementor-form.dtkv-is-multiday:not(.dtkv-is-allday) .dtkv-date-end-group,
  form.elementor-form.dtkv-is-multiday:not(.dtkv-is-allday) .dtkv-time-start-group,
  form.elementor-form.dtkv-is-multiday:not(.dtkv-is-allday) .dtkv-time-end-group{
    width:25%!important;max-width:25%!important;flex-basis:25%!important;
  }
  form.elementor-form:not(.dtkv-is-multiday).dtkv-is-allday .dtkv-date-start-group{
    width:100%!important;max-width:100%!important;flex-basis:100%!important;
  }
  form.elementor-form.dtkv-is-multiday.dtkv-is-allday .dtkv-date-start-group,
  form.elementor-form.dtkv-is-multiday.dtkv-is-allday .dtkv-date-end-group{
    width:50%!important;max-width:50%!important;flex-basis:50%!important;
  }
}
@media (max-width:767px){
  .dtkv-submission-section--timing .dtkv-submission-options-checks,
  .dtkv-submission-options-grid--online{grid-template-columns:1fr}
  .dtkv-date-start-group,.dtkv-date-end-group,.dtkv-time-start-group,.dtkv-time-end-group{
    width:100%!important;max-width:100%!important;flex-basis:100%!important;
  }
}

/* Logische Termineingabe ab Version 0.8.2 */
.dtkv-submission-date-options{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px 18px;
  width:100%;
  margin-top:10px;
}
.dtkv-submission-date-options .dtkv-submission-option{
  font-size:13px;
  font-weight:650;
  line-height:1.25;
}
.dtkv-submission-date-options .dtkv-submission-option input:disabled + span{
  opacity:.48;
}
.dtkv-submission-section--location{
  margin-top:14px;
}

@media (min-width:768px){
  form.elementor-form:not(.dtkv-is-multiday):not(.dtkv-is-allday) .dtkv-date-start-group{
    width:40%!important;max-width:40%!important;flex-basis:40%!important;
  }
  form.elementor-form:not(.dtkv-is-multiday):not(.dtkv-is-allday) .dtkv-time-start-group,
  form.elementor-form:not(.dtkv-is-multiday):not(.dtkv-is-allday) .dtkv-time-end-group{
    width:30%!important;max-width:30%!important;flex-basis:30%!important;
  }
  form.elementor-form.dtkv-is-multiday:not(.dtkv-is-allday) .dtkv-date-start-group{
    width:30%!important;max-width:30%!important;flex-basis:30%!important;
  }
  form.elementor-form.dtkv-is-multiday:not(.dtkv-is-allday) .dtkv-date-end-group{
    width:26%!important;max-width:26%!important;flex-basis:26%!important;
  }
  form.elementor-form.dtkv-is-multiday:not(.dtkv-is-allday) .dtkv-time-start-group,
  form.elementor-form.dtkv-is-multiday:not(.dtkv-is-allday) .dtkv-time-end-group{
    width:22%!important;max-width:22%!important;flex-basis:22%!important;
  }
  form.elementor-form.dtkv-is-allday .dtkv-date-start-group{
    width:100%!important;max-width:100%!important;flex-basis:100%!important;
  }
}

@media (max-width:767px){
  .dtkv-submission-date-options{gap:8px 14px}
  .dtkv-submission-date-options .dtkv-submission-option{font-size:13px}
}


/* Formular-Feinschliff ab Version 0.8.3 */
form.elementor-form .dtkv-conditionally-hidden,
form.elementor-form .dtkv-date-end-group[hidden]{
  display:none!important;
}
form.elementor-form.dtkv-is-multiday:not(.dtkv-is-allday) .dtkv-date-end-group:not([hidden]){
  display:flex!important;
}
.dtkv-submission-date-options .dtkv-submission-option{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  gap:9px;
}
.dtkv-submission-date-options .dtkv-submission-option input[type="checkbox"]{
  margin:0;
}
.dtkv-submission-date-options .dtkv-submission-option > span{
  display:inline-flex;
  align-items:center;
  min-height:18px;
  line-height:1.2;
}
.dtkv-submission-section--location{
  padding-left:0;
  padding-right:0;
  border-left:0;
  border-right:0;
  border-radius:0;
  background:transparent;
}
.dtkv-submission-section--location > h4{
  padding-left:0;
  padding-right:0;
}
.dtkv-submission-section--location .dtkv-submission-options-grid{
  margin-left:0;
  margin-right:0;
}
@media(max-width:767px){
  .dtkv-submission-section--location{
    padding-top:16px;
    padding-bottom:16px;
  }
  .dtkv-submission-date-options{
    align-items:flex-start;
    flex-direction:column;
    gap:9px;
  }
}
