:root {
     --ma-bg: #ffffff;
     --ma-text: #0f172a;
     --ma-muted: #475569;
     --ma-border: #e2e8f0;
     --ma-accent: #2563eb;
     --ma-accent-weak: #e5f2ff;
     --ma-note-bg: #f8fafc;
     --ma-radius: 5px;
     --ma-gap: 1.25rem;
     --ma-gap-lg: 2rem;
     --ma-pad: 1rem;
     --ma-pad-sm: .5rem;
     --sev-low: #22c55e;
     --sev-med: #eab308;
     --sev-high: #f97316;
     --sev-ext: #ef4444;
}
.ma-root table * {
     font-size:14px;
}
/* Root i typografia */
 .ma-root, .ma-section {
     color: var(--ma-text);
}
 .ma-root p {
     margin: .5rem 0 1rem;
}
 .ma-root .muted {
     color: var(--ma-muted);
}
/* Nagłówki */
 .ma-root h2, .ma-root h3, .ma-root h4 {
     margin: var(--ma-gap-lg) 0 var(--ma-gap);
     line-height: 1.2;
     scroll-margin-top: 80px;
}
 .ma-root h2 {
     font-size: clamp(1.4rem, 1.1rem + 1vw, 1.9rem);
}
 .ma-root h3 {
     font-size: clamp(1.15rem, 1rem + .6vw, 1.4rem);
}
 .ma-root h4 {
     font-size: clamp(1rem, .95rem + .4vw, 1.2rem);
}
/* Sekcje */
 .ma-section {
     padding: 0 0 var(--ma-gap);
     border-bottom: 2px solid var(--secondary-text-color);
}
/* Listy */
 .ma-tldr, .ma-list {
     list-style: square;
     padding-left: 1.25rem;
     margin: .25rem 0 var(--ma-gap);
}
 .ma-tldr li {
     margin: .25rem 0;
}
 .ma-list li {
     margin: .35rem 0;
}
 .ma-tldr li::marker, .ma-list li::marker {
     color:var(--secondary-text-color);
}
/* Notki */
 .ma-note {
     font-size:14px;
     background: #ffdacb;
     color:#6c2e15;
     font-weight:bold;
     padding: var(--ma-pad);
     border-radius: var(--ma-radius);
     margin: .75rem 0 var(--ma-gap);
}
/* Tabele */
 .ma-table {
     width: 100%;
     margin: var(--ma-gap) 0 var(--ma-gap-lg);
     overflow-x: auto;
     border-radius: var(--ma-radius);
     border: 1px solid var(--ma-border);
     background: var(--ma-bg);
}
 .ma-table table {
     width: 100%;
     border-collapse: collapse;
     min-width: 640px;
}
 .ma-table thead th {
     position: sticky;
     top: 0;
     background: var(--ma-accent-weak);
     color: var(--ma-text);
     text-align: left;
     font-weight: 600;
     font-size: .95rem;
     border-bottom: 1px solid var(--ma-border);
}
 .ma-table th, .ma-table td {
     padding: .75rem .9rem;
     border-bottom: 1px solid var(--ma-border);
     vertical-align: top;
}
 .ma-table tbody tr:nth-child(even) td {
     background: #fcfdfd;
}
/* Severity wierszy */
 .sev-low td{
     background: color-mix(in srgb, var(--sev-low) 7%, transparent);
}
 .sev-med td{
     background: color-mix(in srgb, var(--sev-med) 7%, transparent);
}
 .sev-high td{
     background: color-mix(in srgb, var(--sev-high) 7%, transparent);
}
 .sev-extreme td{
     background: color-mix(in srgb, var(--sev-ext) 7%, transparent);
}
/* Legenda tagów */
 .ma-legend{
     display:flex;
     flex-wrap:wrap;
     gap:.5rem;
     margin:.5rem 0 var(--ma-gap);
}
 .ma-tag{
     display:inline-block;
     font-size:.75rem;
     line-height:1;
     padding:.35rem .5rem;
     border-radius:999px;
     font-weight:600;
     background: var(--ma-note-bg);
     border:1px solid var(--ma-border);
     color:var(--ma-text);
}
 .ma-tag.is-low{
     border-color:transparent;
     background: color-mix(in srgb, var(--sev-low) 50%, var(--ma-border));
}
 .ma-tag.is-med{
     border-color:transparent;
     background: color-mix(in srgb, var(--sev-med) 50%, var(--ma-border));
}
 .ma-tag.is-high{
     border-color:transparent;
     background: color-mix(in srgb, var(--sev-high) 50%, var(--ma-border));
}
 .ma-tag.is-extreme{
    border-color:transparent;
     background: color-mix(in srgb, var(--sev-ext) 50%, var(--ma-border));
}
