/* VDG Mitgliederbereich – Veranstaltungen ausschreiben und buchen (Schritt 5a, js/modules.angebote.js) */

.ag-page{max-width:1180px;margin:0 auto}
.ag-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.ag-tabs a{padding:9px 16px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:800;text-decoration:none}
.ag-tabs a.active{background:var(--leaf);border-color:var(--leaf);color:#fff}
.ag-adminbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 16px;padding:12px 14px;border:1px dashed #b9d3c2;border-radius:14px;background:#f3f9f1}
.ag-adminbar .btn{text-decoration:none}
.ag-adminbar span{color:var(--muted);font-size:15px;flex:1 1 320px}

/* Filter */
.ag-filter{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:10px}
.ag-filter label{display:flex;flex-direction:column;gap:4px;font-size:14px;color:var(--muted)}
.ag-filter input[type=search]{min-width:220px}
.ag-filter input,.ag-filter select{padding:10px 12px;border:1px solid var(--line);border-radius:10px;font:inherit;color:var(--ink);background:#fff}
.ag-filter .btn{height:44px}
.ag-filter-more{flex:1 1 100%;display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 18px;padding-top:6px;border-top:1px solid var(--line)}
.ag-filter .ag-check{flex-direction:row;align-items:center;gap:8px;color:var(--ink);font-size:15px}
.ag-reset{margin-left:auto;align-self:center}
.ag-count{color:var(--muted);margin:6px 2px 12px}

/* Kacheln */
.ag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:20px}
.ag-tile{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:0 6px 20px rgba(20,44,42,.06);transition:transform .15s,box-shadow .15s}
.ag-tile:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(20,44,42,.12)}
.ag-tile.is-draft{opacity:.85;border-style:dashed}
.ag-tile-img{position:relative;aspect-ratio:16/11;background:#eef3ea;overflow:hidden}
.ag-tile-img img{width:100%;height:100%;object-fit:cover;display:block}
.ag-tile-img img.is-portrait{object-fit:contain}
.ag-tile-ph{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#1c5027,#58ad3f);color:#fff;font-weight:900;font-size:22px;letter-spacing:.02em;text-transform:uppercase}
.ag-tile-flag{position:absolute;left:10px;top:10px;background:#1c5027;color:#fff;font-weight:800;font-size:13.5px;padding:5px 10px;border-radius:999px}
.ag-tile-flag.is-draft{left:auto;right:10px;background:#8a6d1a}
.ag-tile-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.ag-tile-kind{font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--leaf)}
.ag-tile h3{margin:0;font-size:19px;line-height:1.3;display:flex;gap:9px;align-items:flex-start}
.ag-tile-when{color:#3c524e;font-size:15px;margin-top:auto}
.ag-tile-price{font-weight:800;color:var(--leaf)}
.ag-dot{flex:0 0 12px;width:12px;height:12px;border-radius:50%;margin-top:7px;background:#9aa9a5}
.ag-dot.is-open{background:#3d9a2e}.ag-dot.is-few{background:#e39a1c}.ag-dot.is-full,.ag-dot.is-closed{background:#d64545}.ag-dot.is-draft{background:#b39a3c}
.ag-empty{padding:28px;text-align:center;background:#fff;border:1px dashed var(--line);border-radius:16px;color:var(--muted)}
.ag-legend{display:flex;flex-wrap:wrap;gap:16px;margin:18px 2px;color:var(--muted);font-size:14px}

/* Zustand */
.ag-state{display:inline-flex;align-items:center;gap:7px;font-weight:800;font-size:15px}
.ag-state i{width:11px;height:11px;border-radius:50%;background:#9aa9a5}
.ag-state.is-open i{background:#3d9a2e}.ag-state.is-few i{background:#e39a1c}.ag-state.is-full i,.ag-state.is-closed i{background:#d64545}.ag-state.is-draft i{background:#b39a3c}
.ag-legend .ag-state{font-weight:600}

/* Veranstaltungsseite */
.ag-topline{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px}
.ag-back{font-weight:800;color:var(--leaf);text-decoration:none}
.ag-team-actions{display:flex;flex-wrap:wrap;gap:8px}
.ag-team-actions .btn,.ag-topline .text-link{text-decoration:none}
.ag-draftbar{padding:10px 14px;border-radius:12px;background:#fff6dd;border:1px solid #ecd9a0;margin-bottom:12px;font-weight:600}
.ag-head{position:relative;border-radius:22px;overflow:hidden;background:#e7efe3;display:none}
.ag-head.has-img{display:block;max-height:480px}
.ag-head.has-img::before{content:"";position:absolute;inset:-20px;background:var(--ag-bg) center/cover no-repeat;filter:blur(22px) brightness(.9);transform:scale(1.05)}
.ag-head-img{position:relative;display:block;margin:0 auto;max-width:100%;max-height:480px;object-fit:contain}
.ag-titlebox{margin:18px 2px 8px}
.ag-titlebox h1{margin:4px 0 6px;font-size:clamp(26px,3.4vw,38px);line-height:1.15}
.ag-when{margin:0;color:#3c524e;font-size:17px;font-weight:600}
.ag-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:28px;align-items:start;margin-top:14px}
.ag-main{min-width:0}
.ag-lead{font-size:19px;line-height:1.55;margin:0 0 18px}
.ag-body{margin-bottom:18px}
.ag-section{padding:22px 0;border-top:1px solid var(--line)}
.ag-section h2{margin:0 0 12px;font-size:23px}
.ag-section p{margin:0 0 12px;line-height:1.6;font-size:17px}
.ag-section-grid.has-img{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.ag-section.is-alt .ag-section-grid.has-img > div:first-child{order:2}
.ag-gallery{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.ag-gallery img{width:100%;height:auto;max-height:420px;object-fit:contain;border-radius:14px;display:block;background:#eef3ea}
.ag-gallery img:only-child{grid-column:1 / -1}
.ag-hotel-addr{font-weight:600}
.ag-note{padding:12px 14px;border-radius:12px;background:#eef6e9;border-left:4px solid var(--lime);margin:8px 0 12px}
.ag-nights{margin:6px 0 10px;padding-left:20px;line-height:1.7}
.ag-hint{color:var(--muted);font-size:14.5px;margin:6px 0}

/* Anmeldekarte */
.ag-card{position:sticky;top:96px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:var(--shadow)}
.ag-pricebox{padding-bottom:12px;border-bottom:1px solid var(--line);margin-bottom:12px}
.ag-price-label{font-weight:800;color:var(--leaf)}
.ag-price-label small{font-weight:600;color:var(--muted)}
.ag-price-big{font-size:32px;font-weight:900;line-height:1.15;margin:2px 0}
.ag-pricebox small{display:block;color:var(--muted)}
.ag-price-next{margin-top:6px}
.ag-facts{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:6px;font-size:15.5px}
.ag-card-body{margin-top:14px}
.ag-book-btn{width:100%;padding:14px;font-size:18px}
.ag-closed{font-weight:600;color:#7a2b2b;margin:0}
.ag-form{display:grid;gap:10px}
.ag-form h3{margin:0}
.ag-form label{display:flex;flex-direction:column;gap:4px;font-size:14.5px;color:#3c524e}
.ag-form label small{color:var(--muted);font-weight:400}
.ag-form input,.ag-form select,.ag-form textarea{padding:10px 11px;border:1px solid var(--line);border-radius:10px;font:inherit;color:var(--ink);width:100%;box-sizing:border-box}
.ag-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ag-fs{border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:grid;gap:8px;margin:0}
.ag-fs legend{font-weight:800;padding:0 4px}
.ag-check{flex-direction:row !important;align-items:flex-start;gap:9px !important;color:var(--ink) !important;font-size:15.5px !important;cursor:pointer}
.ag-check input{width:auto !important;margin-top:4px;accent-color:var(--leaf)}
.ag-check small{display:block;color:var(--muted)}
.ag-accept{padding:10px;background:#f3f9f1;border-radius:10px}
.ag-form-actions{display:flex;flex-wrap:wrap;gap:8px}
.ag-sumbox{background:#f7faf6;border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.ag-positions{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:15px}
.ag-positions li{display:flex;justify-content:space-between;gap:10px}
.ag-sum{margin:8px 0 0;display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:16px}
.ag-sum small{color:var(--muted)}
.ag-mybooking{border:2px solid #3d9a2e;background:#f1f9ee;border-radius:14px;padding:12px 14px;margin-bottom:10px}
.ag-mybooking.is-cancelled{border-color:#d9a0a0;background:#fbf2f2}
.ag-mybooking-head{font-weight:900;color:#2d7a20;font-size:17px;margin-bottom:4px}
.ag-mybooking.is-cancelled .ag-mybooking-head{color:#a33}
.ag-mybooking p{margin:6px 0}
.ag-mybooking .btn{text-decoration:none}

/* Einrichten (Team) */
.ag-edit-head{display:grid;grid-template-columns:200px 1fr;gap:18px;align-items:center;margin:4px 0 18px}
.ag-edit-head img,.ag-edit-head .ag-tile-ph{width:200px;height:130px;object-fit:cover;border-radius:14px;font-size:14px}
.ag-edit-head h1{margin:2px 0}
.ag-edit-head p{margin:2px 0}
.ag-fs-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:16px;display:grid;gap:12px}
.ag-fs-card h2{margin:0;font-size:21px;display:flex;align-items:center;gap:10px}
.ag-fs-card h2 span{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--leaf);color:#fff;font-size:16px}
.ag-fs-card h2 small{font-weight:500;color:var(--muted);font-size:15px}
.ag-fs-card label{display:flex;flex-direction:column;gap:4px;font-size:14.5px;color:#3c524e}
.ag-fs-card label small{color:var(--muted);font-weight:400}
.ag-fs-card input,.ag-fs-card select,.ag-fs-card textarea{padding:10px 11px;border:1px solid var(--line);border-radius:10px;font:inherit;color:var(--ink);box-sizing:border-box;width:100%}
.ag-switch{flex-direction:row !important;gap:12px !important;align-items:flex-start;padding:12px;border-radius:12px;background:#f3f9f1;cursor:pointer}
.ag-switch input{width:22px !important;height:22px;margin-top:2px;accent-color:var(--leaf)}
.ag-switch b{display:block;color:var(--ink);font-size:16.5px}
.ag-grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ag-radios{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center}
.ag-radios label{flex-direction:row;align-items:center;gap:7px;color:var(--ink);font-size:15.5px}
.ag-radios input{width:auto;accent-color:var(--leaf)}
.ag-rows{display:grid;gap:8px}
.ag-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.2fr) minmax(0,1fr) minmax(0,.8fr) 36px;gap:8px;align-items:end;padding:8px;border-radius:12px;background:#f7faf6}
.ag-row-n{grid-template-columns:minmax(0,2fr) minmax(0,1.2fr) minmax(0,1fr) minmax(0,.8fr) minmax(0,.9fr) 36px}
.ag-x{width:34px;height:34px;border-radius:9px;border:1px solid #e3c7c7;background:#fff;color:#a33;font-weight:900;cursor:pointer}
.ag-secrow{border:1px solid var(--line);border-radius:14px;padding:12px;display:grid;gap:10px;background:#fbfdfa}
.ag-secrow-head{display:flex;justify-content:space-between;align-items:center}
.ag-secrow-head span{display:flex;gap:6px}
.ag-secrow-head button:not(.ag-x){width:34px;height:34px;border-radius:9px;border:1px solid var(--line);background:#fff;cursor:pointer}
.ag-imgs{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ag-imgs figure{position:relative;margin:0}
.ag-imgs img{width:120px;height:84px;object-fit:cover;border-radius:10px;display:block}
.ag-imgs .ag-x{position:absolute;top:4px;right:4px;width:28px;height:28px}
.ag-actionbar{position:sticky;bottom:0;z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:10px;justify-content:flex-end;padding:12px 14px;background:rgba(255,255,255,.95);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
.ag-actionbar .btn{text-decoration:none}
.ag-msg{margin-right:auto;color:#a33;font-weight:600}

/* Teilnehmende */
.ag-people h1{margin:2px 0}
.ag-kpis{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0}
.ag-kpis div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 16px;min-width:120px}
.ag-kpis b{display:block;font-size:24px}
.ag-kpis span{color:var(--muted);font-size:14px}
.ag-tablewrap{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:14px;margin-top:10px}
.ag-table{width:100%;border-collapse:collapse;font-size:15px}
.ag-table th,.ag-table td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.ag-table th{background:#f3f7f1;font-size:14px}
.ag-table small{display:block;color:var(--muted)}
.ag-table tr.is-cancelled td{color:#9aa;text-decoration:line-through}
.ag-table tr.is-cancelled td:last-child{text-decoration:none}

@media (max-width:900px){
  .ag-layout{grid-template-columns:1fr}
  .ag-card{position:static;order:-1}
  .ag-section-grid.has-img{grid-template-columns:1fr}
  .ag-section.is-alt .ag-section-grid.has-img > div:first-child{order:0}
  .ag-grid4{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .ag-filter{padding:12px}
  .ag-filter label,.ag-filter input[type=search]{flex:1 1 100%;min-width:0}
  .ag-filter .btn{flex:1 1 45%}
  .ag-grid2,.ag-grid4{grid-template-columns:1fr}
  .ag-row,.ag-row-n{grid-template-columns:1fr 1fr}
  .ag-row .ag-x{grid-column:2;justify-self:end}
  .ag-edit-head{grid-template-columns:1fr}
  .ag-edit-head img,.ag-edit-head .ag-tile-ph{width:100%;height:160px}
  .ag-head.has-img,.ag-head-img{max-height:300px}
}
.ag-fs-card > .btn,.ag-incl > .btn{justify-self:start}

/* Schritt 5b: Belegung (nur Team) */
.ag-occ{display:grid;gap:6px;margin:10px 0 0;color:var(--ink,#1d2b20);font-size:15px;text-decoration:none}
.ag-occ.is-compact{font-size:14px;margin-top:8px}
.ag-occ-bar{height:8px;border-radius:99px;background:#e5ebe6;overflow:hidden}
.ag-occ-bar i{display:block;height:100%;border-radius:99px;background:#2e7d3a}
.ag-occ.is-few .ag-occ-bar i{background:#d08a12}
.ag-occ.is-full .ag-occ-bar i{background:#b23b2e}
.ag-occ em{font-style:normal;color:#8a5a00}
a.ag-occ:hover span, .ag-occ-link:hover span{text-decoration:underline}
.ag-occ-link{display:block;text-decoration:none;color:inherit;margin:4px 0 10px}
.tm-occ{max-width:420px}
.ag-people-head{display:flex;flex-wrap:wrap;align-items:end;gap:14px 24px;margin:14px 0 4px}
.ag-people-head .ag-occ{flex:1 1 280px;max-width:520px;margin:0;font-size:17px}
.ag-people-head .ag-occ-bar{height:12px}
.ag-people-head .btn{text-decoration:none}
.ag-table td:nth-child(6){white-space:nowrap}

/* Schritt 5c: Anmeldung mit Besteller, mehreren Teilnehmenden und Rechnungsanschrift */
.ag-layout.is-booking{grid-template-columns:minmax(0,1fr) 460px}
.ag-layout.is-booking .ag-card{position:static}
.ag-fs legend small{font-weight:400;color:var(--muted)}
.ag-grid3{display:grid;grid-template-columns:110px 1fr 1fr;gap:10px}
.ag-person{border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:grid;gap:8px;background:#fbfcfa}
.ag-person.is-self{background:#f1f9ee;border-color:#cfe5c8}
.ag-person-head{display:flex;align-items:center;gap:8px}
.ag-person-head small{color:var(--muted)}
.ag-person-head .text-link{margin-left:auto;font-size:14px;color:#a33}
.ag-person-add{display:grid;gap:8px;justify-items:start}
.ag-person-add label{width:100%}
.ag-nights{display:grid;gap:6px;padding-top:4px;border-top:1px dashed var(--line)}
.ag-nights-label{font-weight:700;font-size:14.5px;color:#3c524e}
.ag-sum-person{padding:6px 0;border-bottom:1px solid var(--line)}
.ag-sum-person:last-of-type{border-bottom:0}
.ag-sum-person > b{display:block;font-size:14.5px;margin-bottom:2px}
.ag-people-list{list-style:none;margin:6px 0;padding:0;display:grid;gap:6px}
.ag-people-list li small{display:block;color:var(--muted)}
.ag-people-list li.is-cancelled b{text-decoration:line-through;color:var(--muted)}
@media (max-width:1100px){ .ag-layout.is-booking{grid-template-columns:minmax(0,1fr) 400px} }
@media (max-width:560px){ .ag-grid3{grid-template-columns:1fr 1fr} .ag-grid3 label:first-child{grid-column:1 / -1} }
@media (max-width:900px){ .ag-layout.is-booking{grid-template-columns:1fr} }
.ag-people-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;margin:10px 0}
.ag-people-search input{padding:10px 12px;border:1px solid var(--line);border-radius:10px;font:inherit;min-width:min(340px,100%)}
.ag-table-sewobe tr.is-band td{background:#f7faf6}
.ag-table-sewobe tr.is-first td{border-top:2px solid #dfe8dc}
.ag-table-sewobe .ag-same{color:#b5c2b8}

/* Schritt 5d: Fragen */
.ag-questions{display:grid;gap:8px;padding-top:6px;border-top:1px dashed var(--line)}
.ag-qset{border:0;padding:0;margin:0;display:grid;gap:4px}
.ag-qset legend{font-size:14.5px;color:#3c524e;padding:0;margin-bottom:2px}
.ag-qset legend small{color:var(--muted)}
.ag-qyn{grid-auto-flow:column;justify-content:start;gap:18px}
.ag-qyn legend{grid-column:1 / -1}
.ag-qhelp{color:var(--muted);font-size:13.5px}
.ag-qreq{align-self:end;padding-bottom:10px}
.ag-table small.ag-ans i{font-style:normal;color:#3c524e}

/* Schritt 5e: Team trägt ein, Warteliste */
.ag-teamform{background:#fff;border:2px solid #cfe5c8;border-radius:16px;padding:16px 18px;display:grid;gap:12px;margin:14px 0}
.ag-teamform h2{margin:0;font-size:22px}
.ag-teamform h2 small{font-weight:400;color:var(--muted);font-size:15px}
.ag-teamform label{display:flex;flex-direction:column;gap:4px;font-size:14.5px;color:#3c524e}
.ag-teamform input,.ag-teamform select,.ag-teamform textarea{padding:9px 11px;border:1px solid var(--line);border-radius:10px;font:inherit;color:var(--ink);width:100%;box-sizing:border-box}
.ag-teamform .ag-check{flex-direction:row}
.ag-teamform .ag-check input{width:auto}
.ag-biz-search{display:flex;gap:8px}
.ag-biz-results{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.ag-biz-results button{width:100%;text-align:left;background:#f7faf6;border:1px solid var(--line);border-radius:10px;padding:8px 12px;font:inherit;cursor:pointer}
.ag-biz-results button:hover{border-color:var(--leaf)}
.ag-biz-results small,.ag-biz-chosen small{display:block;color:var(--muted)}
.ag-biz-chosen{background:#f1f9ee;border:1px solid #cfe5c8;border-radius:10px;padding:8px 12px}
.ag-biz-chosen .text-link{margin-top:4px}
.ag-waitlist-box{background:#fff8e8;border:1px solid #f0d9a6;border-radius:16px;padding:12px 16px;margin:14px 0}
.ag-waitlist-box h2{margin:0 0 4px;font-size:20px}
.ag-waitlist-box h2 small{font-weight:400;color:var(--muted);font-size:14px}
.ag-actions-col{display:grid;gap:6px}
.ag-team-mark{color:#8a5a00 !important}
.ag-tile-wait{font-size:14px;color:#8a5a00;font-weight:700}
.ag-waitnote{background:#fff8e8;border:1px solid #f0d9a6;border-radius:10px;padding:8px 10px}
@media (max-width:700px){ .ag-teamform .ag-grid4{grid-template-columns:1fr 1fr} .ag-biz-search{flex-direction:column} }
.ag-missing-detail{display:block;margin-top:6px;font-family:monospace;font-size:12.5px;color:#6b4a00;word-break:break-word}

/* Schritt 5f: Stornierung */
.ag-cancelterms{margin:10px 0 0;border:1px solid var(--line);border-radius:12px;padding:8px 12px;font-size:14.5px}
.ag-cancelterms summary{cursor:pointer;font-weight:700}
.ag-cancelterms ul{margin:6px 0;padding-left:18px}
.ag-cancelterms p{margin:6px 0;color:#3c524e}
.ag-selfcancel{font-size:14px;color:#a33 !important;margin-top:2px}
.ag-cancelask{background:#fbf2f2;border:1px solid #e5b8b8;border-radius:10px;padding:8px 10px;margin-top:6px}
.ag-cancelask p{margin:0 0 6px}
.ag-row.ag-row-c{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr) 36px}
@media (max-width:900px){ .ag-row.ag-row-c{grid-template-columns:1fr 1fr} }

/* Schritt 5g: Zusatzbausteine */
.ag-addons .ag-addon{display:grid;gap:16px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;margin:12px 0}
.ag-addons .ag-addon.has-img{grid-template-columns:minmax(0,260px) minmax(0,1fr)}
.ag-addon-img{display:grid;gap:8px}
.ag-addon-img img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:12px;display:block}
.ag-addon-body h3{margin:0 0 6px}
.ag-addon-body h3 small{font-weight:400;color:var(--muted);font-size:14px}
.ag-addon-opts{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}
.ag-addon-opts li{display:flex;flex-wrap:wrap;gap:4px 12px;justify-content:space-between;align-items:baseline;border-top:1px dashed var(--line);padding-top:6px}
.ag-addon-opts li small{font-weight:400;color:var(--muted)}
.ag-addon-opts em{font-style:normal;color:#8a5a00;font-size:14px;flex-basis:100%;text-align:right}
.ag-addon-pick{display:grid;gap:8px;padding-top:6px;border-top:1px dashed var(--line)}
.ag-row.ag-row-o{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) 36px}
@media (max-width:900px){ .ag-addons .ag-addon.has-img{grid-template-columns:1fr} .ag-row.ag-row-o{grid-template-columns:1fr 1fr} }

/* Schritt 5h: Gutscheine */
.ag-vouchers{background:#fff;border:2px solid #e6d9f2;border-radius:16px;padding:14px 18px;margin:14px 0;display:grid;gap:10px}
.ag-vouchers h2{margin:0;font-size:22px}
.ag-vouchers h2 small{font-weight:400;color:var(--muted);font-size:15px}
.ag-voucherform{border:1px solid var(--line);margin:4px 0 0}
.ag-voucherform h3{margin:0}
.ag-v-used{color:#2d7a20;font-weight:700}
.ag-v-open{color:#8a5a00;font-weight:700}
.ag-voucher{padding-top:6px;border-top:1px dashed var(--line)}
.ag-voucher-row{display:flex;gap:8px}
.ag-voucher-row input{text-transform:uppercase}
.ag-voucher-ok{margin:4px 0 0;color:#2d7a20;font-weight:700;font-size:14.5px}

/* Schritt 5i: Abrechnung */
.ag-billing h1{margin:2px 0}
.ag-bill-info{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 14px;margin:12px 0}
.ag-bill-info p{margin:4px 0}
.ag-bill-coursebar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0}
.ag-bill-cancelled{background:#fbf2f2;border:1px solid #e5b8b8;border-radius:14px;padding:12px 14px;margin:12px 0;display:grid;gap:8px;justify-items:start}
.ag-bill-bulk{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}
.ag-bill{background:#fff;border:1px solid var(--line);border-left:6px solid #c9d6cc;border-radius:14px;padding:12px 16px;margin:12px 0;display:grid;gap:8px}
.ag-bill.is-open{border-left-color:#d08a12}
.ag-bill.is-held{border-left-color:#8a8f96}
.ag-bill.is-released{border-left-color:#2e7d3a}
.ag-bill.is-transferred{border-left-color:#1c5a8a}
.ag-bill.is-void{opacity:.75}
.ag-bill header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;align-items:flex-start}
.ag-bill header small{color:var(--muted);font-weight:400}
.ag-bill-addr{display:block}
.ag-bill-kind{display:inline-block;font-size:12.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:#eef4ec;color:#1c5027;border-radius:6px;padding:2px 7px;margin-right:6px}
.ag-bill.is-credit .ag-bill-kind{background:#f3e9f7;color:#6b2a86}
.ag-bill-status{font-weight:800;font-size:14px;border-radius:999px;padding:4px 12px;background:#eef1ef;white-space:nowrap}
.ag-bill-status.is-open{background:#fff3da;color:#8a5a00}
.ag-bill-status.is-released{background:#e6f4e3;color:#2d7a20}
.ag-bill-status.is-transferred{background:#e3eef8;color:#1c5a8a}
.ag-bill-lines{width:100%;border-collapse:collapse;font-size:15px}
.ag-bill-lines th{text-align:left;font-size:13px;color:var(--muted);border-bottom:1px solid var(--line);padding:4px 6px}
.ag-bill-lines td{padding:6px;border-bottom:1px solid #eef1ef;vertical-align:top}
.ag-bill-lines td:nth-child(2),.ag-bill-lines th:nth-child(2){text-align:right;white-space:nowrap;width:130px}
.ag-bill-lines td:nth-child(3),.ag-bill-lines th:nth-child(3){text-align:right;width:70px}
.ag-bill-lines small{display:block;color:var(--muted)}
.ag-bill-lines tfoot td{border-bottom:0;color:#3c524e;text-align:right}
.ag-bill-lines tfoot td:first-child{text-align:left;font-size:14px}
.ag-bill-lines input,.ag-bill-lines textarea,.ag-bill-note input{width:100%;box-sizing:border-box;padding:7px 9px;border:1px solid var(--line);border-radius:8px;font:inherit}
.ag-bill-lines textarea{margin-top:4px;font-size:14px}
.ag-bill-note{display:grid;gap:4px;font-size:14.5px}
.ag-bill-actions{display:flex;flex-wrap:wrap;gap:8px}
.ag-bill-warn{margin:0;background:#fff8e8;border:1px solid #f0d9a6;border-radius:10px;padding:6px 10px}
.ag-bill-err{margin:0;background:#fbf2f2;border:1px solid #e5b8b8;border-radius:10px;padding:6px 10px;color:#8a2020}
.ag-bill-missing ul{list-style:none;padding:0;display:grid;gap:6px}
.ag-bill-voided{margin:14px 0}
.ag-bill-voided summary{cursor:pointer;font-weight:700}
.ag-topline .ag-team-actions{display:inline-flex;flex-wrap:wrap;gap:6px 14px}

/* Schritt 9a: Einrichtung von einer früheren Veranstaltung übernehmen */
.ag-copybar{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:flex-end;background:#f4f7f3;border:1px dashed var(--line);border-radius:12px;padding:12px 14px;margin:0 0 16px}
.ag-copybar label{display:grid;gap:6px;flex:1 1 320px;min-width:0;font-size:14.5px}
.ag-copybar select{width:100%;max-width:520px}
.ag-copybar small{flex-basis:100%;color:var(--muted);font-size:13.5px}
.ag-price-big.ag-price-text{font-size:22px;line-height:1.25}
.ag-copybar select{padding:8px 10px;font-size:15px}

/* Schritt 11y: Aufteilung eines Preises nach MwSt-Sätzen */
.ag-row > .ag-parts{grid-column:1 / -1;display:grid;gap:6px;padding:8px 10px;border:1px dashed #cfe0bf;border-radius:10px;background:#fff}
.ag-parts > b{font-size:14px}
.ag-parts > small{color:var(--muted);font-size:13px;margin-top:-4px}
.ag-part{display:grid;grid-template-columns:minmax(0,160px) minmax(0,110px) 36px;gap:8px;align-items:end}
.ag-parts > .btn{justify-self:start}
.ag-row input[readonly]{background:#eef3ea;color:#3b4a40}

/* Schritt 12a: einfache oder umfassende Anmeldung */
.ag-setup-choice{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.ag-fs-card label.ag-setup-opt{flex-direction:row;align-items:flex-start;gap:10px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;cursor:pointer;background:#fff}
.ag-fs-card label.ag-setup-opt:has(input:checked){border-color:#1f4d2b;background:#F7FAF1;box-shadow:inset 0 0 0 1px #1f4d2b}
.ag-fs-card .ag-setup-opt input{width:18px;height:18px;flex:0 0 18px;margin:2px 0 0;padding:0;accent-color:#1f4d2b}
.ag-setup-opt span{flex:1}
.ag-setup-opt span{display:grid;gap:3px}
.ag-setup-opt b{font-size:16px;color:#111}
.ag-setup-opt small{color:var(--muted);font-size:14px;line-height:1.4}
.ag-setup-warn{margin:0;padding:10px 12px;border-radius:10px;background:#fff4e5;border:1px solid #f0c48a;color:#7a4b00;font-size:14px}
form:not(.ag-setup-none) .ag-setup-hint{display:none}
.ag-setup-none > .ag-fs-card:not(.ag-setup-card),
.ag-setup-none > .ag-actionbar,
.ag-setup-simple [data-ag-only-full],
.ag-setup-simple:not(.ag-has-price) [data-ag-paid]{display:none}

/* Schritt 12w: Nichtmitglieder (Anmeldung über die Website) */
.ag-guest-box{border-color:#5a8f3c;background:#f4f9ef}
.ag-guest{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:14px;padding:12px 0;border-top:1px solid #dfe8d6}
.ag-guest:first-of-type{border-top:0}
.ag-guest-main small{display:block;color:#4a5563;margin-top:3px}
.ag-guest-tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.03em;padding:2px 7px;border-radius:6px;background:#e3eef9;color:#1f4f99;vertical-align:middle}
.ag-guest-tag.is-warn{background:#fff1c2;color:#7a5a00}
.ag-guest-tag.is-ok{background:#dcf2d3;color:#2f6b1d}
.ag-guest-note{width:100%;font:inherit;font-size:13px;padding:6px 8px;border:1px solid #cfd8c8;border-radius:8px}
@media (max-width:720px){.ag-guest{grid-template-columns:1fr}}
