/* =======================================================================
   PODN Stargard — Bootstrap 5 theme
   Nowa, autorska paleta (nie nawiazuje do starego granatu).
   Ten plik zastepuje cala star a warstwe stylow (style.css i wtyczki).
   ======================================================================= */

:root{
	--bs-primary:#0d9488;
	--bs-primary-rgb:13,148,136;
	--bs-primary-text-emphasis:#0f766e;
	--bs-primary-bg-subtle:#ccfbf1;
	--bs-primary-border-subtle:#5eead4;
	--bs-link-color:#0d9488;
	--bs-link-color-rgb:13,148,136;
	--bs-link-hover-color:#0f766e;
	--bs-link-hover-color-rgb:15,118,110;

	--podn-primary:#0d9488;
	--podn-primary-dark:#0f766e;
	--podn-primary-darker:#134e4a;
	--podn-accent:#f59e0b;
	--podn-accent-dark:#b45309;
	--podn-ink:#0f172a;
	--podn-muted:#64748b;
	--podn-bg:#f8fafc;
	--podn-card:#ffffff;
	--podn-border:#e2e8f0;
	--podn-radius:18px;
	--podn-shadow:0 10px 30px rgba(15,23,42,.06);
	--podn-shadow-hover:0 18px 40px rgba(15,23,42,.12);
}

.btn-primary{
	--bs-btn-bg:var(--podn-primary);
	--bs-btn-border-color:var(--podn-primary);
	--bs-btn-hover-bg:var(--podn-primary-dark);
	--bs-btn-hover-border-color:var(--podn-primary-dark);
	--bs-btn-active-bg:var(--podn-primary-darker);
	--bs-btn-active-border-color:var(--podn-primary-darker);
	--bs-btn-focus-shadow-rgb:13,148,136;
}
.btn-outline-primary{
	--bs-btn-color:var(--podn-primary);
	--bs-btn-border-color:var(--podn-primary);
	--bs-btn-hover-bg:var(--podn-primary);
	--bs-btn-hover-border-color:var(--podn-primary);
	--bs-btn-active-bg:var(--podn-primary-dark);
	--bs-btn-active-border-color:var(--podn-primary-dark);
}
.text-primary{ color:var(--podn-primary) !important; }
.bg-primary{ background-color:var(--podn-primary) !important; }

