:root {
  --glfb-navy:#102a43;
  --glfb-teal:#00a6a6;
  --glfb-lime:#9ad23b;
  --glfb-bg:#f5f8f8;
  --glfb-border:#dfe8ec;
  --glfb-muted:#637687;
  --glfb-red:#d44747;
  --glfb-amber:#db931b;
}

.glfb-app,.glfb-app *,.glfb-dialog,.glfb-dialog * { box-sizing:border-box; }
.glfb-app { width:calc(100vw - 32px); max-width:1900px; margin:24px 0; overflow:hidden; color:#19344a; background:var(--glfb-bg); border:1px solid var(--glfb-border); border-radius:18px; box-shadow:0 14px 45px rgba(16,42,67,.1); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
:where(.entry-content,.wp-block-post-content,.wp-block-group__inner-container):has(> .glfb-app) { max-width:none!important; overflow:visible!important; }
.glfb-admin-host .glfb-app { width:100%; margin:18px 0; }
.glfb-header { display:grid; grid-template-columns:auto minmax(220px,1fr) auto; align-items:center; gap:34px; padding:24px 30px; color:#fff; background:linear-gradient(125deg,var(--glfb-navy),color-mix(in srgb,var(--glfb-navy) 76%,var(--glfb-teal))); }
.glfb-brand { display:flex; align-items:center; gap:12px; padding-right:30px; border-right:1px solid rgba(255,255,255,.2); }
.glfb-brand img,.glfb-brand svg { width:58px; height:44px; padding:5px; object-fit:contain; background:#fff; border-radius:10px; }
.glfb-brand span,.glfb-brand small { display:block; }
.glfb-brand span { color:#fff; font:750 20px/1.1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; }
.glfb-brand small { margin-top:5px; color:#a8f0ea; font-size:10px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.glfb-heading h1 { margin:2px 0; color:#fff; font:500 clamp(30px,4vw,44px)/1.05 Georgia,"Times New Roman",serif; }
.glfb-heading p { margin:4px 0 0; color:#d5e4eb; font-size:12px; }
.glfb-eyebrow { color:#a8f0ea; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.glfb-toolbar { display:flex; align-items:center; gap:16px; padding:18px 24px; background:#fff; border-bottom:1px solid var(--glfb-border); }
.glfb-filters { display:flex; align-items:center; gap:8px; flex:1; margin:0; }
.glfb-filters input,.glfb-filters select,.glfb-form-grid input,.glfb-form-grid select,.glfb-form-grid textarea,.glfb-triage-form input,.glfb-triage-form select,.glfb-triage-form textarea { width:100%; min-height:42px; padding:9px 11px; color:#19344a; background:#fff; border:1px solid #bdcbd3; border-radius:8px; font:inherit; }
.glfb-filters input { max-width:260px; }
.glfb-filters select { width:auto; min-width:150px; }
.glfb-button { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:0 16px; color:#fff!important; text-decoration:none!important; white-space:nowrap; background:var(--glfb-teal); border:1px solid var(--glfb-teal); border-radius:8px; cursor:pointer; font:750 13px/1 Inter,ui-sans-serif,system-ui,sans-serif; }
.glfb-button:hover { color:#fff; filter:brightness(.95); }
.glfb-button-secondary { color:var(--glfb-navy)!important; background:#fff; border-color:var(--glfb-border); }
.glfb-reset { color:var(--glfb-teal); font-size:12px; font-weight:700; }
.glfb-notice { margin:16px 24px 0; padding:12px 15px; background:#eaf7d7; border-left:4px solid var(--glfb-lime); border-radius:6px; }
.glfb-notice-error { background:#feecec; border-color:var(--glfb-red); }
.glfb-notice-warning { background:#fff4d8; border-color:var(--glfb-amber); }
.glfb-board { display:grid; grid-template-columns:repeat(6,minmax(265px,1fr)); gap:12px; padding:20px 24px 28px; overflow-x:auto; align-items:start; }
.glfb-column { min-height:300px; background:#edf2f3; border:1px solid var(--glfb-border); border-radius:12px; }
.glfb-column > header { display:flex; align-items:center; gap:8px; padding:13px 14px; background:#fff; border-bottom:1px solid var(--glfb-border); border-radius:12px 12px 0 0; }
.glfb-column > header h2 { flex:1; margin:0; color:var(--glfb-navy); font-size:13px; }
.glfb-column > header strong { display:grid; place-items:center; width:26px; height:22px; color:#536b7b; background:#edf2f3; border-radius:99px; font-size:11px; }
.glfb-column-dot { width:9px; height:9px; background:#91a1ac; border-radius:50%; }
.glfb-column-review .glfb-column-dot { background:var(--glfb-amber); }
.glfb-column-planned .glfb-column-dot { background:#4f7edb; }
.glfb-column-in_progress .glfb-column-dot { background:var(--glfb-teal); }
.glfb-column-done .glfb-column-dot { background:var(--glfb-lime); }
.glfb-column-rejected .glfb-column-dot { background:var(--glfb-red); }
.glfb-cards { display:grid; gap:9px; padding:10px; }
.glfb-card { min-width:0; padding:13px; background:#fff; border:1px solid var(--glfb-border); border-left:4px solid #91a1ac; border-radius:9px; box-shadow:0 3px 10px rgba(16,42,67,.04); }
.glfb-card.glfb-priority-high { border-left-color:var(--glfb-amber); }
.glfb-card.glfb-priority-critical { border-left-color:var(--glfb-red); }
.glfb-card.glfb-priority-low { border-left-color:#a9bec8; }
.glfb-card-meta,.glfb-card footer { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.glfb-card-meta-actions { display:inline-flex; align-items:center; gap:5px; }
.glfb-drag-handle { display:grid; width:25px; height:25px; padding:0; place-items:center; color:#617987; background:#f0f4f5; border:1px solid #dce6ea; border-radius:6px; cursor:grab; font-size:16px; line-height:1; touch-action:none; }
.glfb-drag-handle:hover { color:var(--glfb-teal); background:#e7f7f6; border-color:#a9dedd; }
.glfb-drag-handle:active { cursor:grabbing; }
.glfb-card.is-dragging { opacity:.35; }
.glfb-card.is-saving { opacity:.68; pointer-events:none; }
.glfb-cards.is-drop-target { outline:2px dashed var(--glfb-teal); outline-offset:-6px; background:#e1f5f3; }
.glfb-cards.is-drop-target::after { display:block; padding:15px; color:#087171; content:"Ticket hier loslaten"; text-align:center; font-size:10px; font-weight:800; }
.glfb-drag-state { margin-left:auto; color:#5f7482; font-size:11px; font-weight:700; }
.glfb-drag-state.is-saved { color:#4d771e; }
.glfb-drag-state.is-error { color:var(--glfb-red); }
.glfb-card code { padding:2px 5px; color:#24506a; background:#edf4f7; border-radius:4px; font-size:10px; }
.glfb-type { padding:3px 6px; color:#37586b; background:#edf2f4; border-radius:99px; font-size:9px; font-weight:800; text-transform:uppercase; }
.glfb-type-bug { color:#9d3030; background:#fee7e7; }
.glfb-type-wish { color:#6150a0; background:#eeeafe; }
.glfb-type-idea { color:#7c5d13; background:#fff2cf; }
.glfb-type-improvement { color:#087171; background:#dff7f5; }
.glfb-card h3 { margin:10px 0 6px; color:var(--glfb-navy); font-size:14px; line-height:1.4; overflow-wrap:anywhere; }
.glfb-description { margin:0; color:#536b7b; font-size:11px; line-height:1.55; }
.glfb-card-tags { display:flex; flex-wrap:wrap; gap:4px; margin-top:10px; }
.glfb-card-tags span { display:inline-flex; align-items:center; gap:5px; padding:3px 6px; max-width:100%; overflow-wrap:anywhere; color:#536b7b; background:#f0f4f5; border-radius:99px; font-size:9px; }
.glfb-card-tags span[style]::before { width:6px; height:6px; content:""; background:var(--glfb-team); border-radius:50%; }
.glfb-card-tags .glfb-priority-tag { margin-left:auto; }
.glfb-card footer { margin-top:11px; padding-top:9px; color:#7b8b95; border-top:1px solid #edf1f3; font-size:9px; }
.glfb-details { margin-top:9px; font-size:11px; }
.glfb-details summary { color:var(--glfb-teal); cursor:pointer; font-weight:750; }
.glfb-details-body { margin-top:8px; padding-top:8px; border-top:1px solid #edf1f3; }
.glfb-details-body > p { white-space:normal; overflow-wrap:anywhere; }
.glfb-details dl { display:grid; grid-template-columns:auto 1fr; gap:4px 8px; }
.glfb-details dt { color:#71838f; font-weight:700; }
.glfb-details dd { margin:0; }
.glfb-empty { padding:38px 10px; color:#8b9aa3; text-align:center; font-size:11px; }
.glfb-dialog { width:min(760px,calc(100vw - 28px)); max-height:90vh; padding:0; overflow:auto; background:#fff; border:0; border-radius:16px; box-shadow:0 28px 80px rgba(16,42,67,.28); }
.glfb-dialog::backdrop { background:rgba(16,42,67,.55); backdrop-filter:blur(2px); }
.glfb-submit-form { margin:0; }
.glfb-form-header { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding:24px 26px 18px; color:#fff; background:linear-gradient(125deg,var(--glfb-navy),color-mix(in srgb,var(--glfb-navy) 76%,var(--glfb-teal))); }
.glfb-form-header h2 { margin:4px 0 0; color:#fff; font-size:24px; }
.glfb-dialog-close { width:36px; height:36px; color:#fff; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.2); border-radius:50%; cursor:pointer; font-size:24px; }
.glfb-form-grid,.glfb-triage-form { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.glfb-form-grid { padding:24px 26px; }
.glfb-form-grid label,.glfb-triage-form label { display:grid; gap:6px; color:#536b7b; font-size:11px; font-weight:750; }
.glfb-full { grid-column:1/-1; }
.glfb-form-actions { display:flex; gap:9px; padding:0 26px 25px; }
.glfb-triage-form { margin-top:12px; padding:12px; background:#f4f8f9; border-radius:8px; }
.glfb-triage-form .glfb-button { align-self:end; }
.glfb-message { max-width:760px; margin:40px auto; padding:45px; text-align:center; background:#fff; border:1px solid var(--glfb-border); border-radius:16px; box-shadow:0 14px 45px rgba(16,42,67,.1); }
.glfb-message h2 { color:var(--glfb-navy); }
.glfb-message p { color:var(--glfb-muted); }
.glfb-full-body { margin:0!important; overflow-x:hidden; background:#f4f8f8; }
.glfb-full-body .glfb-app { width:min(calc(100vw - 24px),1900px); margin:12px auto; }

@media (max-width:900px) {
  .glfb-toolbar,.glfb-filters { align-items:stretch; flex-direction:column; }
  .glfb-filters input,.glfb-filters select { width:100%; max-width:none; }
  .glfb-board { grid-template-columns:repeat(6,minmax(250px,82vw)); }
}
@media (max-width:620px) {
  .glfb-app { width:calc(100vw - 12px); margin:6px 0; border-radius:10px; }
  .glfb-header { grid-template-columns:1fr; gap:16px; padding:20px; }
  .glfb-brand { padding:0 0 15px; border-right:0; border-bottom:1px solid rgba(255,255,255,.2); }
  .glfb-toolbar { padding:14px; }
  .glfb-board { padding:14px; }
  .glfb-notice { margin:14px 14px 0; }
  .glfb-form-grid,.glfb-triage-form { grid-template-columns:1fr; }
  .glfb-full { grid-column:auto; }
  .glfb-form-actions { flex-direction:column; }
}
