:root{--green:#315f3b;--green2:#547a45;--cream:#f7f1e3;--sand:#e8dcc5;--ink:#243326;--muted:#687466;--card:#fffaf0;--line:#ded2b8;--orange:#d98b31;--purple:#7a558f;--blue:#3779a8;--gold:#c8a23a}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:linear-gradient(180deg,#eef4e8,var(--cream));min-height:100vh}.top{position:sticky;top:0;z-index:5;background:rgba(247,241,227,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);padding:14px 18px;display:flex;gap:14px;align-items:center;justify-content:space-between}.brand{display:flex;gap:10px;align-items:center}.logo{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--green),#8aa35d);display:grid;place-items:center;color:white;font-size:23px}.brand b{font-size:20px}.brand span{display:block;color:var(--muted);font-size:13px}.search{display:flex;align-items:center;gap:8px;background:white;border:1px solid var(--line);border-radius:999px;padding:8px 14px;min-width:min(460px,45vw)}input,textarea,select{font:inherit;border:1px solid var(--line);border-radius:12px;padding:10px;background:white;color:var(--ink)}textarea{min-height:90px}.search input{border:0;outline:0;padding:0;width:100%}.layout{display:grid;grid-template-columns:250px 1fr;min-height:calc(100vh - 71px)}nav{border-right:1px solid var(--line);padding:18px;background:rgba(255,250,240,.55)}nav button,.btn{width:100%;display:flex;align-items:center;gap:10px;border:0;border-radius:14px;padding:13px 14px;margin-bottom:8px;background:transparent;color:var(--ink);cursor:pointer;font-weight:650}.btn{justify-content:center;background:var(--green);color:white;margin:0;width:auto}nav button:hover,nav button.active{background:var(--green);color:white}main{padding:24px;max-width:1280px;width:100%;margin:0 auto}h1{margin:0 0 18px;font-size:34px}.cards{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px}.card,.panel,.row{background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:0 8px 22px rgba(52,54,37,.06)}.card{padding:20px}.card small{color:var(--muted);display:block}.card strong{font-size:30px}.grid2{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-top:18px}.panel{padding:18px}.list{display:grid;gap:10px}.row{padding:14px 16px;display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center}.row p{margin:.25rem 0 0;color:var(--muted);font-size:14px}.pill{display:inline-flex;padding:4px 9px;border-radius:999px;background:#edf2e5;margin-right:5px;font-size:12px}.status{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px;cursor:pointer}.found{background:#e3efd9;border-color:#b5c99a}.edit{background:var(--sand);border:0;border-radius:999px;padding:9px 12px;cursor:pointer}.leaflet-map{height:62vh;min-height:420px;border-radius:24px;border:1px solid var(--line);background:radial-gradient(circle at 20% 20%,#c9d9ac,transparent 25%),radial-gradient(circle at 70% 40%,#c6daba,transparent 22%),linear-gradient(135deg,#dfead6,#f6efd9);position:relative;overflow:hidden}.pin{position:absolute;transform:translate(-50%,-50%);width:14px;height:14px;border-radius:50%;border:2px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.25);cursor:pointer}.regulaer{background:var(--green2)}.naturschaetze{background:var(--orange)}.rhoen{background:var(--purple)}.pin.einzel{background:var(--blue)}.pin.got{background:var(--gold)}.legend{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.legend span{display:flex;gap:6px;align-items:center;background:white;border:1px solid var(--line);padding:6px 9px;border-radius:999px}.dot{width:11px;height:11px;border-radius:50%;display:inline-block}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.filters select{min-width:160px}.modalbg{position:fixed;inset:0;background:rgba(20,31,23,.45);z-index:20;display:grid;place-items:center;padding:20px}.modal{width:min(680px,100%);max-height:90vh;overflow:auto;background:var(--card);border-radius:26px;padding:22px;border:1px solid var(--line)}.modalhead{display:flex;align-items:center;justify-content:space-between}.modal form{display:grid;gap:10px}.x{border:0;background:transparent;font-size:28px;cursor:pointer}.hint{color:var(--muted)}@media(max-width:850px){.top{align-items:flex-start;flex-direction:column}.search{min-width:100%;width:100%}.layout{display:block}nav{position:sticky;bottom:0;z-index:10;display:grid;grid-template-columns:repeat(5,1fr);gap:6px;border-right:0;border-top:1px solid var(--line);padding:8px;order:2}nav button{font-size:12px;display:grid;place-items:center;padding:8px;margin:0}.cards{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}.row{grid-template-columns:1fr;}.layout{display:flex;flex-direction:column-reverse}main{padding:16px}h1{font-size:28px}.map{height:55vh;min-height:350px}}

.maptools{display:flex;gap:12px;align-items:center;margin-bottom:8px;flex-wrap:wrap}.btn.small{width:auto;padding:9px 13px;margin:0}.map-marker{border-radius:50%;border:3px solid white;box-shadow:0 2px 9px rgba(0,0,0,.35)}.map-marker.regulaer{background:var(--green2)}.map-marker.naturschaetze{background:var(--orange)}.map-marker.rhoen{background:var(--purple)}.map-marker.einzel{background:var(--blue)}.map-marker.got{background:var(--gold)}.popup-btn{border:0;border-radius:999px;background:var(--green);color:white;padding:7px 10px;margin-top:8px;cursor:pointer}.leaflet-popup-content{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.mini{position:relative;overflow:hidden;background:white;border:1px solid var(--line);border-radius:16px;padding:12px 12px;margin:8px 0}.mini b,.mini span{position:relative;z-index:1;display:block}.mini span{color:var(--muted);font-size:14px}.mini i{position:absolute;left:0;bottom:0;top:0;background:#e3efd9;display:block}.import{cursor:pointer}.import input{display:none}.modal label{display:grid;gap:6px;font-weight:650}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:850px){.leaflet-map{height:56vh;min-height:360px}.twocol{grid-template-columns:1fr}}

/* v3 Feinschliff */
.map-marker{display:grid;place-items:center;font-weight:900;font-size:14px;line-height:1;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.25)}
.map-marker.found-marker{border:3px solid #fff;box-shadow:0 0 0 4px rgba(200,162,58,.28),0 3px 12px rgba(0,0,0,.35);background:linear-gradient(135deg,var(--gold),#e2c762)}
.legend .got{box-shadow:0 0 0 3px rgba(200,162,58,.24)}
.data-panel{margin-bottom:16px}.data-panel h2{margin:0 0 8px;font-size:22px}.data-actions{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:14px;margin-top:16px}.data-card{display:grid;gap:4px;text-align:left;align-content:start;min-height:116px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px;cursor:pointer;color:var(--ink);font:inherit}.data-card:hover{border-color:#b9c79d;box-shadow:0 8px 20px rgba(52,54,37,.08)}.data-card small{color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:11px}.data-card strong{font-size:18px}.data-card span{color:var(--muted);font-size:14px}.data-card.danger{border-color:#e1c1b8}.modal.wide{width:min(980px,100%)}.assign-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-top:8px}.assign-head p{margin:4px 0 0}.assignment-list{display:grid;gap:6px;max-height:330px;overflow:auto;border:1px solid var(--line);border-radius:16px;background:#fff;padding:8px}.checkrow{display:grid!important;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;font-weight:500!important;padding:8px 10px;border-radius:12px}.checkrow:hover{background:#f4f0e6}.checkrow input{width:18px;height:18px}.checkrow small{color:var(--muted);font-size:12px;text-align:right}select option{text-transform:none}
@media(max-width:850px){.data-actions{grid-template-columns:1fr}.checkrow{grid-template-columns:auto 1fr}.checkrow small{grid-column:2;text-align:left}.modal{padding:18px}.assign-head{display:block}.data-card{min-height:auto}}
/* v4: Sonderstempel, Legende, Menü */
:root{--special:#b34d4d}
.map-marker.sonderstempel{background:var(--special)}
.legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin:12px 0 4px}.legend span{border-radius:16px;padding:8px 10px;justify-content:flex-start}.legend-marker{width:18px;height:18px;border-radius:50%;display:inline-grid;place-items:center;color:#fff;font-size:12px;font-weight:900;border:2px solid #fff;box-shadow:0 1px 6px rgba(0,0,0,.22)}.legend-marker.regulaer{background:var(--green2)}.legend-marker.einzel{background:var(--blue)}.legend-marker.naturschaetze{background:var(--orange)}.legend-marker.rhoen{background:var(--purple)}.legend-marker.sonderstempel{background:var(--special)}.legend-marker.got{background:linear-gradient(135deg,var(--gold),#e2c762);box-shadow:0 0 0 3px rgba(200,162,58,.22),0 1px 6px rgba(0,0,0,.22)}.linkpill{border:0;cursor:pointer;color:var(--ink);font:inherit}.linkpill:hover{background:#dfead6}.leaflet-map{margin-bottom:0}.data-panel p{line-height:1.55}.modal select[name="tour_id"]{width:100%}nav{padding-bottom:18px}@media(max-width:850px){nav{grid-template-columns:repeat(6,1fr)}nav button{font-size:11px;gap:3px}.legend{grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,1fr)}}

/* v5: Kartenlegende exakt wie Kartenmarker, ohne störende Zeilenumbrüche */
.map-legend{
  margin:12px 0 6px;
  background:rgba(255,250,240,.88);
  border:1px solid var(--line);
  border-radius:18px;
  padding:10px 12px;
}
.legend-title{
  font-weight:750;
  margin-bottom:8px;
  color:var(--ink);
}
.legend-items{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.legend-items span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  white-space:nowrap;
  background:white;
  border:1px solid var(--line);
  border-radius:999px;
  padding:7px 10px;
  font-size:14px;
  line-height:1;
}
.legend-icon.map-marker{
  width:22px;
  height:22px;
  min-width:22px;
  min-height:22px;
  display:inline-grid;
  place-items:center;
  font-style:normal;
  font-size:13px;
  line-height:1;
}
.legend-icon.map-marker.found-marker{
  width:28px;
  height:28px;
  min-width:28px;
  min-height:28px;
}
@media(max-width:850px){
  .map-legend{padding:10px;margin-top:10px;overflow:hidden}
  .legend-items{
    flex-wrap:nowrap;
    overflow-x:auto;
    padding-bottom:4px;
    scrollbar-width:thin;
    -webkit-overflow-scrolling:touch;
  }
  .legend-items span{font-size:13px;padding:7px 9px;flex:0 0 auto}
  .legend-title{font-size:14px;margin-bottom:7px}
}

/* v6: Bearbeiten-Dialog immer über der Leaflet-Karte anzeigen */
.leaflet-container{z-index:1;}
.leaflet-pane{z-index:auto;}
.leaflet-top,.leaflet-bottom{z-index:2;}
.modalbg{z-index:9999 !important;}
.modal{position:relative;z-index:10000 !important;}

/* v7: Hauptmenü-Piktogramme */
nav button{
  min-height:48px;
  gap:12px;
  transition:background .16s ease,color .16s ease,transform .16s ease;
}
nav button:hover{transform:translateX(2px)}
.nav-ico{
  flex:0 0 34px;
  width:34px;
  height:34px;
  border-radius:13px;
  display:inline-grid;
  place-items:center;
  background:#fff;
  color:var(--green);
  border:1px solid rgba(49,95,59,.16);
  box-shadow:0 3px 10px rgba(52,54,37,.06);
}
.nav-ico svg{
  width:20px;
  height:20px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.nav-ico-special{color:var(--special)}
.nav-ico-stamps{color:var(--blue)}
.nav-ico-map{color:var(--green2)}
.nav-ico-tours{color:#7b6934}
.nav-ico-manage{color:var(--muted)}
nav button.active .nav-ico,nav button:hover .nav-ico{
  background:rgba(255,255,255,.18);
  color:#fff;
  border-color:rgba(255,255,255,.28);
  box-shadow:none;
}
.nav-label{line-height:1.1;white-space:nowrap}
@media(max-width:850px){
  nav{align-items:stretch}
  nav button{
    min-height:58px;
    gap:4px;
    justify-content:center;
    border-radius:16px;
  }
  nav button:hover{transform:none}
  .nav-ico{
    width:30px;
    height:30px;
    flex-basis:30px;
    border-radius:12px;
  }
  .nav-ico svg{width:18px;height:18px}
  .nav-label{font-size:10.5px;max-width:100%;overflow:hidden;text-overflow:ellipsis}
}

/* v8: Leaflet-Klickbarkeit wiederherstellen, Dialog bleibt darüber */
.leaflet-map,
.leaflet-container{
  position:relative;
  z-index:1;
}
.leaflet-pane{z-index:400;}
.leaflet-tile-pane{z-index:200;}
.leaflet-overlay-pane{z-index:400;}
.leaflet-shadow-pane{z-index:500;}
.leaflet-marker-pane{z-index:600;}
.leaflet-tooltip-pane{z-index:650;}
.leaflet-popup-pane{z-index:700;}
.leaflet-control-container,
.leaflet-top,
.leaflet-bottom{z-index:800;}
.leaflet-marker-icon,
.leaflet-interactive,
.leaflet-popup-content button{
  pointer-events:auto;
}
.modalbg{z-index:10000 !important;}
.modal{position:relative;z-index:10001 !important;}

/* v10: Professionelles Redesign, Abzeichen und bessere Bedienbarkeit */
:root{
  --radius-lg:28px;
  --radius-md:20px;
  --shadow-soft:0 18px 48px rgba(36,51,38,.10);
  --shadow-card:0 10px 28px rgba(36,51,38,.075);
}
body{font-size:16px;line-height:1.5;background:radial-gradient(circle at 14% 4%,rgba(200,162,58,.18),transparent 28%),linear-gradient(180deg,#eef4e8 0%,#f7f1e3 45%,#f8f3e8 100%)}
.top{padding:18px 24px;box-shadow:0 6px 24px rgba(49,95,59,.06)}
.brand{gap:14px}.logo{width:56px;height:56px;border-radius:18px;background:transparent;box-shadow:var(--shadow-card);overflow:hidden}.logo svg{width:100%;height:100%;display:block}.brand b{font-size:24px;letter-spacing:-.03em}.brand span{font-size:14px}.search{height:48px;border-radius:18px;box-shadow:0 8px 24px rgba(36,51,38,.05)}
.layout{grid-template-columns:270px 1fr;min-height:calc(100vh - 93px)}
nav{padding:22px 18px;background:rgba(255,250,240,.72);backdrop-filter:blur(12px)}
nav button,.btn,.status,.edit,.popup-btn{min-height:44px;border-radius:16px;font-size:15px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.btn,.edit,.status{font-weight:750}.btn:hover,.edit:hover,.status:hover,nav button:hover{transform:translateY(-1px)}
.btn{box-shadow:0 10px 22px rgba(49,95,59,.16);padding:12px 18px}.btn.secondary{background:#e7eddc;color:var(--ink);box-shadow:none}.btn.ghost{background:#fff;color:var(--green);border:1px solid rgba(49,95,59,.22);box-shadow:none;white-space:nowrap}
main{padding:34px;max-width:1360px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:22px}h1{font-size:clamp(34px,4.4vw,52px);letter-spacing:-.05em;line-height:1.02;margin:0 0 8px}h2{font-size:clamp(22px,2.2vw,30px);letter-spacing:-.035em;margin:0 0 14px}.hint{font-size:15px;line-height:1.65}.cards{gap:18px}.card,.panel,.row,.data-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:rgba(255,250,240,.92)}.card{padding:24px;min-height:140px;display:flex;flex-direction:column;justify-content:space-between}.card small{font-size:12px;text-transform:uppercase;letter-spacing:.075em;font-weight:800}.card strong{font-size:clamp(34px,4vw,48px);letter-spacing:-.05em;line-height:1}.card span{color:var(--muted);font-size:14px}.cards-strong .card:first-child{background:linear-gradient(135deg,#315f3b,#608449);color:#fff}.cards-strong .card:first-child small,.cards-strong .card:first-child span{color:rgba(255,255,255,.82)}.panel{padding:24px}.grid2{gap:20px;margin-top:22px}.row{padding:18px 20px;grid-template-columns:minmax(0,1fr) auto auto;gap:14px}.row b{font-size:17px}.row p{font-size:14px}.pill{padding:6px 10px;font-weight:700;background:#eef3e6}.filters{margin-bottom:18px}.filters select,input,textarea,select{min-height:44px;border-radius:16px}.leaflet-map{border-radius:32px;box-shadow:var(--shadow-soft);min-height:520px}.maptools{margin:8px 0 16px}.map-legend{border-radius:24px;background:rgba(255,250,240,.92);box-shadow:var(--shadow-card);padding:14px 16px;margin:14px 0}.legend-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--muted);margin-bottom:10px}.legend-items{gap:10px}.legend-items span{font-size:14px;font-weight:750;background:white;border-radius:999px;padding:8px 12px;box-shadow:0 2px 10px rgba(36,51,38,.05)}
.mini{border-radius:20px;padding:16px 18px;margin:10px 0}.mini b{font-size:16px}.mini span{font-size:14px}.quick-actions{display:flex;gap:12px;flex-wrap:wrap}.quick-panel{display:flex;flex-direction:column;justify-content:space-between}
.badge-hero{margin:22px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,#fffaf0 0%,#f4ecd7 55%,#e9f0dd 100%);border-color:#d8c99f}.badge-hero small{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:900;font-size:12px}.badge-hero h2{margin:4px 0 6px;font-size:clamp(24px,3vw,36px)}.badge-hero p{margin:0 0 12px;color:var(--muted)}.progress{height:12px;background:#e3dcc9;border-radius:999px;overflow:hidden;box-shadow:inset 0 1px 4px rgba(0,0,0,.08)}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--gold));border-radius:999px}.badge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.badge-item{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:16px;position:relative;min-height:82px}.badge-item span{font-size:30px;width:44px;height:44px;display:grid;place-items:center;border-radius:16px;background:#f1ead9}.badge-item b{display:block;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge-item small{display:block;color:var(--muted);font-weight:700}.badge-item em{position:absolute;right:14px;top:14px;width:28px;height:28px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-style:normal;font-weight:900}.badge-item.done{border-color:#bdd0a5;background:linear-gradient(135deg,#fff,#edf5e6)}.next-goal{margin-top:18px}.next-goal p{font-size:18px}
.modal{border-radius:32px;padding:28px;box-shadow:0 28px 80px rgba(20,31,23,.28)}.modalhead{margin-bottom:18px}.modalhead h2{margin:0}.modal form{gap:14px}.modal label{font-size:14px}.modal.wide{width:min(1080px,96vw)}.assign-head{align-items:center;background:#f6f1e7;border:1px solid var(--line);border-radius:22px;padding:16px}.assign-head b{font-size:18px}.count-pill{white-space:nowrap}.selected-stamps{display:flex;gap:10px;overflow-x:auto;padding:6px 2px 12px;scrollbar-width:thin}.stamp-chip{flex:0 0 auto;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #d8ceb6;border-radius:999px;padding:8px 12px;box-shadow:0 4px 12px rgba(36,51,38,.06);max-width:280px}.stamp-chip b{background:var(--green);color:#fff;border-radius:999px;padding:3px 8px;font-size:12px;line-height:1}.stamp-chip em{font-style:normal;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assignment-list{border-radius:24px;padding:10px;gap:8px;max-height:380px}.checkrow{grid-template-columns:auto minmax(0,1fr) minmax(160px,auto);gap:12px;padding:11px 12px;border-radius:16px}.checkrow span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.checkrow small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.data-actions{gap:18px}.data-card{padding:20px;min-height:132px}.data-card strong{font-size:20px}.data-card span{font-size:15px}
@media(max-width:1050px){.layout{grid-template-columns:230px 1fr}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}main{padding:26px}.leaflet-map{min-height:440px}.checkrow{grid-template-columns:auto minmax(0,1fr)}.checkrow small{grid-column:2}}
@media(max-width:850px){.top{padding:14px 16px}.brand b{font-size:21px}.brand span{font-size:12.5px}.logo{width:48px;height:48px}.layout{min-height:0}.layout{display:flex;flex-direction:column-reverse}main{padding:20px 16px 104px}h1{font-size:34px}.page-head{display:block}.cards{grid-template-columns:1fr 1fr;gap:12px}.card{min-height:118px;padding:18px}.card strong{font-size:36px}.panel{padding:18px;border-radius:24px}.badge-hero{display:block}.badge-hero .btn{margin-top:16px;width:100%}.grid2{grid-template-columns:1fr}.row{grid-template-columns:1fr;gap:12px;padding:16px}.row .status,.row .edit{width:100%;justify-content:center}.leaflet-map{min-height:390px;border-radius:24px}.map-legend{overflow:hidden}.legend-items{display:flex;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.legend-items span{white-space:nowrap;flex:0 0 auto}nav{grid-template-columns:repeat(7,1fr);padding:8px;gap:5px;background:rgba(255,250,240,.96)}nav button{min-height:62px;border-radius:16px;padding:7px 4px}.nav-ico{width:30px;height:30px}.nav-label{font-size:10px}.modalbg{padding:10px;align-items:end}.modal{max-height:92vh;border-radius:28px 28px 0 0;padding:20px}.selected-stamps{margin-left:-2px;margin-right:-2px}.stamp-chip{max-width:230px}.assignment-list{max-height:44vh}.checkrow{grid-template-columns:auto minmax(0,1fr);padding:12px 10px}.checkrow small{grid-column:2;font-size:11px}.quick-actions .btn{width:100%}}
@media(max-width:420px){.cards{grid-template-columns:1fr}.brand span{display:none}.search{height:44px}.nav-label{font-size:9px}.nav-ico{width:28px;height:28px}.nav-ico svg{width:17px;height:17px}}

/* v11: kompaktere Tour-Bearbeitung und originale Abzeichenbilder */
.assignment-list.v11-compact,
.assignment-list{gap:4px !important;max-height:420px !important;padding:6px !important;}
.checkrow{min-height:42px !important;padding:6px 10px !important;border-radius:12px !important;grid-template-columns:28px minmax(0,1fr) minmax(170px,auto) !important;gap:8px !important;align-items:center !important;line-height:1.15 !important;}
.checkrow input{width:18px !important;height:18px !important;margin:0 !important;}
.checkrow span{font-size:14px !important;font-weight:750 !important;line-height:1.2 !important;}
.checkrow small{font-size:12px !important;line-height:1.2 !important;color:var(--muted);}
.assign-head{padding:12px 14px !important;border-radius:18px !important;margin-top:4px !important;}
.assign-head b{font-size:16px !important;}
.assign-head .hint{font-size:13px !important;line-height:1.35 !important;margin:2px 0 0 !important;}
.selected-stamps{padding:3px 2px 8px !important;gap:8px !important;}
.stamp-chip{padding:6px 10px !important;border-radius:999px !important;max-width:240px !important;}
.stamp-chip em{font-size:13px !important;}
.stamp-chip b{font-size:11px !important;padding:2px 7px !important;}
.modal.wide{width:min(1050px,96vw) !important;}
.modal form{gap:10px !important;}
.modal label{gap:5px !important;}

.badge-hero-v11{display:grid !important;grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:20px;}
.badge-img{display:block;object-fit:contain;filter:drop-shadow(0 8px 16px rgba(36,51,38,.16));}
.badge-current-img{width:140px;height:140px;}
.badge-thumb{width:78px;height:78px;flex:0 0 78px;background:transparent !important;border-radius:0 !important;}
.badge-hero-copy{min-width:0;}
.badge-item-v11{min-height:116px;align-items:center;gap:14px;padding:14px 16px;}
.badge-item-v11 span{display:none;}
.badge-item-v11 b{white-space:normal;line-height:1.15;}
.badge-grid-v11{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));}
.next-goal b{white-space:nowrap;}

@media(max-width:850px){
  .checkrow{grid-template-columns:26px minmax(0,1fr) !important;min-height:46px !important;padding:7px 8px !important;}
  .checkrow small{grid-column:2 !important;text-align:left !important;font-size:11px !important;white-space:nowrap !important;}
  .checkrow span{font-size:13.5px !important;}
  .assignment-list{max-height:45vh !important;}
  .badge-hero-v11{display:block !important;text-align:center;}
  .badge-current-img{width:132px;height:132px;margin:0 auto 10px;}
  .badge-hero-copy{text-align:left;}
  .badge-hero-v11 .btn{width:100%;margin-top:14px;}
  .badge-grid-v11{grid-template-columns:1fr;}
  .badge-item-v11{min-height:100px;padding:12px;}
  .badge-thumb{width:70px;height:70px;flex-basis:70px;}
}

/* Cloud-Sync-Erweiterung */
.cloud-panel { border: 1px solid rgba(49,95,59,.18); }
.cloud-login { display: grid; gap: 14px; max-width: 680px; }
.cloud-login label { font-weight: 700; color: #27452e; }
.cloud-login input { margin-top: 6px; min-height: 46px; width: 100%; box-sizing: border-box; border: 1px solid rgba(49,95,59,.22); border-radius: 14px; padding: 0 14px; font: inherit; background: #fff; }
.cloud-status { display: inline-flex; align-items: center; gap: 12px; border: 1px solid rgba(49,95,59,.18); border-radius: 18px; background: rgba(49,95,59,.07); padding: 12px 16px; margin: 10px 0 18px; }
.cloud-status b { display:block; color:#27452e; }
.cloud-status small { color:#66766a; }
.cloud-dot { width: 14px; height: 14px; border-radius: 50%; background: #2e7d32; box-shadow: 0 0 0 6px rgba(46,125,50,.12); }
.cloud-actions { margin-top: 8px; }
.hint.small { font-size: .9rem; }
@media (max-width: 760px) {
  .cloud-login .quick-actions { display: grid; grid-template-columns: 1fr; }
  .cloud-status { width: 100%; box-sizing: border-box; }
}

.save-toast{position:fixed;right:22px;bottom:22px;background:#234b34;color:#fff;padding:12px 16px;border-radius:999px;box-shadow:0 10px 30px rgba(0,0,0,.22);z-index:200000;font-weight:800}
@media(max-width:640px){.save-toast{left:16px;right:16px;text-align:center}}

/* v18 Online-only Login */
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 20% 10%,rgba(200,162,58,.18),transparent 30%),linear-gradient(135deg,#f6f1e7,#e8efe6)}
.auth-card{width:min(520px,100%);background:rgba(255,255,255,.92);border:1px solid rgba(49,95,59,.12);border-radius:28px;padding:34px;box-shadow:0 24px 70px rgba(25,45,30,.18);text-align:left}
.auth-logo{width:78px;height:78px;margin-bottom:18px}.auth-logo svg{width:100%;height:100%;display:block}.auth-card h1{font-size:clamp(2rem,5vw,3.1rem);line-height:1;margin:0 0 10px;color:#23452c}.auth-card p{font-size:1.05rem;line-height:1.55;color:#587061;margin:0 0 22px}.auth-login{display:grid;gap:14px}.auth-login label{font-weight:700;color:#264a30}.auth-login input{margin-top:7px;width:100%;box-sizing:border-box;border:1px solid rgba(49,95,59,.22);border-radius:14px;padding:14px 15px;font-size:1rem;background:#fff}.auth-login .quick-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}.auth-login .quick-actions .btn{min-height:46px}.save-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:999999;background:#23452c;color:#fff;padding:12px 18px;border-radius:999px;box-shadow:0 12px 30px rgba(0,0,0,.22);font-weight:700}
@media (max-width:640px){.auth-shell{padding:16px;place-items:stretch}.auth-card{align-self:center;padding:24px;border-radius:22px}.auth-login .quick-actions{display:grid}.auth-login .quick-actions .btn{width:100%}}

/* v19: Hinzufügen/Löschen */
.modal-actions{display:flex;gap:12px;align-items:center;justify-content:flex-start;flex-wrap:wrap;margin-top:10px}
.btn.danger,.danger-mini{background:#b43b2f!important;color:white!important;border-color:#b43b2f!important}
.danger-mini{font-size:.86rem;padding:.5rem .75rem;border-radius:999px}
.row .danger-mini{margin-left:4px}
@media(max-width:720px){.modal-actions{flex-direction:column;align-items:stretch}.row .danger-mini,.row .edit,.row .status{width:100%;margin-top:6px}.page-head{gap:12px}}
