:root{
  --brand:#0aa9d6;       /* aqua */
  --brand-600:#078db5;   /* hover */
  --brand-700:#066f8d;   /* dark */
  --ink:#1f2937;         /* tekst */
  --muted:#6b7280;       /* opis */
  --line:#e5e7eb;        /* linie */
  --bg:#f7f9fb;          /* tło strony */
  --panel:#ffffff;       /* panele */
  --bip-red:#d42127;     /* BIP */
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Arial,Helvetica,sans-serif;background:var(--bg);color:var(--ink)}
a{color:var(--brand);text-decoration:none}
a:hover{color:var(--brand-600);text-decoration:underline}

/* Header */
.header{background:var(--panel);border-bottom:3px solid var(--brand)}
.header .wrap{max-width:1100px;margin:0 auto;padding:12px 18px;display:flex;align-items:center;gap:18px}
.brand{display:flex;align-items:center;gap:10px}
.brand img{display:block;height:42px}
.brand .bip-badge{display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 10px;border-radius:6px;background:var(--bip-red);color:#fff;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.brand .aqp-text{font-weight:800;font-size:20px;line-height:1;color:var(--brand-700)}
.header .title{margin-left:auto;font-size:16px;color:var(--muted)}

/* Layout */
.container{max-width:1100px;margin:0 auto;display:flex;gap:20px;padding:20px}
.sidebar{flex:0 0 360px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px;overflow:auto;max-height:calc(100vh - 140px);box-shadow:0 1px 2px rgba(0,0,0,.04)}
.sidebar h3{margin:8px 0 10px 0;font-size:14px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.menu ul{list-style:none;margin:0;padding:0}
.menu li{border-bottom:1px solid #f1f5f9}
.menu li a{display:block;padding:8px 8px 8px 22px;position:relative}
.menu li.has-children > a::before{content:'▸';position:absolute;left:6px;top:8px;line-height:1;opacity:.65}
.menu li.active > a{font-weight:700;color:var(--brand-700)}
.menu li ul{margin:0;padding-left:14px;background:#f9fbfd}

.content{flex:1;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.breadcrumbs{font-size:12px;color:var(--muted);margin:0 0 10px 0}
.page h1{margin:0 0 12px 0;font-size:22px}
.meta{font-size:12px;color:var(--muted);margin-bottom:16px}
.news-list article{padding:12px 0;border-bottom:1px solid #f1f5f9}
.news-list h2{font-size:16px;margin:0 0 6px 0}
.footer{max-width:1100px;margin:16px auto 40px auto;padding:8px 18px;color:var(--muted);font-size:12px}
