/* Nonmodal help stays available without taking over the work area. */
.helper-widget { position: fixed; right: 22px; bottom: 18px; z-index: 60; }
.helper-launch { display: flex; align-items: center; gap: 8px; border: 1px solid var(--line); border-radius: 32px; padding: 4px 18px 4px 7px; background: var(--surface); color: var(--navy); font-weight: 650; box-shadow: var(--shadow); min-height: 52px; }
.helper-launch img { width: 38px; height: 45px; }
.helper-panel { width: min(390px, calc(100vw - 28px)); max-height: min(650px, calc(100vh - 100px)); display: flex; flex-direction: column; padding: 18px; background: var(--surface); border: 1px solid var(--line); border-top: 3px solid var(--brand-blue); border-radius: 18px; box-shadow: 0 12px 48px #132d452b; }
.helper-head { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.helper-head img { width: 45px; height: 54px; }
.helper-head div { flex: 1; }
.helper-head strong { display: block; color: var(--navy); font-size: 17px; }
.helper-head small { font-size: 11px; color: var(--ink-2); }
.helper-panel label { margin-bottom: 5px; font-size: 12px; font-weight: 600; }
.helper-results { overflow-y: auto; margin: 10px -2px 0; padding: 0 2px; }
.helper-summary { padding: 12px; margin-top: 0; background: var(--blue-soft); border-radius: 9px; line-height: 1.55; }
.helper-results details { border-bottom: 1px solid var(--line); padding: 8px 0; }
.helper-results summary { cursor: pointer; min-height: 36px; display: list-item; padding: 8px 0; color: var(--navy); font-weight: 600; }
.helper-results details p { line-height: 1.6; color: var(--ink-2); }
.helper-foot { font-size: 11px; line-height: 1.5; color: var(--ink-2); margin: 14px 0 0; }
.update-card { max-width: 760px; }
.topbar { border-top: 3px solid var(--brand-blue); }
.tabs button { white-space: nowrap; }
.tabs button[aria-current="page"] { box-shadow: inset 0 -3px var(--gold); }
.brief { border-left: 4px solid var(--brand-blue); }
.page { padding-bottom: 92px; }
@media (max-width: 1100px) { .topbar { flex-wrap: wrap; height: auto; padding-top: 10px; padding-bottom: 10px; } .tabs { order: 3; width: 100%; } }
@media (max-width: 600px) { .helper-widget { right: 14px; bottom: 14px; } }

/* User-supplied character direction, September 2026 visual revision. */
.helper-launch img { width: 42px; height: 63px; object-fit: contain; background: #fff; border-radius: 20px; }
.helper-head img { width: 48px; height: 72px; object-fit: contain; background: #fff; border-radius: 12px; }
.helper-head strong { font-family: Georgia, "Times New Roman", serif; font-size: 20px; }
