/* Marketing Hackers internal panels — palette from marketing-hackers.com.
   Keep these tokens shared across future panels; status colors remain semantic. */
:root {
  --mh-black: #111113;
  --mh-mint: #92f8b8;
  --mh-purple: #8364ff;
  --mh-cyan: #67def5;
  --mh-surface: #ffffff;
  --mh-canvas: #f5f6f8;
  --mh-text: #191b1d;
  --mh-muted: #697078;
  --mh-border: #e1e4e9;
  --mh-radius: 12px;
  --mh-focus: #6847db;
  color: var(--mh-text);
  background: var(--mh-canvas);
}
:focus-visible { outline: 3px solid var(--mh-focus); outline-offset: 3px; }
button { transition: background .15s ease, border-color .15s ease; }
.primary { background: var(--mh-mint); color: var(--mh-black); border-color: var(--mh-mint); font-weight: 700; }
.primary:hover { background: #b0facb; border-color: #b0facb; }
aside { background: var(--mh-black); color: #f7f7fa; border-color: #29292e; }
.brand { padding-top: 8px; }
.brand img,.loginart img { background: transparent; padding: 0; border-radius: 0; width: 165px; }
.brand small,.navlabel,.asidebottom { color: #a8a8b7; }
nav button:hover { background: #24242b; }
nav button.active { background: var(--mh-mint); color: var(--mh-black); }
.count { background: #ffffffb3; color: var(--mh-black); }
.asidebottom { border-color: #303037; }
.asidebottom .plain { color: #c1c1cf; }
.asidebottom .avatar { background: #34303f; color: #d6cbff; }
.topbar { background: var(--mh-surface); }
.eyebrow { color: #6847db; font-weight: 700; }
h1,h2 { font-weight: 650; }
.metric,.card { border-radius: var(--mh-radius); }
.metric:first-child { background: var(--mh-black); border-color: var(--mh-black); color: var(--mh-mint); }
.metric:first-child span,.metric:first-child small { color: #c1c1cf; }
.metric:nth-child(2) { border-top: 3px solid var(--mh-purple); }
.metric:nth-child(3) { border-top: 3px solid var(--mh-cyan); }
.tabs .active { background: #eee9ff; color: #5939c4; }
.notice.demo { background: #eee9ff; color: #513a9c; border-color: #dcd3fc; }
.badge.other,.event.other { background: #eee9ff; color: #5939c4; }
.event { border-left: 3px solid #319b63; }
.event.other { border-left-color: var(--mh-purple); }
.progress span { background: var(--mh-purple); }
.day.today .num { background: var(--mh-black); color: var(--mh-mint); }
.loginart { background: var(--mh-black); color: white; isolation: isolate; }
.loginart::before { content: ''; position: absolute; inset: 0; z-index: -1; background: radial-gradient(ellipse at 100% 100%,#8364ff33,transparent 60%),linear-gradient(135deg,transparent 40%,#67def50b); }
.loginart h1 { color: var(--mh-mint); font-weight: 650; }
.loginart p { color: #c4c4d0; }
.sun { width: 200px; height: 200px; border-color: var(--mh-mint); box-shadow: 0 0 0 35px #111113,0 0 0 36px #8364ff,0 0 0 71px #111113,0 0 0 72px #67def5; opacity: .65; z-index: -1; }
.loginbox { position: relative; }
.loginbox::before { content: ''; height: 5px; width: 54px; border-radius: 4px; background: var(--mh-purple); margin-bottom: 30px; }
dialog::backdrop { background: #11111380; }
@media(max-width:700px) {
  .brand img { width: 135px; }
  aside { border-bottom-color: #303037; }
  .loginart img { width: 165px; }
}
@media(prefers-reduced-motion:reduce) { button { transition: none; } }
.loginart .eyebrow { color: #bdaaff; }
.panel-switch { background: #24242b; border-color: #41414a; color: #d5caff; text-align: left; font-size: 11px; line-height: 1.5; margin-bottom: 12px; }
.panel-switch:hover { background: #34303f; }
@media(max-width:700px) { .panel-switch { margin: 16px 0 0; } }

.day.holiday{background:#fff1f2}.day.holiday .num{color:#b42335;font-weight:700}.day.holiday.today .num{background:#b42335;color:white}.holiday-label{margin-top:9px;color:#a51d30;font-size:10px;font-weight:650;line-height:1.4;overflow-wrap:anywhere}.calendar-legend{display:flex;align-items:center;gap:8px}.holiday-key{width:10px;height:10px;border-radius:3px;background:#b42335;flex-shrink:0}
