/* Gemeinsame Bausteine – Werte 1:1 aus dem Prototyp (Main/Eingabe.dc.html) */
.g-page{min-height:100vh;background:var(--g-bg);color:var(--g-ink);font-family:var(--g-font);font-size:14px}
.g-header{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;padding:14px 24px;background:#FFFFFF;border-bottom:1px solid var(--g-border)}
.g-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}
.g-brand b{font-weight:600;font-size:17px;letter-spacing:-0.02em;line-height:1.1;display:block}
.g-brand small{font-size:12px;color:var(--g-muted)}
.g-seg{display:flex;gap:4px;background:var(--g-surface-sunk);padding:4px;border-radius:8px;flex-wrap:wrap}
.g-seg a{padding:7px 14px;border-radius:6px;color:var(--g-ink-2);text-decoration:none;font-weight:500}
.g-seg a[aria-current=page]{background:#FFFFFF;color:var(--g-ink);box-shadow:0 1px 2px rgba(0,0,0,0.08)}
.g-sub{display:flex;flex-wrap:wrap;gap:4px;padding:14px 24px 0}
.g-sub a{padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;color:var(--g-ink-2);text-decoration:none}
.g-sub a[aria-current=page]{background:#E9E9E4;color:var(--g-ink)}
.g-main{padding:16px 24px 32px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}
@media (max-width:960px){.g-main{grid-template-columns:minmax(0,1fr)}}
.g-card{background:#FFFFFF;border:1px solid var(--g-border);border-radius:12px;padding:18px 20px;display:flex;flex-direction:column;gap:14px;min-width:0}
.g-card h2{margin:0;font-size:16px;font-weight:600}
.g-card .hint{font-size:13px;color:var(--g-muted)}
.g-field{display:flex;flex-direction:column;gap:6px}
.g-field label,.g-label{font-size:13px;font-weight:500}
.g-input{padding:11px 12px;border-radius:8px;border:1px solid var(--g-border-input);font-size:14px;color:var(--g-ink);background:#FFFFFF;min-width:0;box-sizing:border-box;width:100%}
textarea.g-input{font-family:var(--g-mono);font-size:12.5px;min-height:180px}
.g-row{display:flex;gap:10px;flex-wrap:wrap}.g-row>*{flex:1 1 120px}
.g-check{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;border:1px solid #E4E4DD;cursor:pointer;font-size:13px}
.g-check input{width:18px;height:18px;accent-color:var(--g-accent);flex:0 0 auto}
.g-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px;max-height:260px;overflow:auto}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 14px;border-radius:8px;border:1px solid var(--g-border-input);background:#FFFFFF;color:var(--g-ink);font-size:13px;font-weight:500;cursor:pointer;text-decoration:none}
.btn-primary{border-color:var(--g-accent);background:var(--g-accent);color:#FFFFFF}
.btn-primary:hover{color:#FFFFFF}
.btn-danger{border-color:#E3A49D;color:var(--g-danger-ink)}
.btn-sm{padding:6px 10px;border-radius:7px;font-size:12px}
.g-actions{display:flex;gap:8px;flex-wrap:wrap}
.g-tbl-wrap{overflow:auto}
.g-tbl{width:100%;border-collapse:collapse;font-size:13px}
.g-tbl th{text-align:left;font-weight:500;color:var(--g-muted);font-size:12px;padding:8px 10px;border-bottom:1px solid var(--g-border);white-space:nowrap}
.g-tbl td{padding:8px 10px;border-bottom:1px solid var(--g-border-soft);vertical-align:top}
.g-tbl tr.sel td{background:var(--g-accent-bg)}
.g-tbl tr.off td{color:var(--g-muted)}
.g-tbl a{text-decoration:none;font-weight:500}
.g-jg td{background:#FAFAF7;font-weight:600;font-size:12px;color:var(--g-ink-2)}
.mono{font-family:var(--g-mono)}
.pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11.5px;font-weight:500;background:var(--g-surface-sunk);color:var(--g-ink-2);margin:1px 2px 1px 0}
.pill-warn{background:var(--g-warn-bg);color:var(--g-warn)}
.pill-ok{background:var(--g-success-bg);color:var(--g-success)}
.pill-acc{background:var(--g-accent-bg);color:var(--g-accent-ink)}
.g-msg{margin:14px 24px 0;font-size:13px;background:#FFFFFF;border:1px solid var(--g-border);padding:9px 12px;border-radius:8px}
.g-msg.ok{background:var(--g-success-bg);border-color:#B9DDBF;color:var(--g-success)}
.g-msg.err{background:var(--g-danger-bg);border-color:#E3A49D;color:var(--g-danger-ink)}
.g-hatch{background:var(--g-hatch)}
.g-filter{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
