/* Reset i podstawowe style */
 * {
 margin: 0;
 padding: 0;
 box-sizing: border-box;
 }

 body {
 font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
 line-height: 1.6;
 color: #333;
 background-color: #f4f4f4;
 }

 /* Kontener główny */
 .container {
 display: grid;
 grid-template-areas:
 "header header"
 "sidebar main"
 "footer footer";
 grid-template-columns: 250px 1fr;
 grid-template-rows: auto 1fr auto;
 min-height: 100vh;
 }

 /* Banner górny */
 .header {
 grid-area: header;
 background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%);
 padding: 20px 30px;
 box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
 }

 .header a {
 text-decoration: none;
 color: white;
 display: inline-block;
 }

 .header h1 {
 font-size: 2em;
 font-weight: 600;
 letter-spacing: 1px;
 }

 .header .logo {
 display: flex;
 align-items: center;
 gap: 15px;
 }

 .header .logo-icon {
 width: 50px;
 height: 50px;
 background-color: #fff;
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 24px;
 font-weight: bold;
 color: #1e3c72;
 }

 /* Menu boczne */
 .sidebar {
 grid-area: sidebar;
 background-color: #2c3e50;
 padding: 20px 0;
 box-shadow: 2px 0 5px rgba(0, 0, 0, 0.1);
 display: flex;
 flex-direction: row;
 }



 .sidebar nav div span{
 display: inline-block;
 margin-bottom: 5px;
 }

 .sidebar nav div span a {
 display: block;
 padding: 15px 25px;
 color: #ecf0f1;
 text-decoration: none;
 transition: all 0.3s ease;
 border-left: 4px solid transparent;
 }

 .sidebar nav div span a:hover {
 background-color: #34495e;
 border-left-color: #3498db;
 padding-left: 30px;
 }

 .sidebar nav div span a.active {
 background-color: #1e3c72;
 border-left-color: #3498db;
 font-weight: 600;
 }

 .sidebar nav div span.menu-separator {
 margin-top: 20px;
 padding-top: 20px;
 border-top: 1px solid rgba(255, 255, 255, 0.1);
 }

 .sidebar nav div span.logout-option a {
 color: #e74c3c;
 }

 .sidebar nav div span.logout-option a:hover {
 background-color: #c0392b;
 color: white;
 border-left-color: #e74c3c;
 }

 /* Główna część contentu */
 .main-content {
 grid-area: main;
 padding: 30px;
 background-color: white;
 min-height: 500px;
 }

 .main-content h2 {
 color: #1e3c72;
 margin-bottom: 20px;
 padding-bottom: 10px;
 border-bottom: 2px solid #3498db;
 }

 .main-content p {
 margin-bottom: 15px;
 color: #555;
 }

 /* Stopka */
 .footer {
 grid-area: footer;
 background-color: #2c3e50;
 color: #ecf0f1;
 padding: 20px 30px;
 text-align: center;
 font-size: 0.9em;
 }

 .footer p {
 margin: 5px 0;
 }

 .footer a {
 color: #3498db;
 text-decoration: none;
 }

 .footer a:hover {
 text-decoration: underline;
 }

 /* Style responsywne */
 @media (max-width: 768px) {
 .container {
 grid-template-areas:
 "header"
 "sidebar"
 "main"
 "footer";
 grid-template-columns: 1fr;
 }

 .sidebar {
 padding: 10px 0;
 }

 .sidebar nav div span a {
 padding: 12px 20px;
 }

 .main-content {
 padding: 20px;
 }

 .services-grid {
 grid-template-columns: 1fr !important;
 }
 }

 /* Dodatkowe elementy wizualne */
 .card {
 background-color: #f8f9fa;
 border-radius: 8px;
 padding: 20px;
 margin-bottom: 20px;
 box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
 }

 .btn {
 display: inline-block;
 padding: 10px 20px;
 background-color: #3498db;
 color: white;
 text-decoration: none;
 border-radius: 5px;
 transition: background-color 0.3s ease;
 border: none;
 cursor: pointer;
 font-size: 1em;
 margin: 5px;
 }

 .btn:hover {
 background-color: #2980b9;
 }

 .btn-secondary {
 background-color: #95a5a6;
 }

 .btn-secondary:hover {
 background-color: #7f8c8d;
 }

 /* Hero section */
 .hero {
 background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
 color: white;
 padding: 40px;
 border-radius: 10px;
 margin-bottom: 30px;
 text-align: center;
 }

 .hero h2 {
 color: white;
 border: none;
 font-size: 2.5em;
 margin-bottom: 15px;
 }

 .hero p {
 font-size: 1.2em;
 margin-bottom: 25px;
 color: #f0f0f0;
 }

 /* Siatka usług */
 .services-grid {
 display: grid;
 grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
 gap: 20px;
 margin-top: 30px;
 }

 .service-card {
 background-color: white;
 border: 1px solid #e0e0e0;
 border-radius: 8px;
 padding: 25px;
 text-align: center;
 transition: transform 0.3s ease, box-shadow 0.3s ease;
 }

 .service-card:hover {
 transform: translateY(-5px);
 box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
 }

 .service-icon {
 font-size: 3em;
 margin-bottom: 15px;
 color: #3498db;
 }

 .service-card h3 {
 color: #1e3c72;
 margin-bottom: 10px;
 }

 .service-card p {
 color: #666;
 font-size: 0.95em;
 }

 /* Informacje dodatkowe */
 .info-section {
 margin-top: 40px;
 padding: 30px;
 background-color: #f8f9fa;
 border-radius: 8px;
 }

 .info-section h3 {
 color: #1e3c72;
 margin-bottom: 15px;
 }

 .info-section ul {
 list-style-position: inside;
 color: #555;
 }

 .info-section ul li {
 margin-bottom: 8px;
 }
