/* The global layer of the attendee design system.
 *
 * Every rule below is a BYTE-FOR-BYTE copy of a top-level rule in
 * design/custom-css-baseline.css — the snapshot of Setting[code: "custom_css"],
 * the 1,815-line row an operator edits through the admin UI. The `baseline:N-M`
 * markers give the source lines.
 *
 * Why these 21 blocks and not the other 19: these are the rules that are not
 * scoped to a page. 1,641 of the baseline's lines sit inside a body-ID block
 * (#shop, #login, #performers-pay …) and cannot reach a page that does not name
 * them. These 112 apply everywhere, including to screens that do not exist yet,
 * which is why they are the first thing worth having in the repo.
 *
 * THIS CHANGES NO RENDERING, and the reason is ordering, not luck. The row is
 * still injected — raw, into a <style> block in <head>, after every linked
 * stylesheet — so for any declaration here there is an identical declaration
 * later in the cascade with identical specificity and identical !important.
 * The database copy wins every tie it is in, exactly as it does today. Nothing
 * here can beat a rule in application.css that the row does not already beat.
 *
 * TWO THINGS THAT FOLLOW FROM THAT, and are easy to forget:
 *
 * 1. Deleting one of these rules from the Setting row no longer removes it.
 *    The copy here takes over silently. That row is the emergency channel for
 *    hot-patching a live show, so anyone editing it mid-run needs to know this
 *    file exists. Until the row is emptied of these lines (a post-run step),
 *    edit BOTH or neither.
 * 2. Re-capture the row and diff these blocks before this merges, every time.
 *    Done 2026-09-14 against production (settings id 103, untouched since
 *    2025-11-09), and it caught one: `.footer` at baseline:793 contains a
 *    NON-BREAKING SPACE between the selector and the brace. U+00A0 is not CSS
 *    whitespace — it is a valid identifier character — so the live selector is
 *    the class "footer ", which matches nothing, and that rule has never
 *    applied. The 2026-09-13 snapshot had it as two ordinary spaces, which
 *    would have made this file quietly resurrect a dead rule and push every
 *    attendee footer down by 2rem. It is copied here exactly as it ships,
 *    invisible character and all. Do not "clean" it.
 *
 * Kept verbatim on purpose. Tokenising, renaming and de-duplicating these rules
 * is the component refactor, and it belongs after the run — a verbatim move and
 * a rewrite are two changes, and only one of them is safe three weeks out.
 *
 * Linked into application, store and minimum — never admin — and linked AFTER
 * application.css, which is where these rules have always sat relative to it.
 * Loading them earlier looks identical today, because the row wins either way,
 * and would quietly hand application.css a set of fights it has always lost the
 * day the row is emptied.
 */

/* The font import is NOT copied. baseline:1 pulls IBM Plex Sans from Google
 * Fonts, and a second @import here would be the one thing in this file that is
 * not inert: same URL, so no second download, but a second render-blocking
 * import discovered at a different moment, which is a font-loading timing
 * change on a page nobody is allowed to change this month. It belongs to the
 * step that empties the row — at which point the type dependency has to move
 * here, and should become a local asset rather than a call the venue's wifi
 * has to make mid-show. */

/* baseline:3-9 */
:root {
  --green: #1aaf13;
  --dk-green: #1a8754;
  --bs-font-sans-serif: "IBM Plex Sans", "Helvetica Neue", Arial, "Noto Sans",
    "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
    "Segoe UI Symbol", "Noto Color Emoji";
}

/* baseline:11-13 */
body {
  background: #fefefe;
}

/* baseline:15-19 */
/* Hide About Company and Show Program Nav Links */
#company-nav-link,
#show-program-nav-link {
  display: none;
}

/* baseline:25-28 */
/*hide Faq link*/
.nav-item:nth-child(7) {
  display: none; 
}

/* baseline:138-141 */
/* stat box chud symbol */
h3#chuds-balance::before {
  content: "¢";
}

/* baseline:143-148 */
/* stat box level */
.mt-4 {
  margin-top: 0.5rem !important;
  padding-right: 0;
  padding-left: 0;
}

/* baseline:793-796 */
.footer  {
  margin-top: 2rem !important;
  line-height: 1 !important;
}

/* baseline:798-800 */
footer.footer {
  line-height: 1em;
}

/* baseline:802-808 */
footer .text-muted {
  font-size: 12px;
  a {
    color: #1aaf11;
    text-transform: uppercase;
  }
}

/* baseline:810-826 */
/* Nav Bar */
.navbar:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 35px;
  backdrop-filter: blur(1px);
  box-shadow: inset -10px -8px 0px -11px rgba(255, 255, 255, 1),
    inset 0px -9px 0px -8px rgba(255, 255, 255, 1);
  opacity: 0.6;
  z-index: -1;
  filter: blur(1px) drop-shadow(10px 4px 6px black) brightness(115%);
}

/* baseline:828-835 */
.navbar {
  border-radius: 35px;
  background: rgba(255, 255, 255, 0.65);
  border: 1px solid rgba(255, 255, 255, 0.75);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.06), 0 2px 6px rgba(0, 0, 0, 0.08);
  backdrop-filter: blur(2px) saturate(180%);
  margin: 10px;
}

/* baseline:837-841 */
.navbar img {
  width: auto%;
  margin-left: 10px;
  max-height: 2rem !important;
}

/* baseline:843-845 */
.navbar .container {
    --flex-wrap: nowrap;
}

/* baseline:847-849 */
.navbar.has(.navbar-collapse.show) {
  border-radius: 50px !important;
}

/* baseline:851-855 */
.navbar-toggler {
  border-radius: 20rem;
  padding: 0.6rem;
  margin-right: 0 !important;
}

/* baseline:857-862 */
.navbar.d-flex {
  align-items: center;
  justify-content: center;
  height: 2rem;
  --max-height: 2rem;
}

/* baseline:864-867 */
a.nav-link.position-relative.d-lg-none {
  display: flex;
  align-items: center;
}

/* baseline:869-871 */
.mt-4 {
  text-align: center;
}

/* baseline:1575-1582 */
.alert {
  line-height: 1.2;
  font-size: 0.9rem;
  margin-bottom: 0;
  border-radius: 0;
  border: none;
  width: 100%;
}

/* baseline:1584-1587 */
.alert-success {
  color: #000000;
  background-color: #d0d0d0;
}

/* baseline:1589-1591 */
.d-flex.mt-5:has(.alert) {
  margin-bottom: 1rem !important;
}
