/* praktikum.css - Ergänzung zu style.css für den Praktikumsvertrag */

/* ---------- Formular ---------- */

input[type="email"],
input[type="date"] {
    width: 100%;
    padding: 0.5rem 0.6rem;
    border: 1px solid var(--farbe-rand);
    border-radius: 6px;
    font-size: 1rem;
    background: #fff;
    font-family: inherit;
}

.pk-zwei-spalten {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 1rem;
}

.pk-honig {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.pk-erfolg {
    background: #e3f6e8;
    border: 1px solid #1e7a3a;
    color: #14532d;
    border-radius: 8px;
    padding: 0.75rem 1rem;
    margin-bottom: 1.5rem;
}

.pk-knopf-link {
    display: inline-block;
    background: #fff;
    color: var(--farbe-primary);
    border: 1px solid var(--farbe-primary);
    padding: 0.55rem 1rem;
    border-radius: 6px;
    text-decoration: none;
    font-size: 0.95rem;
    margin-left: 0.5rem;
}

.pk-knopf-link:hover { background: #f0f6fb; }

.pk-tabelle-scroll { overflow-x: auto; }

/* ---------- Druckansicht (Layout wie das bisherige Papierformular) ---------- */

.pk-dokument { font-size: 0.95rem; }

.pk-seite {
    border: 1px solid var(--farbe-rand);
    border-radius: 6px;
    padding: 1.5rem 1.75rem;
    margin: 1rem 0 1.5rem;
    display: flex;
    flex-direction: column;
    background: #fff;
}

.pk-kopf {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 1rem;
    border-bottom: 1px solid #000;
    padding-bottom: 0.3rem;
    margin-bottom: 1.25rem;
}

.pk-logo { max-width: 60%; height: auto; max-height: 3.2rem; }

.pk-kopf-rechts {
    text-align: right;
    font-weight: 700;
    font-size: 0.9rem;
    line-height: 1.3;
}

.pk-titel { font-size: 1.1rem; margin: 0.5rem 0 1rem; }

table.pk-block {
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 1rem;
}

table.pk-block th {
    text-align: left;
    font-weight: 400;
    width: 7.5rem;
    vertical-align: top;
    padding: 0.25rem 0;
}

table.pk-block td { padding: 0.25rem; }

table.pk-linien td { border-bottom: 1px dotted #333; height: 1.6rem; }

table.pk-schueler { width: 100%; border-collapse: collapse; margin: 0.25rem 0 1rem; }
table.pk-schueler th { font-weight: 400; text-align: left; padding: 0.25rem; }
table.pk-schueler td { padding: 0.3rem 0.25rem; }
table.pk-schueler td:nth-child(2),
table.pk-schueler td:nth-child(3) { border-bottom: 1px dotted #333; width: 47%; }
table.pk-schueler th:first-child,
table.pk-schueler td:first-child { width: 1.75rem; }

ul.pk-punkte { padding-left: 1.5rem; }
ul.pk-punkte li { margin-bottom: 0.5rem; }
ul.pk-punkte li p { margin: 0.6rem 0 0; }

.pk-feld {
    border-bottom: 1px dotted #333;
    min-height: 1.5rem;
    padding: 0.35rem 0.25rem 0.1rem;
    margin-top: 0.3rem;
}

.pk-feld.pk-kurz { width: 60%; }

.pk-abstand-oben { margin-top: 2rem; }

.pk-unterschriften {
    display: flex;
    gap: 1rem;
    margin: 2.2rem 0 0.25rem;
    text-align: center;
}

.pk-u-klein { flex: 1; }
.pk-u-gross { flex: 2.2; }

.pk-linie {
    border-bottom: 1px dotted #333;
    height: 1.4rem;
    margin-bottom: 0.2rem;
}

.pk-fuss {
    margin-top: 2.5rem;
    padding-top: 0.2rem;
    border-top: 1px solid #000;
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    font-style: italic;
    font-size: 0.8rem;
    line-height: 1.35;
}

.pk-rechts { text-align: right; }

@media (max-width: 560px) {
    .pk-zwei-spalten { grid-template-columns: 1fr; }
    .pk-seite { padding: 1rem; }
    .pk-feld.pk-kurz { width: 100%; }
}

@media print {
    .pk-dokument { font-size: 10.5pt; }

    .pk-seite {
        border: none;
        border-radius: 0;
        padding: 0;
        margin: 0;
        min-height: 25.5cm;
        page-break-after: always;
        break-after: page;
    }

    .pk-seite:last-child { page-break-after: auto; break-after: auto; }

    .pk-logo { max-height: 1.4cm; max-width: 9cm; }

    .pk-fuss { margin-top: auto; } /* Fußzeile an den unteren Seitenrand schieben */
}
