:root{ --bg:#eef1f4; --fg:#1f2a33; --banner:#243b53; --bannerSub:#c9d6e3;
  --card:#fff; --headBg:#f2f5f8; --headFg:#5a6b7a; --headBorder:#d9e0e6;
  --even:#fff; --odd:#fafbfc; --hover:#eaf2fb; --border:#edf1f4;
  --link:#1f6feb; --muted:#5a6b7a; --addr:#9aa7b3; }
@media (prefers-color-scheme:dark){ :root:not([data-theme="light"]){
  --bg:#13171b; --fg:#d8dee4; --banner:#1a2b3d; --bannerSub:#9fb3c8;
  --card:#1b2027; --headBg:#222932; --headFg:#9aa7b3; --headBorder:#2c343d;
  --even:#1b2027; --odd:#1e242c; --hover:#24303d; --border:#262d35;
  --link:#6ca8ff; --muted:#9aa7b3; --addr:#6b7682; } }
:root[data-theme="dark"]{
  --bg:#13171b; --fg:#d8dee4; --banner:#1a2b3d; --bannerSub:#9fb3c8;
  --card:#1b2027; --headBg:#222932; --headFg:#9aa7b3; --headBorder:#2c343d;
  --even:#1b2027; --odd:#1e242c; --hover:#24303d; --border:#262d35;
  --link:#6ca8ff; --muted:#9aa7b3; --addr:#6b7682; }

*{box-sizing:border-box;}
body{font-family:-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  background:var(--bg); color:var(--fg); margin:0; padding:0 0 70px;}
body>h1{display:none;}
#banner{background:var(--banner); color:#fff; padding:24px 16px; text-align:center;}
#banner h1{margin:0; font-family:Georgia,"Times New Roman",serif; font-size:30px; letter-spacing:.5px;}
#banner p{margin:6px 0 0; font-size:15px; color:var(--bannerSub);}

#themeBtn{position:fixed; bottom:18px; right:18px; z-index:1000;
  width:48px; height:48px; border-radius:50%; padding:0;
  background:var(--card); color:var(--fg); border:1px solid var(--border);
  box-shadow:0 3px 10px rgba(0,0,0,.3); font-size:20px; line-height:1; cursor:pointer;
  display:flex; align-items:center; justify-content:center; transition:transform .1s;}
#themeBtn:hover{transform:scale(1.08);}
#themeBtn:active{transform:scale(.96);}

table#indexlist{border-collapse:collapse; width:100%; max-width:880px; margin:24px auto;
  background:var(--card); box-shadow:0 1px 4px rgba(0,0,0,.08); border-radius:6px; overflow:hidden; font-size:16px;}
tr.indexhead{background:var(--headBg);}
tr.indexhead th{text-align:left; padding:12px 14px; font-size:13px; text-transform:uppercase;
  letter-spacing:.5px; color:var(--headFg); border-bottom:2px solid var(--headBorder);}
td{padding:11px 14px; border-bottom:1px solid var(--border);}
td.indexcolname{word-break:break-word;}
tr.even td{background:var(--even);} tr.odd td{background:var(--odd);}
tr:hover td{background:var(--hover);}
td.indexcolname a{color:var(--link); text-decoration:none;}
td.indexcolname a:hover{text-decoration:underline;}
td.indexcolicon img{vertical-align:middle;}
th.indexcolsize,td.indexcolsize{text-align:right; white-space:nowrap; color:var(--muted);}
th.indexcollastmod,td.indexcollastmod{white-space:nowrap; color:var(--muted);}
td.indexcoldesc{display:none;}
tr.indexbreakrow td{border:0; padding:0;}
body>address{display:block; max-width:880px; margin:0 auto; color:var(--addr);
  font-size:11px; font-style:normal; text-align:center; padding:0 12px;}

@media (max-width:600px){
  #banner{padding:18px 14px;}
  #banner h1{font-size:23px;}
  #banner p{font-size:13px;}
  table#indexlist{width:94%; margin:14px auto; font-size:15px;}
  tr.indexhead th,td{padding:9px 10px;}
  th.indexcolsize,td.indexcolsize{display:none;}
  #themeBtn{width:44px; height:44px; bottom:14px; right:14px; font-size:18px;}
}
