/* theme-rabino.css — the "Rabino Dino" brand: a prehistoric mailroom.
   Loaded after app.css + custom.css only on rabinoship.com (body.brand-rabino), so Skipper
   is untouched. Strategy: (1) redefine the design tokens to an earthy kraft/forest/orange
   palette — most components recolor for free because they read var()s; (2) neutralize the
   handful of neon glows that are hardcoded (not tokenised). Forest green is the hero, burnt
   orange the accent, warm kraft the ground; the signature is a long-neck dino in the wordmark. */

/* 1. Palette ---------------------------------------------------------------- */
body.brand-rabino {
  --color-paper:      #E3D5B0;   /* kraft ground */
  --color-night-2:    #EFE7CF;   /* lighter kraft (page bg gradient top) */
  --color-card:       #FBF5E6;   /* cream panel */
  --color-card-2:     #F2E9D2;   /* input fill */
  --color-ink:        #34301F;   /* bark (body text) */
  --color-muted:      #877B5B;   /* khaki */
  --color-line:       #D9C8A2;   /* tan border */
  --color-cyan:       #2E5D34;   /* PRIMARY — forest green (links, buttons, titles) */
  --color-pink:       #C2571F;   /* SECONDARY — burnt orange (eyebrows, accents) */
  --color-nightbar:   #26492B;   /* deep forest topnav */
  --color-pine:       #2E5D34;
  --color-pine-50:    #2e5d3420;
  --color-tape-050:   #c2571f20;
  --color-fresh:      #5E7D2E;   /* olive success */
  --color-fresh-050:  #5e7d2e20;
  --color-sky:        #5F7E9B;   /* muted slate info */
  --color-sky-050:    #5f7e9b20;
  --color-alert:      #B23A2E;   /* rust error */
  --color-alert-050:  #b23a2e20;
}

