.gf-modal { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-4); }
.gf-modal-close { background: none; color: var(--text-muted); cursor: pointer; }
@media print {
.einstufung-ausw-druck .gf-modal-close { display: none !important; }
}
.gf-modal[open] {
    display: flex; flex-direction: column;
}
.gf-modal {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0;
    max-width: min(92vw, 36rem);
    max-height: min(85dvh, 40rem);
    padding: clamp(1rem, 3vw, 1.75rem);
    color: var(--text);
    box-shadow: var(--schatten-3);
}
.gf-modal::backdrop { 
    background: var(--schleier-2);
}
.gf-modal-close {
    flex: 0 0 auto;
    border: none;
    font-size: var(--schrift-5);
    line-height: var(--zeile-1);
    padding: var(--abstand-1) var(--abstand-2);
}
.gf-modal-close:hover { color: var(--text); }
@media print {
.gf-modal.einstufung-ausw-druck { position: absolute; inset: 0 auto auto 0; margin: 0; transform: none; width: 100%; max-width: none; height: auto; max-height: none; overflow: visible; border: none; border-radius: 0; box-shadow: none; padding: 0; background: var(--papier); color: var(--tinte); display: block; }
}
@media print {
.einstufung-ausw-druck .gf-modal-body { overflow: visible; max-height: none; color: var(--tinte); }
}
