/* Workbench 1.2 palette and flat gadgets. All rules are scoped to Amiga. */
@font-face {
  font-family: 'Amiga Topaz';
  src: url('/images/fonts/topaz-a500.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
html[data-theme='amiga'] { color-scheme: light; background: #5965ba; }
html[data-theme='amiga'] body {
  --bg: #5965ba;
  --bg-secondary: #5965ba;
  --text: #fff;
  --text-muted: #fff;
  --accent: #eb9e00;
  --accent-hover: #fff;
  --border: #fff;
  --heading-font: 'Amiga Topaz', monospace;
  --body-font: 'Amiga Topaz', monospace;
  background: #5965ba;
  color: #fff;
  font: 16px/1.5 'Amiga Topaz', monospace;
  font-synthesis: none;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: none;
}
html[data-theme='amiga'] body::before {
  box-sizing: border-box;
  content: 'Workbench release 1.2';
  display: block;
  flex: 0 0 auto;
  position: relative;
  z-index: 8;
  width: 100%;
  height: 30px;
  padding: 3px 12px;
  border-bottom: 2px solid #14002d;
  background: #fff;
  color: #5965ba;
  font: 16px/1.4 'Amiga Topaz', monospace;
}
html[data-theme='amiga'] .amiga-only { display: inline; }
html[data-theme='amiga'] .terminal-only { display: none; }
html[data-theme='amiga'] .surface { min-height: calc(100vh - 30px); overflow: visible; }
html[data-theme='amiga'] .surface::after,
html[data-theme='amiga'] .identity-heading::before,
html[data-theme='amiga'] .rack::before,
html[data-theme='amiga'] .rack::after,
html[data-theme='amiga'] .patches,
html[data-theme='amiga'] .rail { display: none; }
html[data-theme='amiga'] .site-home .shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 115px;
  column-gap: 24px;
  max-width: 1180px;
  padding: 26px 24px 32px;
}
html[data-theme='amiga'] .shell > header { grid-column: 1 / -1; margin: 0 0 25px; }
html[data-theme='amiga'] header nav {
  min-height: 31px;
  padding: 4px 10px;
  border: 2px solid #fff;
  background: #fff;
  color: #5965ba;
  gap: 16px;
  align-items: center;
}
html[data-theme='amiga'] header nav > a {
  color: #5965ba;
  font: 16px/1.3 'Amiga Topaz', monospace;
  letter-spacing: 0;
  text-transform: none;
}
html[data-theme='amiga'] .nav-categories { gap: 24px; }
html[data-theme='amiga'] .nav-categories a {
  color: #5965ba;
  font: 16px/1.3 'Amiga Topaz', monospace;
}
html[data-theme='amiga'] .nav-categories a:hover { color: #14002d; background: #eb9e00; }
html[data-theme='amiga'] .amiga-desktop {
  grid-column: 2;
  grid-row: 2;
  display: flex;
  flex-direction: column;
  gap: 27px;
  align-items: center;
  align-self: start;
  padding: 9px 0;
}
html[data-theme='amiga'] .desktop-icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  color: #fff;
  font: 16px/1.25 'Amiga Topaz', monospace;
  text-align: center;
}
html[data-theme='amiga'] .desktop-icon svg { width: 56px; height: 49px; shape-rendering: crispEdges; }
html[data-theme='amiga'] .desktop-icon:hover span,
html[data-theme='amiga'] .desktop-icon:focus-visible span { background: #eb9e00; color: #14002d; }
html[data-theme='amiga'] .terminal-main { grid-column: 1; grid-row: 2; padding: 0; min-width: 0; }
html[data-theme='amiga'] .rack {
  padding: 46px 18px 18px;
  background: #5965ba;
  border: 2px solid #fff;
  border-radius: 0;
  box-shadow: 4px 4px 0 #14002d;
}
html[data-theme='amiga'] .amiga-frame-title {
  position: absolute;
  inset: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 8px;
  height: 27px;
  border-bottom: 2px solid #fff;
  background: #fff;
  color: #5965ba;
  font: 16px/1 'Amiga Topaz', monospace;
  white-space: nowrap;
}
html[data-theme='amiga'] .amiga-close-gadget {
  display: block;
  flex: 0 0 22px;
  height: 25px;
  padding: 5px;
  border-right: 2px solid #5965ba;
  background: #fff;
}
html[data-theme='amiga'] .amiga-close-gadget::before { content: ''; display: block; width: 10px; height: 11px; background: #5965ba; border: 2px solid #fff; outline: 2px solid #5965ba; }
html[data-theme='amiga'] .amiga-title-stripes { flex: 1; height: 8px; margin-inline: 3px; background: repeating-linear-gradient(0deg, #5965ba 0, #5965ba 2px, #fff 2px, #fff 4px); }
html[data-theme='amiga'] .amiga-depth-gadget { width: 25px; height: 25px; border-left: 2px solid #5965ba; position: relative; }
html[data-theme='amiga'] .amiga-depth-gadget::before { content: ''; position: absolute; width: 12px; height: 9px; border: 2px solid #5965ba; top: 6px; left: 5px; box-shadow: -3px -3px 0 #fff, -3px -3px 0 2px #5965ba; }
html[data-theme='amiga'] .identity-heading { gap: 14px; margin: 0 0 24px; padding: 0 0 18px; border-bottom: 2px solid #fff; }
html[data-theme='amiga'] .heading-logo { width: 72px; border-radius: 0; mix-blend-mode: normal; image-rendering: pixelated; }
html[data-theme='amiga'] .terminal-main .identity-heading h1 { color: #fff; font: 32px/1.3 'Amiga Topaz', monospace; letter-spacing: 0; text-shadow: none; }
html[data-theme='amiga'] .terminal-main h1 > span { display: inline; }
html[data-theme='amiga'] .terminal-main h1 .title-rest { color: #fff; }
html[data-theme='amiga'] .monitor { border: 2px solid #fff; border-radius: 0; background: #5965ba; box-shadow: none; color: #fff; font-family: 'Amiga Topaz', monospace; }
html[data-theme='amiga'] .monitor::after { display: none; }
html[data-theme='amiga'] .terminal-titlebar { min-height: 28px; padding: 0 4px 0 0; gap: 7px; border-bottom: 2px solid #fff; background: #fff; color: #5965ba; }
html[data-theme='amiga'] .terminal-icon { position: relative; font-size: 0; width: 24px; height: 26px; border-right: 2px solid #5965ba; }
html[data-theme='amiga'] .terminal-icon::before { content: ''; position: absolute; width: 11px; height: 11px; border: 2px solid #5965ba; top: 6px; left: 5px; }
html[data-theme='amiga'] .monitor-label { color: #5965ba; font: 16px/1.25 'Amiga Topaz', monospace; }
html[data-theme='amiga'] .window-controls { gap: 2px; }
html[data-theme='amiga'] .window-controls > span { position: relative; width: 22px; height: 22px; border: 0; border-left: 2px solid #5965ba; background: #fff; font-size: 0; }
html[data-theme='amiga'] .window-controls > span::before { content: ''; position: absolute; inset: 5px 3px 5px 5px; border: 2px solid #5965ba; }
html[data-theme='amiga'] .window-controls > span:first-child::before { box-shadow: -3px -3px 0 #fff, -3px -3px 0 2px #5965ba; }
html[data-theme='amiga'] .window-controls > span:last-child { display: none; }
html[data-theme='amiga'] .terminal-session { padding: 22px 23px; border-right: 10px solid #fff; }
html[data-theme='amiga'] .terminal-session > .monitor-prompt:first-child,
html[data-theme='amiga'] .monitor .terminal-art { display: none; }
html[data-theme='amiga'] .monitor-prompt,
html[data-theme='amiga'] .workbench-intro,
html[data-theme='amiga'] .terminal-comment,
html[data-theme='amiga'] .terminal-tree,
html[data-theme='amiga'] .terminal-status { color: #fff; font: 16px/1.65 'Amiga Topaz', monospace; text-shadow: none; letter-spacing: 0; }
html[data-theme='amiga'] .workbench-intro { margin: 12px 0 20px; }
html[data-theme='amiga'] .terminal-comment { color: #fff; }
html[data-theme='amiga'] .tree-root { color: #fff; }
html[data-theme='amiga'] .tree-branch { color: #fff; font-family: 'Ubuntu Mono', monospace; }
html[data-theme='amiga'] .terminal-tree a { color: #fff; }
html[data-theme='amiga'] .terminal-tree a > span:last-child { text-decoration: none; }
html[data-theme='amiga'] .terminal-tree a:hover,
html[data-theme='amiga'] .terminal-tree a:focus-visible,
html[data-theme='amiga'] .terminal-tree a[data-theme-choice][aria-current] { color: #14002d; background: #eb9e00; }
html[data-theme='amiga'] .terminal-cursor { color: #eb9e00; }
html[data-theme='amiga'] .terminal-status { padding: 0 8px; border-top: 2px solid #fff; background: #fff; color: #5965ba; font-size: 12px; }
html[data-theme='amiga'] .terminal-status > span:first-child { font-size: 0; }
html[data-theme='amiga'] .terminal-status > span:first-child::before { content: 'AmigaDOS'; font-size: 12px; }
html[data-theme='amiga'] a:focus-visible { outline: 2px solid #eb9e00; outline-offset: 3px; }
html[data-theme='amiga'] .site-footer { grid-column: 1 / -1; margin-top: 28px; padding: 15px 0; border: 0; color: #fff; font: 12px/1.6 'Amiga Topaz', monospace; letter-spacing: 0; }
html[data-theme='amiga'] body > header { padding: 20px 24px 0; }
html[data-theme='amiga'] body > main { width: calc(100% - 48px); max-width: 940px; margin: 28px auto; padding: 26px; border: 2px solid #fff; background: #5965ba; box-shadow: 4px 4px 0 #14002d; }
html[data-theme='amiga'] h1,
html[data-theme='amiga'] h2,
html[data-theme='amiga'] h3 { color: #fff; font-family: 'Amiga Topaz', monospace; font-weight: 400; }
html[data-theme='amiga'] body > main h1 { font-size: 28px; }
html[data-theme='amiga'] body > footer { padding: 18px 24px; border: 0; color: #fff; font: 12px/1.6 'Amiga Topaz', monospace; }
html[data-theme='amiga'] .theme-option { border: 2px solid #fff; background: #5965ba; color: #fff; font-family: 'Amiga Topaz', monospace; box-shadow: 3px 3px 0 #14002d; }
html[data-theme='amiga'] .theme-option strong { font-size: 20px; font-weight: 400; }
html[data-theme='amiga'] .theme-option span { color: #fff; font-size: 16px; }
html[data-theme='amiga'] .theme-option:hover,
html[data-theme='amiga'] .theme-option[aria-current] { border-color: #fff; background: #eb9e00; color: #14002d; }
html[data-theme='amiga'] .theme-option:hover span,
html[data-theme='amiga'] .theme-option[aria-current] span { color: #14002d; }

@media(max-width: 800px) {
  html[data-theme='amiga'] .site-home .shell { grid-template-columns: minmax(0, 1fr) 90px; padding: 20px 16px 26px; gap: 18px; }
  html[data-theme='amiga'] .rack { padding: 42px 12px 12px; }
  html[data-theme='amiga'] .terminal-session { padding: 18px 16px; }
  html[data-theme='amiga'] .terminal-main .identity-heading h1 { font-size: 24px; }
  html[data-theme='amiga'] .heading-logo { width: 56px; }
  html[data-theme='amiga'] .nav-categories { gap: 18px; }
}
@media(max-width: 600px) {
  html[data-theme='amiga'] body::before { font-size: 14px; height: 28px; padding-top: 4px; }
  html[data-theme='amiga'] .site-home .shell { display: block; padding: 16px 12px 24px; }
  html[data-theme='amiga'] .shell > header { margin-bottom: 19px; }
  html[data-theme='amiga'] header nav { flex-direction: row; flex-wrap: wrap; padding: 5px 7px; gap: 10px; }
  html[data-theme='amiga'] header nav > a { font-size: 14px; }
  html[data-theme='amiga'] .nav-categories { gap: 19px; }
  html[data-theme='amiga'] .nav-categories a { font-size: 14px; }
  html[data-theme='amiga'] .amiga-desktop { flex-direction: row; justify-content: space-around; gap: 8px; padding: 0 0 24px; }
  html[data-theme='amiga'] .desktop-icon { font-size: 12px; gap: 5px; }
  html[data-theme='amiga'] .desktop-icon svg { width: 44px; height: 39px; }
  html[data-theme='amiga'] .rack { padding: 43px 9px 10px; box-shadow: 3px 3px 0 #14002d; }
  html[data-theme='amiga'] .identity-heading { margin: 0 0 17px; padding-bottom: 15px; gap: 10px; }
  html[data-theme='amiga'] .terminal-main .identity-heading h1 { font-size: 20px; }
  html[data-theme='amiga'] .heading-logo { width: 48px; }
  html[data-theme='amiga'] .terminal-titlebar { gap: 5px; }
  html[data-theme='amiga'] .monitor-label { font-size: 14px; }
  html[data-theme='amiga'] .terminal-session { padding: 18px 13px; border-right-width: 6px; }
  html[data-theme='amiga'] .monitor-prompt,
  html[data-theme='amiga'] .workbench-intro,
  html[data-theme='amiga'] .terminal-comment,
  html[data-theme='amiga'] .terminal-tree { font-size: 14px; line-height: 1.7; }
  html[data-theme='amiga'] .amiga-frame-title { font-size: 14px; }
  html[data-theme='amiga'] .site-footer { margin-top: 22px; font-size: 10px; }
  html[data-theme='amiga'] body > header { padding: 16px 12px 0; }
  html[data-theme='amiga'] body > main { width: calc(100% - 24px); margin-block: 20px; padding: 20px 16px; }
  html[data-theme='amiga'] body > main h1 { font-size: 24px; }
  html[data-theme='amiga'] .theme-option { padding: 16px; }
  html[data-theme='amiga'] .theme-option span { font-size: 14px; }
}