/* 2. Topnav — a forest bar; wordmark reads light on it -----------------------*/
body.brand-rabino .topnav {
  background: linear-gradient(180deg, #2E5D34 0%, #26492B 100%);
  box-shadow: 0 1px #ffffff14, 0 8px 22px -14px #14300f;
}
body.brand-rabino .brand::before {   /* the dino, cream on the forest bar */
  content: ""; width: 40px; height: 30px; flex: none; align-self: center;
  background: url("data:image/svg+xml,<svg viewBox='0 0 72 52' xmlns='http://www.w3.org/2000/svg'><g fill='%23F7F0DE'><path d='M2 46C14 44 22 40 30 33L33 40C25 46 14 48 4 49Z'/><ellipse cx='36' cy='31' rx='17' ry='12'/><rect x='23' y='37' width='6' height='12' rx='3'/><rect x='32' y='39' width='6' height='10' rx='3'/><rect x='43' y='39' width='6' height='10' rx='3'/><rect x='49' y='37' width='6' height='12' rx='3'/><path d='M46 26C45 13 48 5 56 4L61 7C54 9 53 17 53 28Z'/><ellipse cx='59' cy='6' rx='7' ry='4.6'/><rect x='63' y='4.5' width='6' height='4' rx='2'/></g><circle cx='60.5' cy='5' r='1.1' fill='%23E8843F'/></svg>") center/contain no-repeat;
}
body.brand-rabino .brand-word { text-shadow: none; }
body.brand-rabino .brand-word .g1 { color: #F7F0DE; }   /* Rabino — cream */
body.brand-rabino .brand-word .g2 { color: #E8843F; }   /* Ship — orange */
body.brand-rabino .brand-badge {
  color: #F1E7CE; border-color: #F1E7CE99; text-shadow: none; box-shadow: none; background: none;
}
body.brand-rabino .nav-link.is-active {
  color: #F7F0DE; background-color: #ffffff1f; box-shadow: inset 0 0 0 1px #ffffff40;
}
body.brand-rabino .mode-pill.is-prod {
  color: #FFE6D2; border-color: #E8843F; background: #e8843f24; box-shadow: none;
}
body.brand-rabino .mode-pill.is-prod .mp-dot { background: #E8843F; box-shadow: none; }
body.brand-rabino .mode-pill.is-test {
  color: #E7F0D8; border-color: #8FB05A; background: #8fb05a24; box-shadow: none;
}
body.brand-rabino .mode-pill.is-test .mp-dot { background: #8FB05A; box-shadow: none; }

/* 3. Page — kill the neon text/box glows, keep the earthy tokens -------------*/
body.brand-rabino .page-title { color: var(--color-cyan); text-shadow: none; }
body.brand-rabino .eyebrow,
body.brand-rabino .step-num { color: var(--color-pink); text-shadow: none; }
body.brand-rabino .rates-head h3 { color: var(--color-cyan); }
body.brand-rabino .mode-status.is-prod .ms-name,
body.brand-rabino .rate-price { color: var(--color-cyan); text-shadow: none; }

/* Buttons: solid forest with cream text; no neon halo */
body.brand-rabino .btn-primary {
  background: #2E5D34; color: #FBF5E6; box-shadow: 0 2px 0 #21421F;
}
body.brand-rabino .btn-primary:hover { background: #356B3D; box-shadow: 0 2px 0 #21421F; }
body.brand-rabino .btn-ghost { color: var(--color-cyan); border-color: #2E5D3466; }
body.brand-rabino .btn-ghost:hover { background: #2e5d3414; border-color: var(--color-cyan); box-shadow: none; }
body.brand-rabino .btn-warn { background: #C2571F; color: #FFF3E8; box-shadow: 0 2px 0 #8f3f16; }
body.brand-rabino .btn-warn:hover { background: #D06627; box-shadow: 0 2px 0 #8f3f16; }

/* Inputs, chips, cards: forest focus + hover, no cyan glow */
body.brand-rabino .field input:focus,
body.brand-rabino .field select:focus,
body.brand-rabino .grid-fields input:focus,
body.brand-rabino .grid-fields select:focus,
body.brand-rabino .stack-form input:focus {
  border-color: #2E5D34; box-shadow: 0 0 0 2px #2e5d3440; outline: none;
}
body.brand-rabino .carrier-chip:has(input:checked) {
  border-color: #2E5D34; background-color: var(--color-pine-50); box-shadow: inset 0 0 0 1px #2E5D34;
}
body.brand-rabino .rate-card::before { box-shadow: none; }
body.brand-rabino .rate-card:hover { border-color: #2e5d3466; box-shadow: 0 18px 34px -26px #3a331eE6; }
body.brand-rabino .status-pill { background: var(--color-pine-50); color: var(--color-cyan); box-shadow: inset 0 0 0 1px #2e5d3455; }
body.brand-rabino .confirmation { box-shadow: 0 10px 26px -18px #3a331e99; }
body.brand-rabino input:-webkit-autofill,
body.brand-rabino input:autofill { -webkit-text-fill-color: var(--color-ink); box-shadow: inset 0 0 0 1000px #F5EEDB; }
body.brand-rabino ::selection { color: #34301F; background: #E8843F55; }
body.brand-rabino :focus-visible { outline-color: #2E5D34; }

/* 4. Package preview — a kraft cardboard box with orange packing tape --------*/
body.brand-rabino .viz-stage {
  background: repeating-linear-gradient(135deg, #EADDBE 0 14px, #E4D5B2 14px 28px);
  border-color: var(--color-line);
}
body.brand-rabino .box3d .front { background: linear-gradient(150deg, #E7CE9C, #D9BC80); border-color: #B08F55; box-shadow: inset 0 0 18px #b08f5533; }
body.brand-rabino .box3d .front::after { background: #C2571F33; border-inline: 1px dashed #C2571F99; }
body.brand-rabino .box3d .top { background: linear-gradient(120deg, #F0DDB0, #E4CD97); border-color: #B08F55; }
body.brand-rabino .box3d .top::after { background: #C2571F2e; border-inline: 1px dashed #C2571F80; }
body.brand-rabino .box3d .side { background: linear-gradient(120deg, #CDAF77, #DBC08A); border-color: #B08F55; }
body.brand-rabino .box3d .front::before { background: radial-gradient(60% 100% at 45%, #b08f5566, #b08f5500 72%); }
body.brand-rabino .scale-ref { box-shadow: inset 0 0 0 1px #2e5d3466, 0 0 10px #2e5d3322; }
body.brand-rabino .scale-ref::before { background: #C2571F; box-shadow: none; }
