/* Mobile‑first Styles für bessere Lesbarkeit auf dem Handy
   Systemfonts, keine Google‑Fonts
*/
:root{--primary:#76A82B;--secondary:#F08C00;--bg:#f7f7f7;--text:#222;--muted:#6b7280;--radius:16px}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.45;
  -webkit-text-size-adjust:100%;
}

/* Layout */
.container{max-width:860px;margin:0 auto;padding:16px}
.card{background:#fff;border-radius:var(--radius);box-shadow:0 4px 18px rgba(0,0,0,.06);padding:24px;overflow:hidden}

/* Headings */
h1{margin:0 0 6px;font-size:clamp(1.25rem,2.6vw,1.9rem)}
.subtitle{color:var(--muted);font-size:.95rem;margin-bottom:18px;word-break:break-word}

/* Grid */
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}
.col-12{grid-column:span 12}
.col-8{grid-column:span 8}
.col-6{grid-column:span 6}
.col-4{grid-column:span 4}

/* Responsive */
@media (max-width:900px){
  .container{padding:12px}
  .card{padding:20px}
}
@media (max-width:680px){
  .grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
  .col-8,.col-6,.col-4,.col-12{grid-column:1 / -1}
  .actions button{width:100%}
}

/* Labels & text */
label{display:block;font-weight:600;margin-bottom:6px}
.req{color:var(--secondary);margin-left:4px;font-weight:700}
.muted{color:var(--muted);font-size:.9rem}

/* Inputs */
input,select,textarea{
  width:100%;max-width:100%;min-width:0;
  padding:10px 12px;border:1px solid #d1d5db;border-radius:10px;background:#fff;font:inherit
}
input[type="checkbox"],input[type="radio"]{width:auto;margin-right:8px;vertical-align:middle}
input[type="file"]{padding:8px}

/* Fieldset */
fieldset{border:1px solid #e5e7eb;padding:12px;border-radius:12px}
legend{padding:0 6px;font-weight:700;color:var(--secondary)}

/* Alerts */
.alert{border-radius:12px;padding:12px 14px;margin-bottom:14px}
.alert.ok{background:#ecfdf5;border:1px solid #10b98133}
.alert.error{background:#fff1f2;border:1px solid #ef444433}

/* Actions */
.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
button{
  appearance:none;border:0;border-radius:999px;padding:12px 18px;cursor:pointer;
  background:linear-gradient(180deg,var(--primary),#5b8e1d);color:#fff;font-weight:700;
  box-shadow:0 6px 14px rgba(118,168,43,.25)
}
button:disabled{opacity:.7;cursor:not-allowed}

/* Honeypot */
.hp{display:none}

/* Custom Select Arrow */
.select{position:relative}
.select select{appearance:none;background:#fff}
.select .chev{position:absolute;inset:0 10px 0 auto;width:12px;height:100%;pointer-events:none}
.select .chev::after{
  content:"";position:absolute;top:50%;right:0;transform:translateY(-50%) rotate(45deg);
  width:8px;height:8px;border-right:2px solid #9ca3af;border-bottom:2px solid #9ca3af
}

/* Inline grids inside fieldsets */
.extra{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}
.extra .col-6{grid-column:span 6}
@media (max-width:680px){.extra .col-6{grid-column:1 / -1}}

/* Misc */
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--primary);text-decoration:none}
a:hover{text-decoration:underline}
