/* AgrarMarket shared public shell — matches the Spielerhandel dashboard */
@font-face { font-family: "Roboto Condensed Local"; src: url("fonts/roboto-condensed-400.woff2") format("woff2"); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: "Roboto Condensed Local"; src: url("fonts/roboto-condensed-600.woff2") format("woff2"); font-style: normal; font-weight: 600; font-display: swap; }
@font-face { font-family: "Roboto Condensed Local"; src: url("fonts/roboto-condensed-700.woff2") format("woff2"); font-style: normal; font-weight: 700 900; font-display: swap; }

:root {
  --am-bg: #061b1c;
  --am-bg-deep: #031415;
  --am-sidebar: #062628;
  --am-panel: #082b2c;
  --am-panel-2: #0b3434;
  --am-panel-3: #0d3b3a;
  --am-line: #17504d;
  --am-line-soft: #123e3d;
  --am-text: #f4f8f4;
  --am-muted: #9db2ae;
  --am-green: #59dc48;
  --am-green-strong: #42c832;
  --am-green-dark: #144d2c;
  --am-cyan: #10c1dc;
  --am-blue: #168fea;
  --am-red: #ff625c;
  --am-gold: #ffc047;
  --am-radius: 13px;
  --am-shadow: 0 16px 40px rgba(0, 0, 0, .2);
}

* { box-sizing: border-box; }
html { min-width: 320px; background: var(--am-bg-deep); }
body.site-redesign {
  min-height: 100vh;
  margin: 0;
  overflow-x: hidden;
  background: var(--am-bg);
  color: var(--am-text);
  font-family: "Roboto Condensed Local", "Roboto Condensed", "Arial Narrow", "Segoe UI", Arial, sans-serif;
  font-size: 14px;
}
body.site-redesign button,
body.site-redesign input,
body.site-redesign select,
body.site-redesign textarea { font: inherit; }
body.site-redesign :focus-visible { outline: 2px solid var(--am-green); outline-offset: 2px; }

.site-app-shell { display: grid; grid-template-columns: 205px minmax(0, 1fr); min-height: 100vh; }
.site-app-main { min-width: 0; }

