/* Kubear Play: money calendar poster + week banner (tokens from /style.css, with fallbacks) */
.kp-cal{background:var(--card,#FFFBF0);color:var(--ink,#14110F);border:3px solid var(--ink,#14110F);border-radius:18px;box-shadow:6px 6px 0 var(--ink,#14110F);padding:16px;font-family:var(--body,system-ui,sans-serif)}
.kp-cal__head{display:flex;align-items:center;gap:12px}
.kp-cal__art{width:48px;height:48px;flex:none}
.kp-cal__art:empty{display:none}
.kp-cal__title{font-family:var(--display,Impact,sans-serif);text-transform:uppercase;font-size:1.5rem;line-height:1;margin:0 0 6px}
.kp-cal__chip,.kp-wk__tag{display:inline-block;background:var(--marigold,#F6A91B);color:var(--ink,#14110F);border:2px solid var(--ink,#14110F);border-radius:999px;padding:2px 10px;font:700 .75rem var(--mono,monospace);text-transform:uppercase;letter-spacing:.04em}
.kp-cal__chip[data-theme=scams],.kp-wk[data-theme=scams] .kp-wk__tag{background:var(--tomato,#C8361F);color:#fff}
.kp-cal__chip[data-theme=insurance],.kp-wk[data-theme=insurance] .kp-wk__tag{background:var(--indigo,#2B2A7A);color:#fff}
.kp-cal__chip[data-theme=savings],.kp-wk[data-theme=savings] .kp-wk__tag{background:var(--green,#0B3D2E);color:#fff}
.kp-cal__blurb{margin:12px 0;color:var(--muted,#4A4036);font-size:.95rem}
.kp-cal__tickets{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.kp-cal__ticket{display:flex;gap:12px;align-items:stretch;background:var(--cream2,#F7E6BF);border:2px dashed var(--ink,#14110F);border-radius:12px;padding:10px 12px;min-height:44px}
.kp-cal__tart{width:28px;height:28px;flex:none;align-self:center}
.kp-cal__tart:empty{display:none}
.kp-cal__date{flex:none;align-self:center;min-width:56px;text-align:center;font:800 1rem var(--display,Impact,sans-serif);text-transform:uppercase;border-right:2px dashed var(--ink,#14110F);padding-right:12px}
.kp-cal__body{display:grid;gap:2px;font-size:.88rem}
.kp-cal__body em{font-style:normal;font:600 .7rem var(--mono,monospace);color:var(--muted,#4A4036)}
.kp-cal__none,.kp-cal__fine{margin:10px 0 0;font-size:.78rem;color:var(--muted,#4A4036)}
.kp-wk{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;background:var(--cream2,#F7E6BF);color:var(--ink,#14110F);border:2px solid var(--ink,#14110F);border-radius:12px;padding:8px 12px;font-family:var(--body,system-ui,sans-serif);font-size:.9rem}
.kp-wk strong{font-family:var(--display,Impact,sans-serif);text-transform:uppercase}
.kp-wk__blurb{flex:1 1 200px;color:var(--muted,#4A4036);font-size:.82rem}
