.gf-sec-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr) minmax(280px,1fr);gap:var(--gf-space-3)}
.gf-sec-card{border:1px solid var(--gf-state-planned-border);background:var(--gf-surface-raised);border-radius:var(--gf-radius);padding:var(--gf-space-3);min-width:0}
.gf-sec-card h3{font-size:13px;font-weight:700;color:var(--gf-text);margin:0 0 var(--gf-space-3)}
.gf-sec-muted,.gf-sec-sub,.gf-sec-rule span,.gf-sec-empty{color:var(--gf-text-muted);font-size:13px}
.gf-sec-list{display:grid;gap:var(--gf-space-3)}
.gf-sec-cluster,.gf-sec-rule{border:1px solid var(--gf-state-planned-border);border-radius:var(--gf-radius);padding:var(--gf-space-3);background:var(--gf-surface)}
.gf-sec-cluster-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--gf-space-3)}
.gf-sec-title,.gf-sec-rule strong{color:var(--gf-text);font-weight:700;line-height:1.3}
.gf-sec-sub{margin-top:var(--gf-space-1);line-height:1.4}
.gf-sec-badge{display:inline-flex;align-items:center;gap:var(--gf-space-1);border-radius:var(--gf-radius-sm);padding:3px 8px;font-size:11px;font-weight:700;border:1px solid transparent;white-space:nowrap}
.gf-sec-badge-danger{background:var(--gf-state-risk-bg);border-color:var(--gf-state-risk-border);color:var(--gf-state-risk-fg)}
.gf-sec-badge-warning{background:var(--gf-state-attention-bg);border-color:var(--gf-state-attention-border);color:var(--gf-state-attention-fg)}
.gf-sec-badge-info{background:var(--gf-state-open-bg);border-color:var(--gf-state-open-border);color:var(--gf-state-open-fg)}
.gf-sec-badge-ok{background:var(--gf-state-paid-bg);border-color:var(--gf-state-paid-border);color:var(--gf-state-paid-fg)}
.gf-sec-paths{display:flex;flex-wrap:wrap;gap:var(--gf-space-1);margin-top:var(--gf-space-2)}
.gf-sec-path{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--gf-state-planned-border);border-radius:var(--gf-radius-sm);padding:3px 8px;color:var(--gf-text);font-size:11px;background:var(--gf-surface-raised)}
.gf-sec-actions{display:flex;justify-content:flex-end;margin-top:var(--gf-space-2)}
.gf-sec-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--gf-space-1);border-radius:var(--gf-radius);background:#b91c1c;color:#fff;padding:8px 13px;font-size:12px;font-weight:700;border:0;cursor:pointer}
.gf-sec-btn:hover{background:#991b1b}
.gf-sec-btn:disabled{background:var(--gf-disabled-bg);color:var(--gf-disabled-text);cursor:not-allowed}
.gf-sec-country{display:grid;grid-template-columns:34px 1fr auto;gap:var(--gf-space-2);align-items:center}
.gf-sec-flag,.gf-sec-flag-fallback{width:34px;height:23px;border-radius:var(--gf-radius-sm);border:1px solid var(--gf-state-planned-border);background:var(--gf-surface)}
.gf-sec-flag{object-fit:cover}
.gf-sec-flag-fallback{display:inline-flex;align-items:center;justify-content:center;color:var(--gf-text);font-size:11px;font-weight:800}
.gf-sec-bar{height:8px;border-radius:var(--gf-radius-sm);background:var(--gf-state-planned-bg);overflow:hidden;margin-top:var(--gf-space-1)}
.gf-sec-bar span{display:block;height:100%;background:var(--gf-state-open-fg);border-radius:var(--gf-radius-sm)}
.gf-sec-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gf-space-2)}
.gf-sec-rule strong{display:block;font-size:13px;margin-top:var(--gf-space-1)}
.gf-sec-empty{display:flex;align-items:center;gap:var(--gf-space-2);border:1px dashed var(--gf-state-planned-border);border-radius:var(--gf-radius);padding:var(--gf-space-3)}
@media(max-width:1100px){.gf-sec-grid{grid-template-columns:1fr}}
@media(max-width:640px){.gf-sec-rule-grid{grid-template-columns:1fr}.gf-sec-cluster-top{display:grid}.gf-sec-actions{justify-content:flex-start}}
