/* Modern, system font stack (no external fetch) */
:root{
  --bg:#ffffff; --text:#0b1220; --muted:#5b6879; --card:#f5f7fb; --link:#1b6ef3; --border:#e6e9ef;
  --row:#ffffff; --row-alt:#f9fbff; --icon-filter:none;
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#0b0d10; --text:#e6e9f1; --muted:#9aa3af; --card:#111418; --link:#7aa2ff; --border:#1f2430;
    --row:#0f1216; --row-alt:#11161c; --icon-filter:invert(1) brightness(0.9);
  }
}
html,body{background:var(--bg); color:var(--text); font:16px/1.55 ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", Ubuntu, "Helvetica Neue", Arial, "Apple Color Emoji","Segoe UI Emoji";}
a{color:var(--link); text-decoration:none}
a:hover{text-decoration:underline}
h1{font-weight:700; letter-spacing:.2px; margin:2rem auto 0; width:min(1000px,92%)}

/* Table layout Apache emits with IndexOptions HTMLTable */
table{width:min(1000px,92%); margin:1rem auto 3rem; border:1px solid var(--border); border-radius:14px; overflow:hidden; border-collapse:separate; background:var(--card)}
th, td{padding:.75rem 1rem; border-bottom:1px solid var(--border); vertical-align:middle; white-space:nowrap}
th{font-weight:600; text-transform:uppercase; letter-spacing:.04em; font-size:.78rem; color:var(--muted); background:transparent; position:sticky; top:0}
tr:nth-child(even){background:var(--row-alt)}
tr:nth-child(odd){background:var(--row)}
tr:hover{filter:brightness(1.03)}

.indexcolicon{width:1%}
.indexcolname{width:60%}
.indexcollastmod, .indexcolsize, .indexcoldesc{color:var(--muted)}

img{height:18px; width:18px; vertical-align:-3px; margin-right:.25rem; filter:var(--icon-filter); opacity:.85}
hr{display:none}

/* Footer “Server at …” */
address{width:min(1000px,92%); margin:0 auto 3rem; color:var(--muted); font-size:.85rem}

