:root{
  --bg:#212121;
  --text:#eee;
  --muted:#b9c0cb;
  --accent:#58a6ff;
  --line:#2f3338;
  --panel:#26292f;
  --th:#1d2025;
  --stripe1:#233125;
  --stripe2:#1f2a1f;
  --radius:12px;
  --rail-green:#1a7f3a;
  --rail-amber:#7a4a00;
  --phosphor:#9afc7c;
  --glow1:#164;
  --glow2:#0a2;
  --page-gutter:clamp(12px,3vw,18px);
}

:root[data-phosphor="amber"]{
  --stripe1:#31281f;
  --stripe2:#2b231c;
  --phosphor:#ffc76b;
  --glow1:#7a4a00;
  --glow2:#3b2200;
}

*,*::before,*::after{
  box-sizing:border-box;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

html,body{
  margin:0;
  padding:0;
  overflow-x:hidden;
}

body{
  min-height:100vh;
  background:var(--bg);
  color:var(--text);
  font:16px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  padding:0 var(--page-gutter);
}

a{
  color:var(--accent);
  text-decoration:none;
  font-weight:600;
}

a:hover{
  text-decoration:underline;
}

img{
  max-width:100%;
  height:auto;
}

/* toggle-related rules moved to css/toggle.css */

.container{
  width:100%;
  max-width:1500px;
  margin:0 auto;
  padding:0;
}

/* directory-specific header rules moved to css/directory.css */

.greenbar-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:var(--radius);
  margin:16px auto 32px;
}

.greenbar-table thead th{
  padding:14px 16px;
  background:var(--th);
  color:var(--muted);
  text-align:left;
  font-weight:700;
  border-bottom:1px solid var(--line);
}

.greenbar-table tbody td{
  padding:14px 16px;
  border-bottom:1px solid var(--line);
  font-family:'Courier New',Courier,monospace;
}

.greenbar-table tbody tr:nth-child(odd) td{
  background:var(--stripe1);
}

.greenbar-table tbody tr:nth-child(even) td{
  background:var(--stripe2);
}

.greenbar-table tbody tr:hover td{
  filter:brightness(1.08);
}

.greenbar-table tfoot td{
  text-align:right;
  padding:14px 16px;
  font-size:.9rem;
  color:var(--muted);
}

.greenbar-table tfoot td span{
  font-weight:700;
  color:var(--text);
}

.greenbar-table caption{
  font-size:1.5em;
  margin-bottom:10px;
  font-weight:700;
  text-align:left;
  color:var(--text);
}

.greenbar-table td img{
  width:15%;
  height:auto !important;
  max-width:110px;
  display: inline-block;
}

@media (max-width:640px){
  .greenbar-table td img{
    width:45%;
    max-width:122px;
  }
}

.section-title{
  margin:28px 0 12px;
  font-size:2.15rem;
  font-weight:800;
  color:var(--phosphor);
  text-shadow:0 0 .35em var(--glow1),0 0 .15em var(--glow2);
}

/* page-specific rules moved to css/directory.css and css/typewriter.css */
