/* Hawk — the ask box.

   NOT a modal. There is no scrim, nothing is dimmed or blurred, and the rest of the app stays
   fully clickable while it is open. That is the whole point: you keep it open, you move around
   the app, and it is still there to ask.

   Small on purpose. It holds one answer — the last one — and sizes itself to that answer, so it
   never becomes a panel. A box that grows with every question is a drawer with extra steps.

   THE NAVY IS DELIBERATE AND IS ITS OWN SURFACE. The app's accent is green; this box is navy,
   matching the mark's tile rather than the buttons. Tate's mockup, 2026-09-21. The three values
   below were sampled out of that mockup rather than guessed, so nothing here is "about right".
   See the note on --hawk-navy in §9's open brand decision: the tile is #183178 and these are not
   it, which is a question for the brand pass, not for this file. */

:root {
  /* The Champ sheet (2026-10-14): the phone's white sheet, drawn in the website's own tokens (--panel, --text ...), so it
     follows Light / Dark / Cream with the page. The names --hawk-navy* stay (other rules use them); they are surfaces now. */
  --hawk-navy: var(--panel-2, #242424);      /* the plan-save card, the field */
  --hawk-navy-lift: var(--panel, #1E1E1E);   /* the sheet */
  --hawk-dim: var(--text-2, rgba(255,255,255,.72));   /* secondary text */
  --hawk-ink: var(--text, rgba(255,255,255,.87));     /* primary text */
  --hawk-rule: var(--line, rgba(255, 255, 255, .10));
  --hawk-fg: var(--fg-rgb, 255,255,255);              /* tint for rows: ink at low alpha */
  --hawk-brand: #AFC3EE;                              /* "Champ", the greeting (the phone's navy, lifted for dark) */
  --hawk-send-bg: #2A4A8F;
  --hawk-sel-bg: #AFC3EE; --hawk-sel-ink: #101a33;
  --hawk-link: #9fb4ff; --hawk-link-2: #cdd7ff; --hawk-link-rgb: 159,180,255; --hawk-focus: #8fa6ff;
  --hawk-good: #7fe3b5; --hawk-good-rgb: 127,227,181;
  --hawk-warn: #ffcf7a; --hawk-warn-rgb: 255,207,122;
  --hawk-cc1-bg: #271C45; --hawk-cc1-ink: #CDBEFF; --hawk-cc2-bg: #3A1529; --hawk-cc2-ink: #F9B4D6;
  --hawk-cc3-bg: #0E2D2B; --hawk-cc3-ink: #5FD9C9; --hawk-cc4-bg: #172748; --hawk-cc4-ink: #A9C6FF;
  /* Champ, the phone app's bird (app/index.html CHAMP), byte for byte: the launcher and the greeting draw it. */
  --hawk-champ: url("data:image/webp;base64,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");
  /* Hawk's face, once. The launcher and the greeting both draw it, and a second copy of a 7.8KB
     data URI in the same stylesheet is 7.8KB nobody needs. */
  --hawk-face: url("data:image/png;base64,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");
}

:root[data-theme="light"], :root[data-theme="cream"] {
  --hawk-brand: #16336B;
  --hawk-send-bg: #16336B;
  --hawk-sel-bg: #16336B; --hawk-sel-ink: #fff;
  --hawk-link: #16336B; --hawk-link-2: #16336B; --hawk-link-rgb: 22,51,107; --hawk-focus: #2563EB;
  --hawk-good: #11633C; --hawk-good-rgb: 17,99,60;
  --hawk-warn: #744600; --hawk-warn-rgb: 116,70,0;
  --hawk-cc1-bg: #EFE7FF; --hawk-cc1-ink: #5B21B6; --hawk-cc2-bg: #FCE4F0; --hawk-cc2-ink: #9D174D;
  --hawk-cc3-bg: #DDF5F1; --hawk-cc3-ink: #0B5F58; --hawk-cc4-bg: #E3ECFF; --hawk-cc4-ink: #1E40AF;
}

.hawk-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

/* ------------------------------------------------------------------------------------------------
   The way in
   ------------------------------------------------------------------------------------------------ */
/* The phone's Champ (2026-10-14): the bird under an "Ask Me!" bubble, no circle, drifting gently. */
.hawk-fab {
  position: fixed;
  right: 12px;
  bottom: calc(10px + env(safe-area-inset-bottom, 0px));
  z-index: 9000;
  width: 68px;
  padding: 0;
  border: 0;
  border-radius: 14px;
  background: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.hawk-fab__bub {
  background: #fff;
  border: 2px solid #16336B;
  color: #16336B;
  font: 900 11px/1.2 Nunito, system-ui, sans-serif;
  padding: 3px 9px;
  border-radius: 13px;
  position: relative;
  white-space: nowrap;
  box-shadow: 0 4px 10px rgba(22, 51, 107, .15);
}
.hawk-fab__bub::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -6px;
  width: 8px;
  height: 8px;
  background: #fff;
  border: 2px solid #16336B;
  border-top: 0;
  border-left: 0;
  transform: translateX(-50%) rotate(45deg);
}
.hawk-fab__bird {
  display: block;
  width: 50px;
  height: 60px;
  margin-top: 3px;
  background: var(--hawk-champ) center / contain no-repeat;
  filter: drop-shadow(0 8px 10px rgba(22, 51, 107, .28));
  animation: hawk-soar 4.8s ease-in-out infinite;
}
@keyframes hawk-soar { 0%, 100% { transform: translateY(0) rotate(0); } 30% { transform: translateY(-6px) rotate(-2.5deg); } 65% { transform: translateY(-2px) rotate(2deg); } }
@media (prefers-reduced-motion: reduce) { .hawk-fab__bird { animation: none; } }
.hawk-fab[aria-expanded="true"] .hawk-fab__bub { display: none; }
:root[data-theme="dark"] .hawk-fab__bub, :root[data-theme="dark"] .hawk-fab__bub::after { background: var(--panel, #141B2B); border-color: #AFC3EE; color: #AFC3EE; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]):not([data-theme]) .hawk-fab__bub, :root:not([data-theme="light"]):not([data-theme]) .hawk-fab__bub::after { background: var(--panel, #141B2B); border-color: #AFC3EE; color: #AFC3EE; } }
.hawk-fab:hover .hawk-fab__bird { filter: drop-shadow(0 10px 12px rgba(22, 51, 107, .38)); }
.hawk-fab:focus-visible { outline: 3px solid #8fa6ff; outline-offset: 3px; }
.hawk-fab[hidden] { display: none !important; }

/* On a phone the icon stands alone — the corner is scarce and the wordmark is the first thing
   that can go without costing anything a returning student needs. */
@media (max-width: 720px) {
  .hawk-fab { bottom: calc(var(--hawk-navclear, 74px) - 6px + env(safe-area-inset-bottom, 0px)); }
}

/* ------------------------------------------------------------------------------------------------
   The box
   ------------------------------------------------------------------------------------------------ */
/* The box sits ABOVE the launcher rather than over it. The hawk circle is never covered and never
   hidden, so there is always one thing in that corner you can press — which is the whole ask:
   move around the app, and Hawk is still right there. 52px of button plus a 10px gap. */
.hawk-box {
  position: fixed;
  z-index: 9010;
  right: 14px;
  bottom: calc(84px + env(safe-area-inset-bottom, 0px));
  width: 340px;
  max-width: calc(100vw - 28px);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  border-radius: 14px;
  overflow: hidden;
  background: var(--hawk-navy-lift);
  color: var(--hawk-ink);
  /* A shadow rather than a scrim. It lifts the box off the page without taking the page away. */
  box-shadow: 0 16px 44px rgba(4, 12, 36, .34);
}

/* A phone is not a small desktop: the box spans the width, still sits above the tab bar, and is
   capped so the page above it stays readable. A sheet that eats the screen is a modal with extra
   steps. */
@media (max-width: 720px) {
  .hawk-box {
    left: 10px;
    right: 10px;
    width: auto;
    max-width: none;
    bottom: calc(var(--hawk-navclear, 74px) + 68px + env(safe-area-inset-bottom, 0px));
  }
}

/* ------------------------------------------------------------------------------------------------
   Header
   ------------------------------------------------------------------------------------------------ */
/* The header is the handle. `touch-action: none` is what stops a phone scrolling the page out
   from under a drag, and `user-select: none` stops the title highlighting as you move it. */
.hawk-head {
  flex: none;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 11px 10px 11px 14px;
  background: var(--hawk-navy);
  border-bottom: 1px solid var(--hawk-rule);
  cursor: grab;
  touch-action: none;
  -webkit-user-select: none;
  user-select: none;
}
.hawk-box--moving .hawk-head { cursor: grabbing; }
/* No shadow transition mid-drag — it reads as lag on a slow phone. */
.hawk-box--moving { box-shadow: 0 22px 60px rgba(4, 12, 36, .46); }
.hawk-x { cursor: pointer; }
.hawk-head__spark { display: flex; color: var(--hawk-ink); flex: none; }
.hawk-head__name { font-size: 14px; font-weight: 700; color: var(--hawk-ink); }
.hawk-head__sub { font-size: 13px; color: var(--hawk-dim); }
.hawk-x {
  margin-left: auto;
  flex: none;
  border: 0;
  background: transparent;
  color: var(--hawk-dim);
  font-size: 19px;
  line-height: 1;
  padding: 4px 7px;
  cursor: pointer;
  border-radius: 999px;
}
.hawk-x:hover { color: var(--hawk-ink); }

/* ------------------------------------------------------------------------------------------------
   The answer — one at a time
   ------------------------------------------------------------------------------------------------ */
.hawk-log {
  flex: 1 1 auto;
  max-height: min(58vh, 460px);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 12px;
}

.hawk-said {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 5px;
  padding: 0 2px 9px;
}
.hawk-said__q { font-size: 12px; color: var(--hawk-dim); }
.hawk-fix {
  font-size: 10.5px;
  padding: 1px 6px;
  border-radius: 999px;
  border: 1px dashed var(--hawk-rule);
  color: var(--hawk-dim);
}

.hawk-note {
  padding: 7px 2px 2px;
  font-size: 11.5px;
  color: var(--hawk-dim);
  line-height: 1.45;
}
/* Shown only while a question is away at the model. A still box reads as a broken one. */
.hawk-thinking { opacity: .75; }
@media (prefers-reduced-motion: no-preference) {
  .hawk-thinking { animation: hawk-pulse 1.4s ease-in-out infinite; }
  @keyframes hawk-pulse { 0%, 100% { opacity: .45; } 50% { opacity: .95; } }
}
/* The one marker that says this answer left the device. */
.hawk-fix--ai {
  border-style: solid;
  border-color: rgba(var(--hawk-link-rgb), .45);
  color: var(--hawk-link);
  font-weight: 700;
  letter-spacing: .04em;
}

.hawk-row {
  display: flex;
  width: 100%;
  box-sizing: border-box;
  gap: 10px;
  align-items: center;
  text-align: left;
  padding: 10px 12px;
  min-height: 46px;
  margin-bottom: 6px;
  border: 0;
  border-radius: 10px;
  background: rgba(var(--hawk-fg), .07);
  color: inherit;
  font: inherit;
  cursor: pointer;
}
.hawk-row:hover { background: rgba(var(--hawk-fg), .13); }
.hawk-row:focus-visible { outline: 2px solid var(--hawk-focus); outline-offset: 2px; }
/* The nearest thing is not the thing. It is visibly quieter than an answer, because a near-miss
   that looks like an answer is the one a student registers for by mistake. */
.hawk-row--near { background: rgba(var(--hawk-fg), .035); }

.hawk-row__code {
  font-family: ui-monospace, Menlo, monospace;
  font-weight: 700;
  font-size: 12px;
  color: var(--hawk-link);
  flex: none;
}
.hawk-row--near .hawk-row__code { color: var(--hawk-dim); }
.hawk-row__main { flex: 1 1 auto; min-width: 0; }
.hawk-row__name {
  display: block;
  font-size: 13px;
  color: var(--hawk-ink);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.hawk-row--near .hawk-row__name { color: var(--hawk-dim); }
.hawk-row__near {
  display: block;
  font-size: 10.5px;
  color: var(--hawk-dim);
  margin-top: 1px;
}
/* A section that collides with the week you already have is not a result you can act on, and it
   should not look like one. Amber, not red: it is a fact about your schedule, not an error. */
.hawk-row__clash {
  display: block;
  font-size: 10.5px;
  font-weight: 600;
  color: var(--hawk-warn);
  margin-top: 1px;
}

.hawk-chip {
  flex: none;
  font-size: 10.5px;
  font-weight: 700;
  border-radius: 999px;
  padding: 4px 9px;
}
/* Tuned for a dark ground rather than reused from the light build — the light-mode chip colours
   measured under 3:1 here, which is a legibility failure, not a style preference. */
.hawk-chip--open { color: var(--hawk-good); background: rgba(var(--hawk-good-rgb), .15); }
.hawk-chip--wait { color: var(--hawk-warn); background: rgba(var(--hawk-warn-rgb), .15); }
.hawk-chip--full { color: var(--hawk-dim); background: rgba(var(--hawk-fg), .09); }

.hawk-went {
  padding: 2px 2px 0;
  font-size: 11px;
  color: var(--hawk-good);
  font-weight: 600;
}

/* ------------------------------------------------------------------------------------------------
   The empty state — Hawk introduces itself
   ------------------------------------------------------------------------------------------------ */
.hawk-hint {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 6px 2px 10px;
}
.hawk-hint__face {
  flex: none;
  width: 38px;
  height: 38px;
  background: var(--hawk-champ) center / contain no-repeat;
}
.hawk-hint__lead { font-size: 15px; font-weight: 700; color: var(--hawk-ink); }
.hawk-hint__sub { font-size: 13px; color: var(--hawk-dim); margin-top: 2px; }

.hawk-foot {
  flex: none;
  padding: 0 14px 10px;
  font-size: 10.5px;
  color: var(--hawk-dim);
  background: var(--hawk-navy-lift);
}

/* ------------------------------------------------------------------------------------------------
   Asking
   ------------------------------------------------------------------------------------------------ */
.hawk-ask {
  flex: none;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 12px 12px 16px;
  background: var(--hawk-navy);
  border-top: 1px solid var(--hawk-rule);
}
.hawk-input {
  flex: 1 1 auto;
  min-width: 0;
  border: 0;
  outline: none;
  background: transparent;
  color: var(--hawk-ink);
  font: 400 16px/1.3 inherit;   /* 16px so iOS does not zoom the page when it is focused */
}
.hawk-input::placeholder { color: var(--hawk-dim); font-size: 14px; }
.hawk-send {
  flex: none;
  min-height: 38px;
  padding: 0 20px;
  border: 0;
  border-radius: 8px;
  background: #fff;
  color: var(--hawk-navy);
  font: 700 14px/1 inherit;
  cursor: pointer;
}
.hawk-send:disabled { opacity: .45; cursor: default; }
.hawk-send:focus-visible { outline: 3px solid var(--hawk-focus); outline-offset: 2px; }

@media (prefers-reduced-motion: reduce) {
  .hawk-box { transition: none !important; animation: none !important; }
}

/* ------------------------------------------------------------------------------------------------
   Added with the schedule tools — 2026-09-24
   ------------------------------------------------------------------------------------------------ */
/* A good-news line (prereqs met, registration date) reads in the seat-open green, not white. */
.hawk-note--good { color: var(--hawk-good); font-weight: 600; }

/* "Not it?" — the feedback the learning loop runs on. Small, quiet, always there, never in the way. */
.hawk-notit {
  display: block;
  margin: 2px 0 0 auto;
  padding: 4px 8px;
  border: 0;
  background: transparent;
  color: var(--hawk-dim);
  font: 500 11px/1 inherit;
  text-decoration: underline dotted;
  text-underline-offset: 3px;
  cursor: pointer;
  border-radius: 6px;
}
.hawk-notit:hover { color: var(--hawk-ink); }
.hawk-notit:focus-visible { outline: 2px solid var(--hawk-focus); outline-offset: 2px; }

/* Chips stack on the right, so the time column keeps its width whatever the row carries. */
.hawk-row__chips { flex: none; display: flex; flex-direction: column; align-items: flex-end; gap: 3px; }
.hawk-row__chips .hawk-chip { padding: 3px 8px; font-size: 10px; }
/* Who teaches it, under the time — never inline with it, where two chips would crush both. */
.hawk-row__sub { display: block; font-size: 11px; color: var(--hawk-dim); margin-top: 1px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hawk-row--near .hawk-row__sub { color: var(--hawk-dim); }

/* How a hard question was read — shown before the answer, so a wrong reading is visible at once. */
.hawk-read {
  margin: 0 2px 8px;
  padding: 7px 10px;
  border-radius: 9px;
  background: rgba(var(--hawk-link-rgb), .10);
  color: var(--hawk-link-2);
  font-size: 11.5px;
  line-height: 1.45;
}
.hawk-read::before { content: 'Reading that as: '; color: var(--hawk-dim); }
.hawk-count { padding: 2px 2px 4px; font-size: 10.5px; color: var(--hawk-dim); }

/* Rich rows: code as a small label, the title free to take two lines, the who/when/why line free to
   wrap. Chips stay top-right. */
.hawk-row--rich { align-items: flex-start; padding-top: 11px; padding-bottom: 11px; }
.hawk-row--rich .hawk-row__code { display: block; font-size: 10.5px; margin-bottom: 3px; letter-spacing: .02em; }
.hawk-row--rich .hawk-row__name {
  white-space: normal;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  line-height: 1.3; font-weight: 600;
}
.hawk-row--rich .hawk-row__sub { white-space: normal; line-height: 1.35; margin-top: 3px; }


/* ---- 2026-09-23: the verified explanation, and Build my term --------------------------------- */
/* The one line the model writes. Checked against the rows before it is shown. */
.hawk-say {
  margin: -2px 2px 9px;
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--hawk-ink);
}
@media (prefers-reduced-motion: no-preference) {
  .hawk-say { animation: hawk-say-in .25s ease-out; }
  @keyframes hawk-say-in { from { opacity: 0; transform: translateY(-2px); } to { opacity: 1; transform: none; } }
}
.hawk-say[hidden] { display: none; }

.hawk-opts { display: flex; gap: 6px; margin: 0 2px 8px; }
.hawk-opt {
  flex: 1 1 0;
  min-width: 0;
  display: flex; flex-direction: column; align-items: flex-start; gap: 1px;
  padding: 6px 9px;
  border-radius: 9px;
  border: 1px solid var(--hawk-rule);
  background: transparent;
  color: var(--hawk-dim);
  font: inherit;
  cursor: pointer;
  text-align: left;
}
.hawk-opt__name { font-size: 11.5px; font-weight: 700; }
.hawk-opt__meta { font-size: 10.5px; }
.hawk-opt.is-on { background: var(--hawk-sel-bg); border-color: var(--hawk-sel-bg); color: var(--hawk-sel-ink); }
.hawk-opt:focus-visible { outline: 2px solid var(--hawk-link); outline-offset: 1px; }

/* The week at a glance. Five lanes; saved classes dimmed so what the option adds stands out. */
.hawk-week {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 4px;
  margin: 0 2px 9px;
  padding-bottom: 12px;
}
.hawk-week__col { display: flex; flex-direction: column; align-items: stretch; gap: 3px; }
.hawk-week__day { font-size: 9.5px; font-weight: 700; color: var(--hawk-dim); text-align: center; }
.hawk-week__lane {
  position: relative;
  height: 64px;
  border-radius: 6px;
  background: rgba(var(--hawk-fg), .05);
}
.hawk-week__blk {
  position: absolute; left: 2px; right: 2px;
  border-radius: 3px;
  background: var(--hawk-link);
}
.hawk-week__blk--fixed { background: rgba(var(--hawk-fg), .28); }
.hawk-week__scale {
  position: absolute; left: 0; right: 0; bottom: 0;
  display: flex; justify-content: space-between;
  font-size: 9px; color: var(--hawk-dim);
}

/* "Not it?" stays in Hawk: the other readings, then two quiet links. */
.hawk-alts {
  margin: 8px 0 2px;
  padding: 10px 10px 8px;
  border-radius: 10px;
  border: 1px solid var(--hawk-rule);
}
.hawk-alts__head { font-size: 11.5px; font-weight: 700; color: var(--hawk-ink); margin: 0 2px 8px; }
.hawk-alts .hawk-row { min-height: 40px; padding: 8px 11px; }
.hawk-alts__links { display: flex; gap: 14px; margin: 4px 2px 0; }
.hawk-alts__link {
  border: 0; background: none; padding: 4px 0; font: inherit; font-size: 11.5px;
  color: var(--hawk-link-2); text-decoration: underline; text-underline-offset: 3px; cursor: pointer;
}
.hawk-alts__link:focus-visible { outline: 2px solid var(--hawk-link); outline-offset: 2px; }
.hawk-alts__noted { font-size: 10.5px; color: var(--hawk-dim); margin: 6px 2px 0; }

/* Save a built term as Plan A, B or C (2026-09-25). */
.hawk-plansave { margin: 6px 2px 8px; padding: 10px; border-radius: 11px; background: var(--hawk-navy); display: flex; flex-direction: column; gap: 8px; }
.hawk-plansave__hd { font-size: 12.5px; font-weight: 700; color: var(--hawk-ink); }
.hawk-plansave__row { display: flex; gap: 6px; }
.hawk-plansave__btn { flex: 1 1 0; min-height: 40px; border-radius: 9px; border: 1px solid var(--hawk-rule); background: transparent; color: var(--hawk-ink); font: inherit; font-size: 12px; font-weight: 600; cursor: pointer; }
.hawk-plansave__btn:focus-visible, .hawk-plansave__undo:focus-visible { outline: 2px solid var(--hawk-link); outline-offset: 1px; }
.hawk-plansave__done { font-size: 12px; color: var(--hawk-good); font-weight: 600; line-height: 1.45; }
.hawk-plansave__undo { background: none; border: 0; padding: 0; color: var(--hawk-link-2); font: inherit; font-weight: 600; text-decoration: underline; cursor: pointer; min-height: 28px; }
@media (hover: hover) { .hawk-plansave__btn:hover { border-color: rgba(var(--hawk-fg), .35); } }

/* ------------------------------------------------------------------------------------------------
   The Champ sheet — 2026-10-14. Later rules win over the navy-era ones above.
   ------------------------------------------------------------------------------------------------ */
.hawk-box {
  background: var(--hawk-navy-lift);
  color: var(--hawk-ink);
  border: 1px solid var(--hawk-rule);
  border-radius: 20px;
  box-shadow: 0 18px 48px rgba(22, 51, 107, .22);
}
.hawk-box--moving { box-shadow: 0 24px 60px rgba(22, 51, 107, .32); }
.hawk-head { background: var(--hawk-navy-lift); border-bottom: 1px solid var(--hawk-rule); }
.hawk-head__bird { flex: none; width: 24px; height: 28px; background: var(--hawk-champ) center / contain no-repeat; }
.hawk-head__name { font-size: 16px; font-weight: 900; color: var(--hawk-brand); }
.hawk-head__sub { font-size: 12px; color: var(--hawk-dim); min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hawk-box--empty .hawk-head__bird, .hawk-box--empty .hawk-head__sub { display: none; }
.hawk-x { color: var(--hawk-dim); }
.hawk-x:hover { color: var(--hawk-ink); }

/* Empty state: the big bird, the greeting, the phone's 2 x 2 starter chips. */
.hawk-hint { display: flex; flex-direction: column; align-items: center; gap: 0; padding: 4px 4px 6px; text-align: center; }
.hawk-hint__face { flex: none; width: 92px; height: 112px; background: var(--hawk-champ) center / contain no-repeat; filter: drop-shadow(0 10px 12px rgba(22, 51, 107, .26)); }
.hawk-hint__lead { margin-top: 6px; font-size: 24px; font-weight: 900; letter-spacing: -.01em; color: var(--hawk-brand); }
.hawk-hint__sub { margin: 4px 0 14px; font-size: 13.5px; line-height: 1.4; color: var(--hawk-dim); text-wrap: balance; }
.hawk-cgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; width: 100%; }
.hawk-cchip { border: 0; font: inherit; font-weight: 900; font-size: 13px; line-height: 1.2; cursor: pointer; border-radius: 18px; padding: 7px 8px; min-height: 36px; text-align: center; text-wrap: balance; }
.hawk-cchip:focus-visible { outline: 2px solid var(--hawk-focus); outline-offset: 2px; }
.hawk-cc1 { background: var(--hawk-cc1-bg); color: var(--hawk-cc1-ink); }
.hawk-cc2 { background: var(--hawk-cc2-bg); color: var(--hawk-cc2-ink); }
.hawk-cc3 { background: var(--hawk-cc3-bg); color: var(--hawk-cc3-ink); }
.hawk-cc4 { background: var(--hawk-cc4-bg); color: var(--hawk-cc4-ink); }
/* After an answer the chips sit in one slim scrolling row above the field, as on the phone. */
.hawk-chips { flex: none; display: flex; gap: 8px; overflow-x: auto; padding: 8px 12px; scrollbar-width: none; border-top: 1px solid var(--hawk-rule); }
.hawk-chips::-webkit-scrollbar { display: none; }
.hawk-chips .hawk-cchip { flex: none; white-space: nowrap; min-height: 32px; padding: 0 13px; border-radius: 16px; }
.hawk-box--empty .hawk-chips { display: none; }
/* On a phone the greeting is a row (bird left, words right) so the sheet stays small: a sheet that eats the screen is a modal. */
@media (max-width: 720px) {
  .hawk-hint { display: grid; grid-template-columns: 56px minmax(0, 1fr); column-gap: 12px; align-items: center; text-align: left; padding: 0 2px 4px; }
  .hawk-hint__face { grid-row: 1 / span 2; width: 56px; height: 68px; }
  .hawk-hint__lead { margin-top: 0; font-size: 21px; align-self: end; }
  .hawk-hint__sub { margin: 2px 0 0; font-size: 12.5px; align-self: start; }
  .hawk-box { width: calc(100vw - 20px); }   /* a dragged box (left set, right auto) keeps the phone's width; the chip row scrolls inside it */
  .hawk-cgrid { grid-column: 1 / -1; margin-top: 8px; }
  .hawk-box--empty .hawk-log { padding: 6px 12px 4px; }
  .hawk-box--empty .hawk-head { padding-top: 8px; padding-bottom: 8px; }
  .hawk-box--empty .hawk-foot { padding-top: 5px; padding-bottom: 9px; }
}

/* The field: a pill with a round navy send button, like the phone's .cinput / .sendbtn. */
.hawk-ask { margin: 0 12px; padding: 5px 5px 5px 16px; gap: 8px; border: 1px solid var(--hawk-rule); border-radius: 28px; background: var(--hawk-navy); }
.hawk-box--empty .hawk-ask { margin-top: 4px; }
.hawk-ask:focus-within { border-color: var(--hawk-send-bg); box-shadow: 0 0 0 2px var(--hawk-send-bg); }
.hawk-input { color: var(--hawk-ink); font-weight: 600; height: 40px; }
.hawk-input::placeholder { color: var(--hawk-dim); font-size: 15px; font-weight: 600; opacity: 1; }
.hawk-send { width: 40px; height: 40px; min-height: 0; padding: 0; border-radius: 50%; display: grid; place-items: center; background: var(--hawk-send-bg); color: #fff; }
.hawk-send:disabled { opacity: .5; }
.hawk-foot { padding: 7px 14px 11px; font-size: 11.5px; text-align: center; color: var(--hawk-dim); background: var(--hawk-navy-lift); }

/* ------------------------------------------------------------------------------------------------
   The chat and its cards — 2026-10-15 (website-champ-cards). The phone's Champ: a blue question bubble on the right, Champ's
   reply in a bubble beside Champ's face, a full-width card under it, follow-up questions under the newest answer.
   Every colour pair is a token with a dark and a light value, each >= 4.5:1 on the card it sits on (tested in both).
   ------------------------------------------------------------------------------------------------ */
:root {
  --hawk-chat-bg: var(--bg, #121212);
  --hawk-card: var(--panel, #1E1E1E);
  --hawk-fill: rgba(var(--hawk-fg), .07);
  --hawk-rule-strong: rgba(var(--hawk-fg), .24);
  --hawk-user-bg: #2A4A8F;
  --hawk-bar: #7C9BF2;
  --hawk-pill-bg: rgba(var(--hawk-fg), .09); --hawk-pill-ink: var(--hawk-dim);
  --hawk-ok-bg: rgba(127, 227, 181, .16);  --hawk-ok-ink: #7fe3b5;
  --hawk-bad-bg: rgba(255, 140, 140, .16); --hawk-bad-ink: #ffa3a3;
  --hawk-blue-bg: rgba(159, 180, 255, .16); --hawk-blue-ink: #c9d6ff;
  --hawk-mid-bg: rgba(255, 207, 122, .16); --hawk-mid-ink: #ffcf7a;
  --hawk-blk: var(--blk, #25396A); --hawk-blk-ink: var(--blk-ink, #DCE7FF);
  --hawk-clash: #F87171;
  --hawk-planA: #0F766E; --hawk-planB: #C2410C; --hawk-planC: #BE185D; --hawk-planM: #2A4A8F;
}
:root[data-theme="light"], :root[data-theme="cream"] {
  --hawk-user-bg: #16336B;
  --hawk-bar: #4B6FD6;
  --hawk-ok-bg: #DDF5F1;  --hawk-ok-ink: #0B5F58;
  --hawk-bad-bg: #FEE2E2; --hawk-bad-ink: #991B1B;
  --hawk-blue-bg: #E3ECFF; --hawk-blue-ink: #1E40AF;
  --hawk-mid-bg: #FEF3C7; --hawk-mid-ink: #744600;
  --hawk-blk: var(--blk, #D6E4FF); --hawk-blk-ink: var(--blk-ink, #1E40AF);
  --hawk-clash: #DC2626;
  --hawk-planA: #0F766E; --hawk-planB: #C2410C; --hawk-planC: #BE185D; --hawk-planM: #16336B;
}

/* the phone's header: Champ / Answers from TermChamp's real data, a trash can and the x */
.hawk-head { display: grid; grid-template-columns: auto minmax(0, 1fr) auto auto; grid-template-areas: "bird name clear x" "bird sub clear x"; column-gap: 8px; row-gap: 0; align-items: center; }
.hawk-head__bird { grid-area: bird; }
.hawk-head__name { grid-area: name; align-self: end; line-height: 1.15; }
.hawk-head__sub { grid-area: sub; align-self: start; white-space: normal; font-size: 11.5px; line-height: 1.2; }
.hawk-box--empty .hawk-head { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "name x"; }
.hawk-box--empty .hawk-head__name { align-self: center; }
.hawk-clear { grid-area: clear; display: grid; place-items: center; width: 32px; height: 32px; padding: 0; border: 0; border-radius: 999px; background: transparent; color: var(--hawk-dim); cursor: pointer; }
.hawk-clear:hover { color: var(--hawk-ink); background: var(--hawk-fill); }
.hawk-clear:focus-visible, .hawk-x:focus-visible { outline: 2px solid var(--hawk-focus); outline-offset: 1px; }
.hawk-box--empty .hawk-clear { display: none; }
.hawk-x { grid-area: x; margin-left: 0; min-width: 32px; min-height: 32px; }

/* the conversation */
.hawk-log { position: relative; max-height: min(62vh, 540px); padding: 12px 10px 8px; scroll-behavior: auto; overscroll-behavior: contain; }
.hawk-box:not(.hawk-box--empty) .hawk-log { background: var(--hawk-chat-bg); }
.hawk-turn { display: flex; flex-direction: column; gap: 8px; margin: 0 0 18px; min-width: 0; }
.hawk-turn:last-child { margin-bottom: 4px; }
.hawk-turn > * { min-width: 0; }
.hawk-turn > .hawk-read, .hawk-turn > .hawk-say, .hawk-turn > .hawk-opts, .hawk-turn > .hawk-alts, .hawk-turn > .hawk-week,
.hawk-turn > .hawk-count, .hawk-turn > .hawk-plansave { margin: 0; }
.hawk-turn > .hawk-count, .hawk-turn > .hawk-went { padding: 0 4px; }
.hawk-turn > .hawk-read { background: var(--hawk-blue-bg); color: var(--hawk-blue-ink); }
.hawk-turn > .hawk-read::before { color: var(--hawk-blue-ink); opacity: .8; }

.hawk-said { align-self: flex-end; max-width: 88%; display: flex; flex-direction: column; align-items: flex-end; gap: 4px; padding: 0; }
.hawk-said__q { font-size: 13.5px; font-weight: 700; line-height: 1.35; color: #fff; background: var(--hawk-user-bg); padding: 8px 13px; border-radius: 18px 18px 4px 18px; overflow-wrap: anywhere; }
.hawk-said .hawk-fix { font-size: 10.5px; }

.hawk-bot { display: flex; gap: 7px; align-items: flex-start; }
.hawk-bot__av { flex: none; width: 26px; height: 31px; margin-top: 2px; background: var(--hawk-champ) center / contain no-repeat; }
.hawk-bubble { flex: 1 1 auto; min-width: 0; background: var(--hawk-card); border: 1px solid var(--hawk-rule); border-radius: 4px 18px 18px 18px; padding: 8px 12px; }
.hawk-bubble .hawk-note { padding: 0; margin: 0; font-size: 13.5px; line-height: 1.4; font-weight: 600; color: var(--hawk-ink); overflow-wrap: anywhere; }
.hawk-bubble .hawk-note + .hawk-note { margin-top: 5px; font-size: 12px; font-weight: 500; color: var(--hawk-dim); }
.hawk-bubble .hawk-note.hawk-note--good { color: var(--hawk-good); }
.hawk-bubble .hawk-acts, .hawk-bubble .hawk-alts { margin-top: 8px; }
.hawk-acts { display: flex; flex-wrap: wrap; gap: 6px; }
.hawk-follow { display: flex; flex-wrap: wrap; gap: 6px; padding-left: 2px; }
.hawk-fq { border: 1px solid var(--hawk-rule-strong); background: var(--hawk-card); color: var(--hawk-link); font-weight: 800; font-size: 12.5px; line-height: 1.25; padding: 7px 12px; min-height: 34px; border-radius: 17px; text-align: left; cursor: pointer; }
.hawk-fq:hover { border-color: var(--hawk-link); }
.hawk-fq:focus-visible, .hawk-act:focus-visible, .hawk-btn:focus-visible, .hawk-wrow:focus-visible, .hawk-day__blk:focus-visible,
.hawk-wk__blk:focus-visible, .hawk-ptop:focus-visible, .hawk-prow:focus-visible, .hawk-ctop:focus-visible, .hawk-fr__main:focus-visible,
.hawk-q__go:focus-visible, .hawk-grow:focus-visible, .hawk-sec__add:focus-visible, .hawk-ch__open:focus-visible, .hawk-teach__c:focus-visible,
.hawk-more:focus-visible { outline: 2px solid var(--hawk-focus); outline-offset: 2px; }
.hawk-act { border: 1px solid var(--hawk-rule-strong); border-radius: 999px; background: transparent; color: var(--hawk-link); font-weight: 800; font-size: 12px; line-height: 1; min-height: 34px; padding: 0 13px; cursor: pointer; }
.hawk-act--primary { background: var(--hawk-user-bg); border-color: var(--hawk-user-bg); color: #fff; }
.hawk-turn > .hawk-notit { align-self: flex-end; margin: -4px 0 0; }

/* a card */
.hawk-card { display: flex; flex-direction: column; gap: 8px; min-width: 0; background: var(--hawk-card); border: 1px solid var(--hawk-rule); border-radius: 16px; padding: 10px; }
.hawk-cards { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.hawk-ch { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.hawk-ch__t { font-size: 15px; font-weight: 900; color: var(--hawk-ink); }
.hawk-ch__s { font-size: 11.5px; color: var(--hawk-dim); }
.hawk-ch__gap { flex: 1 1 auto; }
.hawk-ch__open { border: 0; background: none; color: var(--hawk-link); font-weight: 800; font-size: 12.5px; line-height: 1; min-height: 32px; padding: 0 2px 0 8px; cursor: pointer; }
.hawk-k { display: block; padding: 6px 4px 0; font-size: 11px; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; color: var(--hawk-dim); }
.hawk-pill { display: inline-flex; align-items: center; max-width: 100%; font-size: 11px; font-weight: 800; line-height: 1.15; padding: 4px 8px; border-radius: 999px; background: var(--hawk-pill-bg); color: var(--hawk-pill-ink); overflow-wrap: anywhere; }
.hawk-pill--ok { background: var(--hawk-ok-bg); color: var(--hawk-ok-ink); }
.hawk-pill--bad { background: var(--hawk-bad-bg); color: var(--hawk-bad-ink); }
.hawk-pill--blue { background: var(--hawk-blue-bg); color: var(--hawk-blue-ink); }
.hawk-pill--mid { background: var(--hawk-mid-bg); color: var(--hawk-mid-ink); }
.hawk-plan { font-size: 11px; font-weight: 900; padding: 4px 9px; border-radius: 999px; color: #fff; background: var(--hawk-planM); }
.hawk-plan--A { background: var(--hawk-planA); } .hawk-plan--B { background: var(--hawk-planB); } .hawk-plan--C { background: var(--hawk-planC); }
.hawk-facts { display: flex; flex-wrap: wrap; gap: 5px; }
.hawk-btns { display: flex; gap: 8px; }
.hawk-btn { flex: 1 1 0; min-height: 38px; border: 0; border-radius: 12px; font-weight: 800; font-size: 13px; line-height: 1.1; padding: 0 10px; cursor: pointer; background: var(--hawk-blue-bg); color: var(--hawk-blue-ink); }
.hawk-btn--go { background: var(--hawk-user-bg); color: #fff; }
.hawk-btn--wide { flex: none; width: 100%; }

/* Your week */
.hawk-wrow { display: grid; grid-template-columns: 34px minmax(0, 1fr) 16px; gap: 8px; align-items: center; width: 100%; padding: 8px 2px; border: 0; border-top: 1px solid var(--hawk-rule); background: none; color: var(--hawk-dim); font: inherit; text-align: left; cursor: pointer; }
.hawk-wrow:hover { background: var(--hawk-fill); }
.hawk-wrow--static { cursor: default; padding: 6px 2px; }
.hawk-wrow--static:hover { background: none; }
.hawk-wrow--static { grid-template-columns: 34px minmax(0, 1fr); }
.hawk-wrow__d { font-size: 13px; font-weight: 900; color: var(--hawk-ink); }
.hawk-wrow__m { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.hawk-wrow__bar { position: relative; display: block; height: 10px; border-radius: 5px; background: rgba(var(--hawk-fg), .09); overflow: hidden; }
.hawk-wrow__bar i { position: absolute; top: 0; bottom: 0; border-radius: 3px; background: var(--hawk-bar); }
.hawk-wrow__t { font-size: 12px; font-weight: 700; color: var(--hawk-dim); overflow-wrap: anywhere; }
.hawk-wrow__t--ok { color: var(--hawk-ok-ink); }
.hawk-wax { display: flex; justify-content: space-between; padding: 0 22px 0 42px; font-size: 10px; color: var(--hawk-dim); }

/* Your day, on a clock */
.hawk-day { display: flex; gap: 6px; }
.hawk-day__lab { position: relative; flex: none; width: 34px; }
.hawk-day__lab span { position: absolute; right: 0; transform: translateY(-50%); font-size: 10px; color: var(--hawk-dim); }
.hawk-day__lab span:first-child { transform: none; }
.hawk-day__col { position: relative; flex: 1 1 auto; min-width: 0; border-left: 1px solid var(--hawk-rule); }
.hawk-day__free { position: absolute; left: 6px; right: 0; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1px; border: 1.5px dashed var(--hawk-rule-strong); border-radius: 10px; color: var(--hawk-dim); font-size: 11.5px; text-align: center; overflow: hidden; }
.hawk-day__free b { font-weight: 800; }
.hawk-day__free--one { flex-direction: row; gap: 6px; }
.hawk-day__blk { position: absolute; left: 6px; right: 0; box-sizing: border-box; display: block; text-align: left; border: 0; border-radius: 10px; padding: 5px 9px; background: var(--hawk-blk); color: var(--hawk-blk-ink); font: inherit; overflow: hidden; cursor: pointer; }
.hawk-day__blk b { display: block; font-size: 13px; font-weight: 900; }
.hawk-day__blk > span:not(.hawk-pill) { font-size: 11px; font-weight: 700; }
.hawk-day__blk .hawk-pill { margin-top: 3px; }
.hawk-day__blk--cm { background: var(--hawk-mid-bg); color: var(--hawk-mid-ink); }
.hawk-day__blk:disabled { cursor: default; }
.hawk-day__now { position: absolute; left: 0; right: 0; height: 0; border-top: 2px solid var(--hawk-clash); pointer-events: none; }
.hawk-day__now::before { content: ""; position: absolute; left: -4px; top: -5px; width: 8px; height: 8px; border-radius: 50%; background: var(--hawk-clash); }

/* A week as a grid (does it fit? / my clashes) */
.hawk-wk__row { display: grid; grid-template-columns: 30px repeat(5, minmax(0, 1fr)); gap: 3px; }
.hawk-wk__head span { text-align: center; font-size: 10.5px; font-weight: 900; color: var(--hawk-dim); padding-bottom: 3px; }
.hawk-wk__lab { position: relative; }
.hawk-wk__lab span { position: absolute; right: 2px; transform: translateY(-1px); font-size: 9px; color: var(--hawk-dim); }
.hawk-wk__lane { position: relative; border-radius: 6px; background: rgba(var(--hawk-fg), .05); }
.hawk-wk__blk { position: absolute; left: 1px; right: 1px; box-sizing: border-box; display: block; border: 0; border-radius: 4px; padding: 2px 3px; background: var(--hawk-blk); color: var(--hawk-blk-ink); font-weight: 800; font-size: 9px; line-height: 1.15; text-align: left; overflow: hidden; cursor: pointer; }
.hawk-wk__blk:disabled { cursor: default; }
.hawk-wk__blk--cm { background: var(--hawk-mid-bg); color: var(--hawk-mid-ink); }
.hawk-wk__blk--ghost { background: var(--hawk-card); color: var(--hawk-link); border: 1.5px dashed var(--hawk-link); }
.hawk-wk__blk--clash { outline: 2px solid var(--hawk-clash); outline-offset: -1px; z-index: 1; }

/* friends */
.hawk-fr { display: flex; flex-direction: column; gap: 6px; padding: 8px 2px; border-top: 1px solid var(--hawk-rule); }
.hawk-fr:first-of-type { border-top: 0; }
.hawk-fr__top { display: flex; align-items: center; gap: 8px; }
.hawk-fr__main { flex: 1 1 auto; min-width: 0; display: flex; align-items: center; gap: 9px; border: 0; background: none; color: inherit; font: inherit; text-align: left; padding: 0; cursor: pointer; }
.hawk-fr__tx { display: flex; flex-direction: column; min-width: 0; }
.hawk-fr__tx b { font-size: 14px; font-weight: 900; color: var(--hawk-ink); }
.hawk-fr__tx span { font-size: 11.5px; font-weight: 600; color: var(--hawk-dim); overflow-wrap: anywhere; }
.hawk-fr--free .hawk-fr__tx span { color: var(--hawk-ok-ink); }
.hawk-av { flex: none; display: inline-grid; place-items: center; border-radius: 50%; overflow: hidden; background: var(--hawk-blk); color: var(--hawk-blk-ink); font-weight: 900; }
.hawk-av img { width: 100%; height: 100%; object-fit: cover; display: block; }
.hawk-fbar { position: relative; display: block; height: 8px; border-radius: 4px; background: rgba(var(--hawk-fg), .09); overflow: hidden; }
.hawk-fbar i { position: absolute; top: 0; bottom: 0; background: var(--hawk-bar); border-radius: 2px; }
.hawk-fbar em { position: absolute; top: 0; bottom: 0; width: 2px; background: var(--hawk-clash); }

/* professors, classes, sections */
.hawk-ptop { display: flex; align-items: center; gap: 10px; width: 100%; border: 0; background: none; color: inherit; font: inherit; text-align: left; padding: 0; cursor: pointer; }
.hawk-ptop__tx { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; }
.hawk-ptop__tx b { font-size: 15px; font-weight: 900; color: var(--hawk-ink); overflow-wrap: anywhere; }
.hawk-ptop__tx span { font-size: 11.5px; color: var(--hawk-dim); }
.hawk-ptop__avg { flex: none; display: flex; flex-direction: column; align-items: center; }
.hawk-ptop__avg b { font-size: 24px; font-weight: 900; line-height: 1; color: var(--hawk-ok-ink); }
.hawk-ptop__avg span { font-size: 9px; letter-spacing: .06em; color: var(--hawk-dim); }
.hawk-av--prof { background: var(--hawk-blue-bg); color: var(--hawk-blue-ink); }
.hawk-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(72px, 1fr)); gap: 6px; }
.hawk-tiles div { background: var(--hawk-fill); border-radius: 10px; padding: 7px 4px; text-align: center; }
.hawk-tiles b { display: block; font-size: 17px; font-weight: 900; color: var(--hawk-ink); }
.hawk-tiles span { font-size: 10.5px; color: var(--hawk-dim); }
.hawk-teach { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.hawk-teach .hawk-k { padding: 0 4px 0 0; }
.hawk-teach__c { border: 0; border-radius: 999px; background: var(--hawk-blue-bg); color: var(--hawk-blue-ink); font: 900 12px/1 ui-monospace, Menlo, monospace; padding: 8px 11px; min-height: 32px; cursor: pointer; }
.hawk-prow { display: flex; align-items: center; gap: 9px; width: 100%; padding: 9px 2px; border: 0; border-top: 1px solid var(--hawk-rule); background: none; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.hawk-prow:first-child { border-top: 0; }
.hawk-prow .hawk-pill, .hawk-day__blk .hawk-pill { flex: none; white-space: nowrap; }
.hawk-prow:hover { background: var(--hawk-fill); }
.hawk-prow__tx { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; }
.hawk-prow__tx b { font-size: 13.5px; font-weight: 800; color: var(--hawk-ink); overflow-wrap: anywhere; }
.hawk-prow__tx span { font-size: 11.5px; color: var(--hawk-dim); overflow-wrap: anywhere; }
.hawk-ctop { display: flex; align-items: center; gap: 8px; width: 100%; border: 0; background: none; color: inherit; font: inherit; text-align: left; padding: 0; cursor: pointer; }
.hawk-ctop__code { flex: none; font: 900 12.5px/1 ui-monospace, Menlo, monospace; color: var(--hawk-link); }
.hawk-ctop b { flex: 1 1 auto; min-width: 0; font-size: 14px; font-weight: 800; color: var(--hawk-ink); overflow-wrap: anywhere; }
.hawk-ctop svg { flex: none; color: var(--hawk-dim); }
.hawk-ctop__chip { flex: none; margin-left: auto; }
.hawk-more { align-self: flex-start; border: 0; background: none; color: var(--hawk-link); font-weight: 800; font-size: 12.5px; line-height: 1; min-height: 32px; padding: 0 4px; cursor: pointer; }
.hawk-card--rows { padding: 2px 10px; gap: 0; }
.hawk-card--rows > .hawk-row, .hawk-card--rows > .hawk-sec, .hawk-psecs > .hawk-row, .hawk-psecs > .hawk-sec { border-top: 1px solid var(--hawk-rule); }
.hawk-card--rows > :first-child, .hawk-psecs > :first-child { border-top: 0; }
.hawk-card--rows .hawk-row, .hawk-psecs .hawk-row { background: none; border-radius: 0; margin: 0; padding: 9px 2px; }
.hawk-card--rows .hawk-row:hover, .hawk-psecs .hawk-row:hover { background: var(--hawk-fill); }
.hawk-psecs { display: flex; flex-direction: column; border-radius: 12px; background: var(--hawk-fill); padding: 0 8px; }
.hawk-sec { display: flex; align-items: center; gap: 4px; }
.hawk-sec > .hawk-row { flex: 1 1 auto; min-width: 0; width: auto; }
.hawk-sec__add { flex: none; display: grid; place-items: center; width: 34px; height: 34px; padding: 0; border: 1px solid var(--hawk-rule-strong); border-radius: 50%; background: var(--hawk-card); color: var(--hawk-link); cursor: pointer; }
.hawk-sec__add:hover { border-color: var(--hawk-link); }
.hawk-row__fit { display: block; margin-top: 1px; font-size: 10.5px; font-weight: 700; color: var(--hawk-ok-ink); }
.hawk-row--rich .hawk-row__name { -webkit-line-clamp: 3; }

/* prerequisites */
.hawk-pbar { height: 6px; border-radius: 3px; background: rgba(var(--hawk-fg), .1); overflow: hidden; }
.hawk-pbar i { display: block; height: 100%; background: var(--hawk-bar); border-radius: 3px; }
.hawk-q { display: flex; align-items: flex-start; gap: 9px; padding: 7px 2px; border-top: 1px solid var(--hawk-rule); }
.hawk-q__dot { flex: none; display: grid; place-items: center; width: 22px; height: 22px; margin-top: 1px; border-radius: 50%; font-size: 12px; font-weight: 900; border: 2px dashed var(--hawk-rule-strong); color: var(--hawk-dim); box-sizing: border-box; }
.hawk-q__dot--ok { border: 0; background: var(--hawk-ok-bg); color: var(--hawk-ok-ink); }
.hawk-q__dot--now { border: 0; background: var(--hawk-mid-bg); color: var(--hawk-mid-ink); }
.hawk-q__tx { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; }
.hawk-q__tx b { font-size: 13px; font-weight: 800; color: var(--hawk-ink); }
.hawk-q__tx > span:not(.hawk-q__links) { font-size: 11.5px; color: var(--hawk-dim); }
.hawk-q__links { display: flex; flex-wrap: wrap; gap: 2px 10px; }
.hawk-q__go { border: 0; background: none; color: var(--hawk-link); font: 800 12px/1 ui-monospace, Menlo, monospace; min-height: 30px; padding: 0; cursor: pointer; }

/* the game plan */
.hawk-grow { display: flex; align-items: flex-start; gap: 9px; width: 100%; padding: 9px 2px; border: 0; border-top: 1px solid var(--hawk-rule); background: none; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.hawk-grow:hover { background: var(--hawk-fill); }
.hawk-grow__n { flex: none; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; font-size: 12px; font-weight: 900; background: var(--hawk-pill-bg); color: var(--hawk-pill-ink); }
.hawk-grow__n--hot { background: var(--hawk-bad-bg); color: var(--hawk-bad-ink); }
.hawk-grow__n--ok { background: var(--hawk-ok-bg); color: var(--hawk-ok-ink); }
.hawk-grow__tx { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.hawk-grow__h { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; }
.hawk-grow__h b { font: 900 12.5px/1.2 ui-monospace, Menlo, monospace; color: var(--hawk-ink); }
.hawk-grow__h span, .hawk-grow__bk { font-size: 11.5px; color: var(--hawk-dim); }
.hawk-grow__why { font-size: 12px; font-weight: 700; color: var(--hawk-ink); }
.hawk-grow__bar { display: flex; align-items: center; gap: 7px; }
.hawk-grow__bar > span:first-child { flex: 1 1 auto; height: 5px; border-radius: 3px; background: rgba(var(--hawk-fg), .1); overflow: hidden; }
.hawk-grow__bar i { display: block; height: 100%; border-radius: 3px; background: var(--hawk-bar); }
.hawk-grow__fill--hot { background: var(--hawk-bad-ink) !important; }
.hawk-grow__seat { flex: none; font-size: 11.5px; font-weight: 800; color: var(--hawk-dim); }
.hawk-grow__seat--hot { color: var(--hawk-bad-ink); } .hawk-grow__seat--ok { color: var(--hawk-ok-ink); }

/* where a tap went: said once, at the foot of that answer */
.hawk-went { font-size: 11.5px; }
/* The site's own plan chooser (Plan A / B / C) opens over Champ, not under it. */
#plChoose.pl2-choose { z-index: 9100; }

@media (max-width: 720px) {
  .hawk-log { max-height: min(54vh, 460px); }
  .hawk-fq { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) { .hawk-card, .hawk-bubble { animation: none !important; } }
