/* Ribbita lime/olive palette, with #28B143 sampled from Punk #9098's hair. */
@font-face {
  font-family: 'Martian Mono';
  src: url('assets/fonts/martian-mono-latin.woff2') format('woff2');
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
}
:root {
  --atlas-font: 'Martian Mono', ui-monospace, monospace;
  --tibbir-green: #c3ff00;
  --lime: #c3ff00;
  --olive: #4c5b01;
  --deep-olive: #3a4600;
  --punk-green: #28b143;
  --punk-green-ink: #86de98;
  --punk-green-surface: #0d2915;
  --punk-green-border: #256436;
  --muted: #a5b379;
  --border: #2e3910;
  --panel: #141a04;
  --canvas-card-border: #354211;
  --canvas-marker: #28b143;
  --soft: #1d2705;
  --header-height: 84px;
  font-family: var(--atlas-font);
  color: #e6edcd;
  background: #000;
  color-scheme: dark;
  -webkit-font-smoothing: antialiased;
  font-variant-numeric: tabular-nums;
}
body {display:flex;flex-direction:column;min-height:100dvh;height:auto;padding-bottom:0;background:#000}
body>main {height:calc(100dvh - var(--header-height));flex:none;min-height:320px}
.topbar {height:84px;flex:none;gap:32px;background:#000;padding-inline:24px}
.brand {gap:14px;color:var(--lime);font-family:var(--atlas-font)}
.atlas-symbol {display:block;width:51.5px;height:40px;object-fit:contain;flex:none}
.atlas-wordmark {display:flex;flex-direction:column;gap:5px;font-size:16px;font-weight:500;line-height:1;letter-spacing:-.5px}
.atlas-wordmark>span {font-size:11px;letter-spacing:3.3px;font-weight:300}
.account {font-size:11px;color:var(--muted)}
.separator {color:var(--olive);margin-inline:10px}
.header-actions {gap:8px}
.header-actions button {min-height:40px;font-size:11px;border-radius:4px}
.header-actions .donate-button {color:var(--lime);border-color:var(--olive);background:var(--panel)}
.header-actions .download-data-button {background:transparent;color:var(--lime);border-color:var(--lime)}
.header-actions .download-data-button:hover {background:transparent;color:#d2ff42;border-color:#d2ff42}
.sidebar {width:228px;min-width:228px;background:#090c02;padding-top:20px}
.sidebar nav {gap:16px}
.sidebar-nav-heading {color:var(--muted);font-size:9px;letter-spacing:1.5px}
.sidebar nav button {font-size:11px;gap:10px;border-radius:4px;color:#c1cd9d}
.sidebar nav button>span {color:var(--muted)}
.sidebar nav button.active {background:var(--deep-olive);color:var(--lime);box-shadow:inset 2px 0 var(--lime)}
.sidebar nav button.active>span {color:var(--lime)}
.sidebar-coverage {border-radius:5px;background:var(--panel)}
.sidebar .collection-card strong {font-family:var(--atlas-font);font-size:10px}
.sidebar .collection-card .status-chip {font-size:9px;color:var(--muted)}
#reader-settings-button {font-size:9px}
.workspace {background:#000}
.workspace-header {background:#000}
.workspace-header h1 {font-size:16px;letter-spacing:-.6px;color:var(--lime)}
.workspace-header .result-count {font-size:10px;color:var(--muted);max-width:none}
.workspace-controls .search {background:var(--panel);border-color:var(--border);border-radius:4px}
.workspace-controls .search input {font-size:11px}
.workspace-controls .toolbar-trigger {background:var(--panel);color:var(--lime);border-radius:4px;font-size:11px}
.content {min-height:0}
.workspace-footer {height:auto;min-height:34px;padding-block:8px;gap:8px;background:#090c02;font-size:9px;line-height:1.5}
#live-update-status {font-size:9px}
.canvas-viewport,.word-bubble-map {background-color:#000;background-image:radial-gradient(#c3ff0024 .7px,transparent .7px)}
.canvas-viewport:focus-visible {outline:2px solid var(--lime);outline-offset:-2px}
.post-card {background:var(--panel);border-color:var(--canvas-card-border);border-radius:7px}
.post-card:hover,.post-card.selected {background:#1d2705;border-color:var(--olive)}
.post-card .card-text {font-size:12px;line-height:1.7}
.post-card .card-name {color:var(--lime)}
.post-card .card-date,.post-card .card-handle,.post-card .card-metrics {font-size:9px}
.post-byline {display:flex;margin-bottom:12px;text-align:left}
.post-author {display:inline-flex;align-items:center;gap:9px;min-width:0;line-height:1.4;text-align:left}
.post-author .post-author-avatar {display:block;flex:none;width:32px;height:32px;margin:0;border-radius:50%;object-fit:cover;image-rendering:pixelated;outline:1px solid #ffffff1a}
.post-author .post-author-fallback {display:grid;place-items:center;background:var(--deep-olive);color:var(--lime);font-size:15px}
.post-author-copy {display:block;min-width:0}
.post-author .post-author-name {display:block;margin:0;font-family:var(--atlas-font);font-size:11px;font-weight:500;color:#e6edcd;line-height:1.4}
.post-author .post-author-handle {display:block;margin:2px 0 0;font-family:var(--atlas-font);font-size:9px;font-weight:400;color:var(--muted);line-height:1.4}
.reading-author {flex-wrap:wrap}
.reading-author .post-author-avatar,.inspector-author .post-author-avatar {width:40px;height:40px}
.reading-author .post-author-name,.inspector-author .post-author-name {font-size:13px}
.reading-author .post-author-handle,.inspector-author .post-author-handle {font-size:10px}
.post-card .post-author {gap:8px}
.post-card .post-author-avatar {width:28px;height:28px}
.word-bubble-shape {background:rgba(195,255,0,var(--bubble-opacity));color:#e6edcd;box-shadow:inset 0 0 0 1px #c3ff0040}
.word-bubble:hover .word-bubble-shape,.word-bubble:focus-visible .word-bubble-shape {background:var(--deep-olive);box-shadow:inset 0 0 0 2px var(--lime)}
.word-bubble-label {font-family:var(--atlas-font);white-space:nowrap;overflow-wrap:normal;letter-spacing:0}
.donation-logo {width:72px;height:auto;margin:24px 0}
.intro-atlas-symbol {width:40px;height:31px;object-fit:contain}
.independence-banner {position:static;flex:none;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:80px;padding:14px 24px;background:var(--olive);color:var(--lime);border-top:1px solid #c3ff004d;padding-bottom:max(14px,env(safe-area-inset-bottom))}
.independence-copy {min-width:0}
.independence-copy p {margin:0;font-size:11px;line-height:1.8;text-wrap:pretty}
.project-credit {font-weight:500}
.affiliation-notice {font-weight:300}
.project-credit a {display:inline-block;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#c3ff0080}
.project-credit a:hover {text-decoration-color:var(--lime)}
.ribbit-hole-signature {display:flex;align-items:center;gap:14px;min-height:48px;flex:none;color:var(--lime);border-radius:4px}
.ribbit-hole-signature>span {font-size:9px;line-height:1.6;letter-spacing:1.3px}
.ribbit-hole-signature>img {display:block;width:60px;height:auto;transition:transform .2s ease}
.ribbit-hole-signature:hover>img,.ribbit-hole-signature:focus-visible>img {transform:translateY(-3px) rotate(-3deg)}
.ribbit-hole-signature:active {scale:.96}
h1,h2,h3 {text-wrap:balance}
button.primary {color:var(--deep-olive)}
button.primary:hover {background:#d2ff42}
::selection {color:#000;background:var(--lime)}
@media(min-width:701px) and (max-width:1100px) {
  .inspector {top:var(--header-height);bottom:0}
  .independence-copy p {font-size:9px}
}
@media(max-width:700px) {
  body {height:auto;min-height:100svh;padding-bottom:0}
  body>main {height:calc(100svh - var(--header-height,96px));min-height:480px;flex:none}
  .topbar {height:auto;min-height:96px;padding:12px 14px;gap:12px;flex-wrap:wrap}
  .brand {gap:10px}
  .atlas-symbol {width:41.2px;height:32px}
  .atlas-wordmark {font-size:13px}
  .atlas-wordmark>span {font-size:9px;letter-spacing:2.6px}
  .header-actions {gap:6px}
  .header-actions button {font-size:9px;padding:8px}
  .sidebar {width:52px;min-width:52px;padding:12px 4px}
  .sidebar nav {gap:12px}
  .sidebar nav button {font-size:0;gap:0;padding:10px 0}
  .sidebar nav button>span {font-size:18px}
  .workspace-header h1 {font-size:14px}
  .workspace-header .result-count {font-size:9px}
  .workspace-controls .search input {font-size:10px}
  .workspace-controls .toolbar-trigger {font-size:10px}
  .independence-banner {position:static;gap:16px;padding:18px 14px;align-items:center;min-height:112px}
  .independence-copy p {font-size:9px;line-height:1.9}
  .project-credit {margin-bottom:6px!important}
  .ribbit-hole-signature>span {display:none}
  .ribbit-hole-signature>img {width:50px}
  .inspector {top:var(--header-height);bottom:0;z-index:20}
}
@media(max-width:380px) {
  .topbar {min-height:124px}
  .header-actions {width:100%;margin:0}
  .header-actions button {flex:1}
}
@media(prefers-reduced-motion:reduce) {
  .ribbit-hole-signature>img {transition:none}
  .ribbit-hole-signature:hover>img,.ribbit-hole-signature:focus-visible>img {transform:none}
  .ribbit-hole-signature:active {scale:1}
}

/* The original transparent Punk emerges from the header's bottom edge. */
.topbar .brand {position:relative;align-self:stretch;padding-left:90px;min-height:83px}
.topbar .atlas-punk {position:absolute;left:0;bottom:-1px;width:84px;height:84px;object-fit:contain;image-rendering:pixelated}
/* Lime carries primary actions; Punk green identifies selection and secondary actions. */
.topbar .atlas-wordmark {color:var(--punk-green)}
.topbar .atlas-wordmark>span {color:var(--lime)}
.topbar .separator {color:var(--punk-green)}
.sidebar nav button.active {background:var(--punk-green-surface);color:var(--punk-green-ink);box-shadow:inset 3px 0 var(--punk-green)}
.sidebar nav button.active>span {color:var(--punk-green)}
.post-card:hover,.post-card.selected {border-color:var(--punk-green);background:#14240b}
.post-author .post-author-avatar {outline-color:var(--punk-green-border)}
.workspace-actions #share-view-button {background:var(--punk-green-surface);border-color:var(--punk-green-border);color:var(--punk-green-ink)}
.workspace .feed-kind,.workspace .users-post-kind {background:var(--punk-green-surface);color:var(--punk-green-ink)}
.workspace .feed-actions .bookmark-button[aria-pressed=true] {background:var(--punk-green-surface);color:var(--punk-green-ink)}
.workspace .users-row[aria-pressed=true] {background:var(--punk-green-surface);border-color:var(--punk-green-border);box-shadow:inset 3px 0 var(--punk-green)}
.companies-view .company-kind-tabs button[aria-pressed=true] {box-shadow:inset 0 -2px var(--punk-green);color:var(--punk-green-ink)}
.companies-view .company-bar i {background:var(--punk-green)}
.atlas-calendar>.atlas-day.is-selected {box-shadow:inset 0 0 0 2px var(--punk-green);border-color:var(--punk-green)}
@media(max-width:700px) {
 .topbar {display:grid;grid-template-columns:minmax(0,1fr) auto;height:96px;min-height:96px;padding:0 12px;gap:10px}
 .topbar .brand {height:100%;min-height:0;padding-left:56px;gap:0}
 .topbar .atlas-punk {width:72px;height:72px;left:-8px}
 .topbar .atlas-wordmark {font-size:12px}
 .topbar .atlas-wordmark>span {font-size:8px;letter-spacing:2.7px}
 .topbar .header-actions {width:auto;margin:0;flex-direction:column;gap:4px}
 .topbar .header-actions button {min-height:38px;padding:7px 8px;font-size:8px;flex:none}
}