.site-sidebar {
  position: sticky;
  top: 0;
  z-index: 50;
  display: flex;
  flex-direction: column;
  width: 205px;
  height: 100vh;
  overflow: hidden;
  border-right: 1px solid #164649;
  background: var(--am-sidebar);
  box-shadow: 10px 0 30px rgba(0, 0, 0, .16);
}
.site-brand { display: flex; align-items: center; min-height: 84px; padding: 6px 7px 6px 10px; }
.site-brand img { display: block; width: 188px; height: 68px; object-fit: contain; }
.site-navigation { position: relative; z-index: 2; display: grid; gap: 1px; }
.site-navigation a {
  position: relative;
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  align-items: center;
  min-height: 50px;
  padding: 0 16px 0 20px;
  color: #c8d5d4;
  text-decoration: none;
  transition: background-color .15s ease, color .15s ease;
}
.site-navigation a::before { position: absolute; inset: 0 auto 0 0; width: 5px; background: transparent; content: ""; }
.site-navigation a:hover { background: #0b3838; color: #fff; }
.site-navigation a.active { background: #0d443b; color: #fff; }
.site-navigation a.active::before { background: var(--am-green); box-shadow: 0 0 14px rgba(89, 220, 72, .55); }
.site-navigation svg { width: 22px; height: 22px; color: #b3ccd2; stroke-width: 2.2; }
.site-navigation a.active svg { color: #fff; }
.site-navigation span { font-weight: 650; }
.site-navigation b { display: grid; place-items: center; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 12px; background: var(--am-green); color: #093025; font-size: 10px; }
.site-navigation-separator { height: 1px; margin: 7px 18px; background: rgba(120, 172, 167, .16); }
.site-sidebar-community {
  position: relative;
  display: flex;
  align-items: flex-end;
  flex: 1;
  min-height: 215px;
  margin-top: 13px;
  padding: 0 18px 26px;
  background: #052123 url("agrarmarket-farm-hero.png") 15% bottom / auto 100% no-repeat;
  box-shadow: inset 0 0 0 999px rgba(4, 28, 30, .34), inset 0 30px 40px rgba(4, 38, 40, .95);
}
.site-sidebar-community p { position: relative; z-index: 1; margin: 0; color: #fff; font-family: "Segoe Script", "Bradley Hand", cursive; font-size: 15px; font-style: italic; line-height: 1.45; text-shadow: 0 2px 5px #000; transform: translateY(-11px) rotate(-5deg); }

.site-hero {
  position: relative;
  z-index: 30;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 106px;
  padding: 14px 25px 14px 34px;
  border-bottom: 1px solid rgba(38, 91, 86, .78);
  background: #103638 url("agrarmarket-farm-hero.png") center 46% / cover no-repeat;
  box-shadow: inset 0 0 0 999px rgba(4, 30, 31, .48), inset 0 -40px 55px rgba(4, 27, 29, .42);
}
.site-hero-heading { display: flex; align-items: center; gap: 32px; min-width: 0; }
.site-menu-toggle,
.site-hero-back { display: grid; place-items: center; flex: 0 0 39px; width: 39px; height: 39px; padding: 0; border: 0; border-radius: 7px; background: rgba(7, 49, 51, .82); color: #c9dcdc; box-shadow: 0 6px 18px rgba(0, 0, 0, .2); cursor: pointer; }
.site-menu-toggle { display: none; }
.site-menu-toggle svg,
.site-hero-back svg { width: 21px; height: 21px; }
.site-hero-title-row { display: flex; align-items: center; gap: 11px; }
.site-hero-title-row h1 { margin: 0; color: #fff; font-size: clamp(29px, 2.4vw, 39px); line-height: 1; letter-spacing: 1.3px; text-shadow: 0 2px 5px rgba(0, 0, 0, .6); }
.site-hero-title-row span { padding: 5px 19px; border: 1px solid #2a9e3f; border-radius: 14px; background: rgba(7, 63, 42, .78); color: #6cf05b; font-size: 11px; font-weight: 900; }
.site-hero-heading p { margin: 8px 0 0; color: #edf3ef; font-family: "Segoe UI", Arial, sans-serif; font-size: 13px; text-shadow: 0 2px 4px #001; }
.site-hero-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; min-width: 0; }
.site-hero-search { display: flex; align-items: center; gap: 11px; width: 228px; height: 46px; padding: 0 13px; border: 1px solid #2b686b; border-radius: 10px; background: rgba(5, 38, 41, .92); color: #e8f4f3; box-shadow: 0 8px 20px rgba(0, 0, 0, .16); }
.site-hero-search svg { width: 20px; height: 20px; flex: 0 0 auto; }
.site-hero-search input { min-width: 0; width: 100%; border: 0; background: transparent; color: #fff; outline: 0; }
.site-hero-search input::placeholder { color: #9fb5b5; }
.site-hero-search:focus-within { border-color: var(--am-green); }
.site-live-state,
.site-hero-link { display: flex; align-items: center; gap: 10px; min-height: 46px; padding: 0 14px; border: 1px solid #2b686b; border-radius: 10px; background: rgba(5, 38, 41, .92); color: #eff8f6; text-decoration: none; box-shadow: 0 8px 20px rgba(0, 0, 0, .16); }
.site-live-state > i { width: 9px; height: 9px; border-radius: 50%; background: var(--am-green); box-shadow: 0 0 0 4px rgba(89, 220, 72, .16), 0 0 14px rgba(89, 220, 72, .58); }
.site-live-state span { display: grid; line-height: 1.1; }
.site-live-state small { margin-top: 3px; color: #a7bbb7; font-size: 9px; text-transform: uppercase; }
.site-hero-link { border-color: #48bd3f; background: linear-gradient(#61df4f, #3fc932); color: #0b3b20; font-weight: 800; }
.site-hero-link svg { width: 18px; height: 18px; }
.site-hero-note { position: absolute; right: 27px; bottom: 6px; margin: 0; color: #fff; font-family: "Segoe Script", "Bradley Hand", cursive; font-size: 12px; font-style: italic; line-height: 1.15; text-align: right; text-shadow: 0 2px 4px #000; transform: rotate(-4deg); }

body.site-redesign .site-notice { width: min(1390px, calc(100% - 28px)); margin: 0 auto; }
body.site-redesign .dashboard { width: min(1390px, calc(100% - 28px)); padding: 14px 0 28px; }
body.site-redesign .page-heading { min-height: 65px; margin-bottom: 10px; padding: 0 5px; }
body.site-redesign .page-heading h1 { font-size: 27px; letter-spacing: .02em; }
body.site-redesign .eyebrow { color: #a7ee35; }
body.site-redesign .update-clock { padding: 9px 13px; border: 1px solid var(--am-line); border-radius: 8px; background: rgba(8, 43, 44, .82); }

body.site-redesign .metrics { gap: 10px; margin-bottom: 10px; }
body.site-redesign .metrics article { min-height: 88px; padding: 14px 16px; border-color: var(--am-line); border-radius: 10px; background: linear-gradient(135deg, #0c3432, #082928); box-shadow: var(--am-shadow); }
body.site-redesign .metric-icon { width: 43px; height: 43px; border-radius: 50%; background: #145542; color: var(--am-green); }
body.site-redesign .metric-icon svg { width: 22px; height: 22px; }
body.site-redesign .metrics strong { font-size: 23px; }

body.site-redesign .market-grid { grid-template-columns: 285px minmax(0, 1fr) 275px; min-height: 600px; border-color: var(--am-line); border-radius: 10px; background: var(--am-panel); box-shadow: var(--am-shadow); }
body.site-redesign .product-panel,
body.site-redesign .movers-panel { padding: 18px 14px; background: #082728; }
body.site-redesign .product-panel { border-right-color: var(--am-line); }
body.site-redesign .movers-panel { border-left-color: var(--am-line); }
body.site-redesign .search-box,
body.site-redesign .chart-tabs button,
body.site-redesign .product-item:hover,
body.site-redesign .mover-list button:hover { background: #0c3433; }
body.site-redesign .search-box { border-color: #28605d; }
body.site-redesign .product-item { border-bottom-color: #123f3d; }
body.site-redesign .product-item.selected,
body.site-redesign .chart-tabs button.active { background: var(--am-green); color: #092b1c; }
body.site-redesign .product-item .icon,
body.site-redesign .table-product .icon,
body.site-redesign .product-icon { overflow: visible; background: transparent; border: 0; box-shadow: none; }
body.site-redesign .product-item .icon img,
body.site-redesign .table-product .icon img,
body.site-redesign .product-icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
body.site-redesign .product-item .icon svg,
body.site-redesign .table-product .icon svg,
body.site-redesign .product-icon svg { width: 65%; height: 65%; color: var(--am-green); }
body.site-redesign .chart-panel { padding: 23px 25px 20px; }
body.site-redesign .quote-header,
body.site-redesign .quote-strip,
body.site-redesign .quote-strip > div,
body.site-redesign .mover-list button,
body.site-redesign .live-feed-heading,
body.site-redesign .activity-item { border-color: var(--am-line-soft); }
body.site-redesign .market-hours { border-left-color: var(--am-green); background: #0c3933; }
body.site-redesign .market-table-section { margin-top: 10px; border-color: var(--am-line); background: var(--am-panel); box-shadow: var(--am-shadow); }
body.site-redesign th { border-bottom-color: #21605b; }
body.site-redesign td { border-bottom-color: #123f3d; }
body.site-redesign tbody tr:hover { background: #0c3433; }

body.site-redesign .legal-page { width: min(1220px, calc(100% - 28px)); padding: 16px 0 34px; }
body.site-redesign .legal-hero { min-height: 150px; margin-bottom: 12px; padding: 28px 31px; border-color: var(--am-line); border-radius: 10px; background: linear-gradient(115deg, rgba(13, 62, 55, .96), rgba(7, 34, 34, .98)); box-shadow: var(--am-shadow); }
body.site-redesign .legal-hero h1 { font-size: 32px; letter-spacing: .02em; }
body.site-redesign .legal-hero p { color: #b7cbc7; }
body.site-redesign .legal-status { border-left-color: var(--am-green); background: #0b3732; }
body.site-redesign .legal-status strong { color: var(--am-green); }
body.site-redesign .legal-layout { grid-template-columns: 245px minmax(0, 1fr); gap: 12px; }
body.site-redesign .legal-toc { top: 15px; border-color: var(--am-line); background: #082829; box-shadow: var(--am-shadow); }
body.site-redesign .legal-toc a { border-bottom-color: #123e3d; color: #a9bfbb; }
body.site-redesign .legal-toc a:hover { color: var(--am-green); background: #0d3936; }
body.site-redesign .legal-content { border-color: var(--am-line); background: #082829; box-shadow: var(--am-shadow); }
body.site-redesign .legal-content section + section { border-top-color: var(--am-line-soft); }
body.site-redesign .legal-content p,
body.site-redesign .legal-content li,
body.site-redesign .legal-content address { color: #b6c8c4; }
body.site-redesign .legal-note { border-left-color: var(--am-green); background: #0d3934; }
body.site-redesign .legal-table th,
body.site-redesign .legal-table td { border-color: var(--am-line-soft); }
body.site-redesign .legal-button.primary { border-color: var(--am-green-strong); background: var(--am-green); color: #0a301e; }

body.site-redesign .site-footer { width: min(1390px, calc(100% - 28px)); align-items: center; margin: auto; padding: 18px 0 24px; border-top: 1px solid var(--am-line-soft); color: #819b97; }
body.site-redesign .site-footer b { color: #dce9e6; }
body.site-redesign .site-footer a { color: var(--am-green); }
body.site-redesign .legal-links { display: flex; flex-wrap: wrap; gap: 14px; }
body.site-redesign .site-navigation a[href*="#faq"] span { font-size: 15px; font-weight: 800; }
body.site-redesign .site-footer { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px 18px; }
body.site-redesign .site-footer > span { flex: 1 1 320px; text-align: center; }
body.site-redesign .site-footer .display-settings { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
body.site-redesign .site-footer .display-settings label { display: flex; align-items: center; gap: 6px; font-size: 10px; text-transform: uppercase; }
body.site-redesign .site-footer .display-settings select { min-height: 30px; padding: 4px 26px 4px 8px; border: 1px solid var(--am-line); border-radius: 6px; background: #082829; color: #dce9e6; }

.site-sidebar-overlay { display: none; }

@media (max-width: 1260px) {
  body.site-redesign .market-grid { grid-template-columns: 270px minmax(0, 1fr); }
  body.site-redesign .movers-panel { grid-column: 1 / -1; border-top: 1px solid var(--am-line); border-left: 0; }
  body.site-redesign .mover-list { grid-template-columns: repeat(4, 1fr); }
  .site-hero-search { width: 190px; }
  .site-hero-note { display: none; }
}

@media (max-width: 900px) {
  .site-app-shell { grid-template-columns: minmax(0, 1fr); }
  .site-sidebar { position: fixed; left: -225px; transition: left .2s ease; }
  body.site-sidebar-open .site-sidebar { left: 0; }
  .site-sidebar-overlay { position: fixed; inset: 0; z-index: 45; display: block; border: 0; background: rgba(0, 10, 12, .7); opacity: 0; visibility: hidden; transition: opacity .2s ease, visibility .2s ease; }
  body.site-sidebar-open .site-sidebar-overlay { opacity: 1; visibility: visible; }
  .site-menu-toggle { display: grid; }
  .site-hero-back { display: none; }
  .site-hero { padding-left: 16px; }
  .site-hero-heading { gap: 13px; }
  .site-hero-search { display: none; }
  body.site-redesign .legal-layout { grid-template-columns: 1fr; }
  body.site-redesign .legal-toc { position: static; }
}

@media (max-width: 680px) {
  .site-hero { min-height: 92px; padding: 12px; }
  .site-hero-title-row h1 { font-size: 28px; }
  .site-hero-title-row span { display: none; }
  .site-hero-heading p { max-width: 60vw; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .site-live-state { padding: 0 11px; }
  .site-live-state small,
  .site-hero-link { display: none; }
  body.site-redesign .dashboard,
  body.site-redesign .legal-page,
  body.site-redesign .site-footer { width: calc(100% - 18px); }
  body.site-redesign .metrics { grid-template-columns: 1fr 1fr; }
  body.site-redesign .legal-hero { display: grid; padding: 22px; }
  body.site-redesign .legal-status { min-width: 0; }
}

@media (max-width: 440px) {
  .site-hero-heading p { max-width: 52vw; }
  body.site-redesign .metrics { grid-template-columns: 1fr; }
  body.site-redesign .legal-content { padding: 22px 19px; }
}
.site-guest .site-navigation > :not([data-public-market]):not([data-public-supporters]){display:none!important}
.agrar-page-loader{position:fixed;z-index:10000;inset:0;display:grid;place-items:center;background:linear-gradient(145deg,#04191aeF,#072c2dee);opacity:1;visibility:visible;transition:opacity .38s ease,visibility .38s ease;backdrop-filter:blur(9px)}
.agrar-loader-card{display:grid;justify-items:center;width:min(300px,calc(100% - 40px));padding:25px 28px 23px;border:1px solid #28605d;border-radius:14px;background:#082829f5;color:#dce9e6;box-shadow:0 28px 80px #000b}.agrar-loader-card img{width:178px;height:61px;object-fit:contain}.agrar-loader-spinner{width:30px;height:30px;margin:16px 0 13px;border:3px solid #59dc4835;border-top-color:#59dc48;border-radius:50%;animation:agrar-loader-spin .72s linear infinite}.agrar-loader-card strong{font-size:14px}.agrar-loader-card small{margin-top:5px;color:#8eaaa6;font-size:10px}.agrar-loader-track{width:100%;height:3px;margin-top:18px;overflow:hidden;border-radius:3px;background:#164744}.agrar-loader-track i{display:block;width:38%;height:100%;border-radius:inherit;background:#59dc48;animation:agrar-loader-track 1.1s ease-in-out infinite}.agrar-page-loader.is-done{opacity:0;visibility:hidden;pointer-events:none}
@keyframes agrar-loader-spin{to{transform:rotate(360deg)}}@keyframes agrar-loader-track{0%{transform:translateX(-110%)}100%{transform:translateX(275%)}}
@media(prefers-reduced-motion:reduce){.agrar-loader-spinner,.agrar-loader-track i{animation:none}.agrar-page-loader{transition:none}}

/* v0.35.5d: gleiche Community-Navigation auf der Marktübersicht; Accountkopf bleibt bewusst nur im Community-Bereich */
.site-navigation a.nav-child { min-height: 43px; padding-left: 51px; grid-template-columns: 30px minmax(0, 1fr) auto; background: #0b2729; }
.site-navigation a.nav-child svg { width: 18px; height: 18px; }
.site-navigation a.nav-child span { font-size: 13px; }
.site-navigation a.feature-readonly::after {
  content: "TEST";
  margin-left: auto;
  padding: 2px 6px;
  border: 1px solid rgba(255, 190, 43, .45);
  border-radius: 3px;
  color: #f6c342;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .08em;
}
.site-hero-notification {
  position: relative;
  display: grid;
  place-items: center;
  flex: 0 0 46px;
  width: 46px;
  height: 46px;
  border: 1px solid #2b686b;
  border-radius: 10px;
  background: rgba(5, 38, 41, .92);
  color: #e7f1f2;
  text-decoration: none;
  box-shadow: 0 8px 20px rgba(0, 0, 0, .16);
}
.site-hero-notification svg { width: 21px; height: 21px; }
.site-account-actions { position: relative; display: flex; align-items: center; }
.site-discord-identity {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 203px;
  height: 51px;
  padding: 5px 12px 5px 7px;
  border: 1px solid #2d6869;
  border-radius: 11px;
  background: rgba(4, 36, 39, .92);
  color: #fff;
  text-align: left;
  cursor: pointer;
  box-shadow: 0 8px 20px rgba(0, 0, 0, .16);
}
.site-discord-identity img,
.site-discord-avatar-fallback { flex: 0 0 37px; width: 37px; height: 37px; border: 2px solid #84b6b4; border-radius: 50%; background: #173e40; object-fit: cover; }
.site-discord-avatar-fallback { display: grid; place-items: center; color: #fff; font-size: 11px; font-weight: 900; }
.site-discord-identity > span:not(.site-discord-avatar-fallback) { display: grid; min-width: 0; flex: 1; }
.site-discord-identity b { overflow: hidden; color: #fff; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.site-discord-identity small { margin-top: 2px; overflow: hidden; color: #c0d1d0; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.site-discord-identity > svg { width: 16px; height: 16px; flex: 0 0 auto; color: #d7e4e2; }
.site-account-menu {
  position: absolute;
  top: 57px;
  right: 0;
  z-index: 80;
  width: 178px;
  padding: 6px;
  border: 1px solid #2d6869;
  border-radius: 8px;
  background: #06292b;
  box-shadow: var(--am-shadow);
}
.site-account-menu a,
.site-account-menu button { display: flex; align-items: center; gap: 8px; width: 100%; min-height: 36px; padding: 0 10px; border: 0; border-radius: 5px; background: transparent; color: #f0f6f4; font: inherit; text-decoration: none; cursor: pointer; }
.site-account-menu a:hover,
.site-account-menu button:hover { background: #0e3a3b; }
.site-account-menu svg { width: 17px; height: 17px; }

@media (max-width: 1260px) {
  .site-discord-identity { min-width: 165px; }
}
@media (max-width: 1050px) {
  .site-discord-identity { min-width: 0; width: 48px; padding: 5px; }
  .site-discord-identity > span:not(.site-discord-avatar-fallback),
  .site-discord-identity > svg { display: none; }
}
@media (max-width: 680px) {
  .site-hero-notification { display: none; }
  .site-account-actions { margin-left: auto; }
}

/* v0.35.5d: native hidden semantics dürfen nie durch Komponenten-CSS überschrieben werden. */
[hidden]{display:none !important;}
