/* Reset + brand tokens shared across hub and staff */

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html, body {
  height: 100%;
  width: 100%;
  overflow: hidden;
  overscroll-behavior: none;
}

body {
  font-family: "Nunito", "Segoe UI", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  color: var(--ink);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  -webkit-tap-highlight-color: transparent;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
}

button {
  font-family: inherit;
  color: inherit;
  border: none;
  background: none;
  cursor: pointer;
  font-size: inherit;
}

button:focus-visible {
  outline: 3px solid var(--focus);
  outline-offset: 3px;
}

/* --- Brand tokens (SWOOT palette) --------------------------------- */

:root {
  /* Signature colours sampled from SWOOT logo marks */
  --purple:       #701850;   /* signature */
  --purple-deep:  #4a0f34;
  --purple-tint:  #f2e7ee;
  --purple-soft:  #e3cddb;

  --lime:         #E0F848;   /* CTA/accent */
  --lime-deep:    #b8cf2f;
  --lime-tint:    #f6fcd7;

  --coral:        #E85068;
  --coral-tint:   #fde3e7;

  --sage:         #90D0B0;
  --sage-tint:    #e6f4ec;

  --teal:         #005050;

  /* Neutrals */
  --bg:           #fbf7f4;   /* warm cream page */
  --bg-elev:      #ffffff;
  --ink:          #1a1220;   /* deep aubergine ink */
  --ink-mute:     #6b5a67;
  --line:         #e6dce3;

  --brand:        var(--purple);
  --brand-deep:   var(--purple-deep);
  --brand-tint:   var(--purple-tint);
  --accent:       var(--lime);
  --danger:       var(--coral);
  --ok:           #2f8558;
  --focus:        var(--lime-deep);
  --shadow:       0 12px 32px rgba(74, 15, 52, 0.10),
                  0 2px 6px  rgba(74, 15, 52, 0.06);
}

/* --- Shared wordmark ---------------------------------------------- */

.wordmark {
  font-family: "Nunito", "Segoe UI", sans-serif;
  font-weight: 900;
  letter-spacing: -0.03em;
  color: var(--brand);
  display: inline-block;
  line-height: 1;
}
