/* APP korzysta z palety projektu, bez zmian globalnych stylów UJW. */
.ujw-app-project-view .ujw-entry-hero{background:linear-gradient(135deg,var(--app-primary,#004996),#00376f);color:#fff}
.ujw-app-project-view .ujw-entry-hero__inner{min-height:210px;padding-block:32px}
.ujw-app-project-view .ujw-entry-hero h1{color:#fff;font-size:clamp(1.75rem,3.3vw,3rem);line-height:1.15}
.ujw-app-project-view .ujw-entry-hero .ujw-entry-eyebrow,.ujw-app-project-view .ujw-entry-hero .ujw-entry-eyebrow a{color:#e8d4c2}
.ujw-app-project-view .ujw-entry-hero__lead{color:#fff;font-size:1rem;line-height:1.6;max-width:760px}
.ujw-app-funding img{display:block;max-width:100%;height:auto;object-fit:contain}
.ujw-app-resources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 32px}
.ujw-app-resources a{display:flex;align-items:center;min-height:56px;padding:16px;border:1px solid #d9e0e7;border-left:4px solid var(--app-accent,#976949);border-radius:4px;color:var(--app-primary,#004996);font-weight:700;text-decoration:none;background:#fff}
.ujw-app-resources a:hover{text-decoration:underline}
.ujw-app-resources a:focus-visible{outline:3px solid var(--app-primary,#004996);outline-offset:3px}
@media(max-width:600px){.ujw-app-resources{grid-template-columns:1fr}.ujw-app-project-view .ujw-entry-hero__inner{min-height:0;padding-block:28px}}

/* Kontakt przed materiałami, spokojny rytm sekcji i czytelne portrety. */
.ujw-app-contact{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;padding:32px;margin:0 0 40px;background:#edf3f8;border-left:5px solid var(--app-accent,#976949);border-radius:8px}
.ujw-app-contact__eyebrow{display:block;color:var(--app-primary,#004996);font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}
.ujw-app-contact h2,.ujw-app-materials h2{font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.25;margin:0 0 12px;color:#17202a}
.ujw-app-contact p{margin:0;line-height:1.65}
.ujw-app-contact__button{display:flex;flex-direction:column;gap:4px;padding:18px 24px;border-radius:5px;background:var(--app-primary,#004996);color:#fff;text-decoration:none;font-weight:700;text-align:center;overflow-wrap:anywhere}
.ujw-app-contact__button span{font-size:.875rem;font-weight:400}
.ujw-app-contact__button:hover{background:#00376f;color:#fff;text-decoration:underline}
.ujw-app-contact__button:focus-visible{outline:3px solid #976949;outline-offset:4px}
.ujw-app-content{line-height:1.8}
.ujw-app-content>.ujw-student-info-section{border-top-color:#dbe3eb!important;padding-block:36px!important}
.ujw-app-content h2{color:var(--app-primary,#004996);font-size:clamp(1.45rem,2.2vw,1.9rem);line-height:1.3;margin-bottom:20px}
.ujw-app-content h3{font-size:1.2rem;line-height:1.4}
.ujw-app-content p{max-width:80ch}
.ujw-app-content .wp-block-columns{gap:32px;align-items:start}
.ujw-app-content .wp-block-column{min-width:0}
.ujw-app-content .wp-block-column .wp-block-image{margin:0}
.ujw-app-content .wp-block-column .wp-block-image img{display:block;max-width:100%;height:auto;border-radius:8px}
.ujw-app-materials{padding-top:32px;margin-top:24px;border-top:1px solid #dbe3eb}
.ujw-app-resources{margin-top:24px}
.ujw-app-resources a{justify-content:space-between;gap:16px;padding:22px;line-height:1.5}
@media(max-width:700px){
 .ujw-app-contact{grid-template-columns:1fr;padding:24px;gap:20px;margin-bottom:24px}
 .ujw-app-contact__button{width:100%;box-sizing:border-box}
 .ujw-app-content>.ujw-student-info-section{padding-block:24px!important}
 .ujw-app-content .wp-block-columns{flex-direction:column}
 .ujw-app-content .wp-block-column{flex-basis:auto!important;width:100%}
 .ujw-app-content .wp-block-column .wp-block-image{max-width:280px;margin-inline:auto}
}

/* Sekcje APP i rodzime karty osobowe, bez wpływu na stronę władz. */
.ujw-app-content .ujw-app-overview{max-width:80ch;margin-bottom:36px}
.ujw-app-content .ujw-app-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;margin-block:32px 48px}
.ujw-app-content .ujw-app-info-card{margin:0;padding:28px;background:#f4f7fa;border:1px solid #dbe3eb;border-radius:8px;min-width:0}
.ujw-app-content .ujw-app-info-card h2{font-size:1.45rem;margin:0 0 20px}
.ujw-app-content .ujw-app-info-card h3{font-size:1.1rem;margin-block:24px 12px}
.ujw-app-content .ujw-app-info-card p,.ujw-app-content .ujw-app-info-card li{font-size:1rem;line-height:1.7;overflow-wrap:anywhere}
.ujw-app-content .ujw-app-info-card ul{padding-left:22px}
.ujw-app-content .ujw-app-info-card li+li{margin-top:8px}
.ujw-app-content .ujw-app-team{margin-block:48px}
.ujw-app-content .ujw-app-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.ujw-app-team-grid .wp-block-ujw-person-card.ujw-authority{display:flex;flex-direction:column;gap:0;margin:0;border:1px solid #dbe3eb;border-radius:10px;overflow:hidden;background:#fff;min-width:0}
.ujw-app-team-grid .ujw-authority__image{width:100%;max-width:none;aspect-ratio:4/3;border-radius:0;overflow:hidden;background:#edf1f5}
.ujw-app-team-grid .ujw-authority__image picture{display:block;width:100%;height:100%}
.ujw-app-team-grid .ujw-authority__image img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}
.ujw-app-team-grid .ujw-authority__content{width:100%;box-sizing:border-box;padding:26px}
.ujw-app-team-grid .ujw-person-card__name{font-size:1.7rem;line-height:1.25;min-height:2.5em;margin:8px 0 20px}
.ujw-app-team-grid .ujw-person-card__academic-title,.ujw-app-team-grid .ujw-person-card__full-name{display:block}
.ujw-app-team-grid .ujw-person-card__position{color:#667589;font-size:.75rem}
.ujw-app-team-grid .ujw-person-card__details{border-top:1px solid #dbe3eb;margin-top:0;padding-top:16px}
.ujw-app-team-grid .ujw-person-card__details summary{color:var(--app-primary,#004996);padding:6px 0;cursor:pointer}
.ujw-app-team-grid .ujw-person-card__details summary:focus-visible{outline:3px solid #976949;outline-offset:4px}
.ujw-app-team-grid .ujw-person-card__details-content{font-size:.95rem;line-height:1.75}
@media(max-width:760px){
 .ujw-app-content .ujw-app-info-grid,.ujw-app-content .ujw-app-team-grid{grid-template-columns:1fr;gap:20px}
 .ujw-app-content .ujw-app-info-card{padding:22px}
 .ujw-app-team-grid .ujw-authority__content{padding:22px}
}

/* Tytuł naukowy jest częścią wiersza z imieniem i nazwiskiem. */
.ujw-app-team-grid .ujw-person-card__name{font-size:clamp(1.2rem,2vw,1.6rem);min-height:0}
.ujw-app-team-grid .ujw-person-card__academic-title,.ujw-app-team-grid .ujw-person-card__full-name{display:inline;font-size:1em}
.ujw-app-team-grid .ujw-authority__lead{font-size:.95rem;line-height:1.7;margin:0 0 20px}

/* Równe karty niezależnie od długości krótkiego opisu. */
.ujw-app-content .ujw-app-team-grid{align-items:stretch}
.ujw-app-team-grid .ujw-authority__content{display:flex;flex-direction:column;flex:1}
.ujw-app-team-grid .ujw-person-card__details{margin-top:auto}

/* Blog APP: równe karty tekstowe zamiast długiej listy. */
.ujw-app-aggregator .ujw-app-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-block:28px 40px}
.ujw-app-aggregator .ujw-app-blog-card{display:flex;flex-direction:column;min-width:0;margin:0;padding:26px;background:#fff;border:1px solid #dbe3eb;border-top:4px solid var(--app-accent,#976949);border-radius:8px;box-shadow:0 8px 24px #00499608}
.ujw-app-blog-card__date{font-size:.8rem;line-height:1.5;color:#647386}
.ujw-app-aggregator .ujw-app-blog-card h3{font-size:1.2rem;line-height:1.45;margin:14px 0 18px}
.ujw-app-aggregator .ujw-app-blog-card h3 a{color:var(--app-primary,#004996);text-decoration:none}
.ujw-app-aggregator .ujw-app-blog-card h3 a:hover{text-decoration:underline}
.ujw-app-blog-card__excerpt{font-size:.95rem;line-height:1.7;margin:0 0 24px;color:#36475a}
.ujw-app-aggregator .ujw-app-blog-card__link{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:18px;border-top:1px solid #dbe3eb;color:var(--app-primary,#004996);font-weight:700;text-decoration:none;font-size:.95rem}
.ujw-app-blog-card a:focus-visible{outline:3px solid #976949;outline-offset:4px}
.ujw-app-blog-card__link:hover{text-decoration:underline}
@media(max-width:1000px){.ujw-app-aggregator .ujw-app-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.ujw-app-aggregator .ujw-app-blog-grid{grid-template-columns:1fr;gap:18px}.ujw-app-aggregator .ujw-app-blog-card{padding:22px}}

.ujw-app-aggregator .ujw-app-blog-grid{margin-top:0}