/* ---------- Base ---------- */
html{ scroll-behavior:smooth; }
body{
	background:var(--podn-bg);
	color:var(--podn-ink);
	font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	font-size:16px;
}
h1,h2,h3,h4,h5,h6{ font-weight:700; letter-spacing:-.01em; }
a{ text-decoration:none; }
::selection{ background:var(--podn-primary); color:#fff; }

/* ---------- Navbar ---------- */
.podn-navbar{
	background:linear-gradient(120deg,var(--podn-primary-darker),var(--podn-primary-dark) 60%,var(--podn-primary));
	box-shadow:0 4px 24px rgba(15,23,42,.12);
	padding-top:.65rem;
	padding-bottom:.65rem;
}
.podn-navbar .navbar-brand{
	display:flex;
	align-items:center;
	gap:.6rem;
	color:#fff;
	font-weight:700;
}
.podn-navbar .navbar-brand img{
	height:42px;
	width:auto;
	border-radius:8px;
	background:#fff;
	padding:3px;
}
.podn-navbar .nav-link{
	color:rgba(255,255,255,.88) !important;
	font-weight:600;
	font-size:.94rem;
	padding:.55rem .9rem !important;
	border-radius:10px;
	transition:background .15s ease, color .15s ease;
}
.podn-navbar .nav-link:hover,
.podn-navbar .nav-link:focus,
.podn-navbar .nav-link.active{
	color:#fff !important;
	background:rgba(255,255,255,.14);
}
.podn-navbar .dropdown-menu{
	border:none;
	border-radius:14px;
	box-shadow:var(--podn-shadow-hover);
	padding:.5rem;
	margin-top:.5rem;
}
.podn-navbar .dropdown-item{
	border-radius:8px;
	padding:.55rem .8rem;
	font-weight:500;
}
.podn-navbar .dropdown-item:hover,
.podn-navbar .dropdown-item:focus{
	background:var(--podn-primary-bg-subtle, #ccfbf1);
	color:var(--podn-primary-dark);
}
.podn-navbar .navbar-toggler{
	border:none;
	background:rgba(255,255,255,.14);
}
.podn-navbar .navbar-toggler:focus{ box-shadow:0 0 0 .2rem rgba(255,255,255,.25); }
.podn-navbar .navbar-toggler-icon{
	background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255,0.95%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* ---------- Hero / carousel ---------- */
.podn-hero{
	border-radius:var(--podn-radius);
	overflow:hidden;
	box-shadow:var(--podn-shadow);
}
.podn-hero .carousel-item img{
	width:100%;
	aspect-ratio:964/334;
	object-fit:cover;
}
.podn-hero .carousel-control-prev,
.podn-hero .carousel-control-next{
	width:52px; height:52px;
	top:50%; bottom:auto;
	transform:translateY(-50%);
	background:rgba(15,23,42,.45);
	border-radius:50%;
	opacity:.85;
}
.podn-hero .carousel-control-prev{ left:14px; }
.podn-hero .carousel-control-next{ right:14px; }
.podn-hero .carousel-control-prev-icon,
.podn-hero .carousel-control-next-icon{ width:1.1rem; height:1.1rem; }

/* ---------- Sections / cards ---------- */
.podn-section-title{
	font-weight:800;
	font-size:1.6rem;
	margin-bottom:1.5rem;
	display:flex;
	align-items:center;
	gap:.6rem;
	color:var(--podn-ink);
}
.podn-section-title i{ color:var(--podn-primary); }

.podn-card{
	background:var(--podn-card);
	border:1px solid var(--podn-border);
	border-radius:var(--podn-radius);
	box-shadow:var(--podn-shadow);
}

.podn-step-card{
	background:var(--podn-card);
	border:1px solid var(--podn-border);
	border-radius:var(--podn-radius);
	overflow:hidden;
	box-shadow:var(--podn-shadow);
	transition:transform .18s ease, box-shadow .18s ease;
	height:100%;
}
.podn-step-card:hover{ transform:translateY(-4px); box-shadow:var(--podn-shadow-hover); }
.podn-step-media{ position:relative; aspect-ratio:266/163; overflow:hidden; }
.podn-step-media img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .3s ease; }
.podn-step-card:hover .podn-step-media img{ transform:scale(1.06); }
.podn-step-num{
	position:absolute; top:10px; left:10px;
	width:30px; height:30px; border-radius:50%;
	background:var(--podn-primary); color:#fff;
	font-size:13px; font-weight:700;
	display:flex; align-items:center; justify-content:center;
}

/* ---------- Course cards ---------- */
.podn-course-card{
	border:1px solid var(--podn-border);
	border-radius:var(--podn-radius);
	overflow:hidden;
	box-shadow:var(--podn-shadow);
	transition:transform .18s ease, box-shadow .18s ease;
	height:100%;
	background:#fff;
}
.podn-course-card:hover{ transform:translateY(-4px); box-shadow:var(--podn-shadow-hover); }
.podn-course-card .podn-course-img{
	aspect-ratio:4/3;
	object-fit:cover;
	width:100%;
}

/* ---------- Partners sidebar ---------- */
.podn-partners-grid img{
	max-width:70%;
	filter:grayscale(15%);
	opacity:.92;
	transition:opacity .2s ease, filter .2s ease;
}
.podn-partners-grid img:hover{ opacity:1; filter:none; }

/* ---------- Forms ---------- */
.form-control,.form-select{
	border-radius:12px;
	border-color:var(--podn-border);
	padding:.6rem .9rem;
}
.form-control:focus,.form-select:focus{
	border-color:var(--podn-primary);
	box-shadow:0 0 0 .2rem rgba(13,148,136,.15);
}
.form-label{ font-weight:600; font-size:.92rem; color:var(--podn-ink); }
.input-group-text{ border-radius:12px 0 0 12px; background:var(--podn-bg); }

/* ---------- Tables ---------- */
.table{ --bs-table-hover-bg:rgba(13,148,136,.06); vertical-align:middle; }
.table thead th{
	background:var(--podn-primary-darker);
	color:#fff;
	border:none;
	font-weight:600;
	white-space:nowrap;
}
.table-kv th{
	width:220px;
	color:var(--podn-muted);
	font-weight:600;
	border-color:var(--podn-border);
}
.table-kv td{ border-color:var(--podn-border); font-weight:600; }

/* ---------- Status badges ---------- */
.badge-status{
	display:inline-block;
	padding:.4em .75em;
	border-radius:999px;
	font-weight:600;
	font-size:.78rem;
	color:#fff;
	white-space:nowrap;
}
.badge-status.Oczekiwanie{ background:var(--podn-accent); color:#3f2600; }
.badge-status.Zaakceptowany{ background:#16a34a; }
.badge-status.Odrzucony{ background:#dc2626; }
.badge-status.Rekrutacja{ background:var(--podn-primary); }
.badge-status.W-trakcie,
.badge-status.W_trakcie{ background:#0891b2; }
.badge-status.Ukonczony{ background:#92400e; }

/* ---------- Footer ---------- */
.podn-footer{
	background:var(--podn-primary-darker);
	color:rgba(255,255,255,.78);
	padding:1.4rem 0;
	margin-top:auto;
}
.podn-footer a{ color:rgba(255,255,255,.78); }
.podn-footer a:hover{ color:#fff; }

/* ---------- Utility ---------- */
.podn-msg{ margin-bottom:1rem; }
.podn-page{ padding-top:1.75rem; padding-bottom:3rem; }
.podn-map iframe{ width:100%; height:230px; border:0; border-radius:14px; }

/* ---------- Certificate print page (wrapper chrome only) ---------- */
.podn-print-toolbar{
	display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.75rem;
}

@media (max-width:576px){
	.podn-section-title{ font-size:1.3rem; }
}
