.kpro-chip{border:var(--edge);background:var(--white);height:40px;color:var(--ink);box-shadow:var(--hard-sm);transition:transform .14s var(--ease-spring), box-shadow .14s var(--ease-spring);border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:0 12px 0 4px;font-size:14px;font-weight:800;text-decoration:none;display:inline-flex}.kpro-chip:hover{box-shadow:3px 3px 0 var(--ink);transform:translate(-1px,-1px)}.kpro-chip-ring{width:30px;height:30px;font-family:var(--font-display);background:conic-gradient(var(--grass) var(--pct), var(--cream) 0);border:2px solid var(--ink);border-radius:50%;place-items:center;font-size:14px;display:grid}@media (width<=760px){.kpro-chip{height:36px}.kpro-chip-text{display:none}.kpro-chip{padding:0 3px}}.kpro-toasts{z-index:60;justify-items:start;gap:14px;max-width:calc(100vw - 32px);display:grid;position:fixed;bottom:16px;left:16px}.kpro-toast{border:var(--edge);background:var(--white);color:var(--ink);box-shadow:var(--hard-sm);animation:kpro-in .32s var(--ease-spring) both;border-radius:999px;align-items:center;gap:8px;padding:7px 14px 7px 9px;font-size:14.5px;font-weight:800;text-decoration:none;display:flex}.kpro-toast-art{flex-shrink:0;place-items:center;line-height:0;display:grid}.kpro-toast.is-big{border-radius:var(--r-lg);background:var(--white);min-height:76px;box-shadow:var(--hard);animation:kpro-slide .38s var(--ease-out) both;gap:14px;padding:10px 20px 10px 14px;font-size:15.5px;line-height:1.25}.kpro-toast.is-big .kpro-toast-art{width:64px;height:64px;margin:-22px 0 -18px -6px}.kpro-toast.is-big .kba{width:80px;height:80px;animation:kpro-stamp .56s var(--ease-squish) .14s both;transform:rotate(-8deg)}.kpro-toast-text{min-width:0;display:grid}.kpro-toast-kicker{border:2px solid var(--ink);background:var(--sun);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;justify-self:start;margin-bottom:3px;padding:1px 8px;font-size:11px;font-weight:850}.kpro-toast-title{font-family:var(--font-display);letter-spacing:-.02em;overflow-wrap:anywhere;font-size:21px;font-weight:800;line-height:1.1}@keyframes kpro-in{0%{opacity:0;transform:translateY(12px)scale(.9)}}@keyframes kpro-slide{0%{opacity:0;transform:translate(-24px)rotate(-2deg)}}@keyframes kpro-stamp{0%{opacity:0;transform:scale(2.3)rotate(-28deg)}45%{opacity:1;transform:scale(.88)rotate(-5deg)}70%{transform:scale(1.07)rotate(-9deg)}to{opacity:1;transform:scale(1)rotate(-8deg)}}@media (width<=480px){.kpro-toasts{max-width:none;bottom:12px;left:12px;right:12px}.kpro-toast.is-big{box-sizing:border-box;width:100%;padding-right:14px}.kpro-toast.is-big .kpro-toast-art{width:56px;height:56px;margin:-18px 0 -14px -4px}.kpro-toast.is-big .kba{width:70px;height:70px}.kpro-toast-title{font-size:19px}}@media (prefers-reduced-motion:reduce){.kpro-toast,.kpro-toast.is-big,.kpro-toast.is-big .kba{animation:none}}.kpro-continue{flex-wrap:wrap;align-items:center;gap:10px 16px;margin:0 0 28px;display:flex}.kpro-continue-h{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:20px;font-weight:800}.kpro-continue-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.kpro-continue-list a{border:var(--edge);background:var(--white);color:var(--ink);transition:transform .14s var(--ease-spring), box-shadow .14s var(--ease-spring);border-radius:999px;align-items:center;gap:8px;padding:7px 14px 7px 8px;font-size:14.5px;font-weight:750;text-decoration:none;display:inline-flex}.kpro-continue-list a:hover{box-shadow:var(--hard-sm);transform:translate(-1px,-1px)}.kpro-dot{background:var(--game);border:2px solid var(--ink);border-radius:6px;flex-shrink:0;width:18px;height:18px}.kpro-continue-when{color:var(--ink-3);font-size:12.5px;font-weight:650}.kpro-link{font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0;font-size:14px;font-weight:750;text-decoration:underline}.kpro{gap:32px;display:grid}.kpro-hero{background:var(--white);border:var(--edge);border-radius:var(--r-lg);box-shadow:var(--hard);flex-wrap:wrap;align-items:center;gap:20px 28px;padding:22px;display:flex}.kpro-level{border:3px solid var(--ink);background:radial-gradient(var(--sun) 58%, transparent 59%), conic-gradient(var(--grass) var(--pct), var(--cream) 0);width:120px;height:120px;box-shadow:var(--hard);border-radius:50%;align-content:center;place-items:center;display:grid}.kpro-level-n{font-family:var(--font-display);font-size:44px;font-weight:800;line-height:1}.kpro-level-label{text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:800}.kpro-who{flex:1;gap:6px;min-width:240px;display:grid}.kpro-name{font-family:var(--font-display);letter-spacing:-.03em;flex-wrap:wrap;align-items:baseline;gap:12px;margin:0;font-size:clamp(26px,4vw,36px);font-weight:800;display:flex}.kpro-title{color:var(--ink-2);margin:0;font-weight:750}.kpro-bar{border:2.5px solid var(--ink);background:var(--cream);border-radius:999px;height:14px;overflow:hidden}.kpro-bar span{background:var(--grass);height:100%;display:block}.kpro-next{color:var(--ink-3);margin:0;font-size:13.5px;font-weight:650}.kpro-stats{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:0;display:grid}.kpro-stats div{border:var(--edge);border-radius:var(--r-md);background:var(--white);padding:10px 14px}.kpro-stats dt{color:var(--ink-3);font-size:12.5px;font-weight:700}.kpro-stats dd{font-family:var(--font-display);margin:0;font-size:26px;font-weight:800}.kpro-h{font-family:var(--font-display);letter-spacing:-.03em;margin:0 0 14px;font-size:clamp(24px,3.4vw,32px);font-weight:800}.kpro-h span{font-size:15px;font-family:var(--font-body);color:var(--ink-3);margin-left:8px}.kpro-badges{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.kpro-badge{text-align:center;border:2px dashed var(--line-2);border-radius:var(--r-md);color:var(--ink-3);background:#ffffff59;flex-direction:column;align-items:center;gap:3px;padding:16px 10px 14px;display:flex}.kpro-badge.is-earned{border:var(--edge);background:var(--white);color:var(--ink);box-shadow:var(--hard-sm)}.kpro-badge-art{width:96px;height:96px;margin-bottom:8px;line-height:0;display:block}.kpro-badge-art .kba{width:100%;height:100%;display:block;overflow:visible}.kpro-badge.is-earned .kba{transform:rotate(var(--tilt,0deg));transition:transform .26s var(--ease-spring)}.kpro-badge.is-earned:hover .kba{transform:rotate(0)scale(1.1)translateY(-3px)}.kpro-badge.is-earned .kba-face{transition:transform .2s var(--ease-spring)}.kpro-badge.is-earned:hover .kba-face{transform:translate(-1.5px,-1.5px)}.kpro-badge-name{font-family:var(--font-display);letter-spacing:-.02em;font-size:16px;font-weight:800;line-height:1.15}.kpro-badge:not(.is-earned) .kpro-badge-name{color:var(--ink-2)}.kpro-badge-how{font-size:12.5px;font-weight:650;line-height:1.3}.kpro-badge.is-earned .kpro-badge-how{color:var(--ink-3)}@media (width<=480px){.kpro-badges{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpro-badge-art{width:84px;height:84px}}@media (prefers-reduced-motion:reduce){.kpro-badge.is-earned .kba,.kpro-badge.is-earned .kba-face{transition:none}.kpro-badge.is-earned:hover .kba{transform:rotate(var(--tilt,0deg))}.kpro-badge.is-earned:hover .kba-face{transform:none}}.kpro-how ul{color:var(--ink-2);gap:4px;margin:0;padding-left:20px;display:grid}.kpro-note{color:var(--ink-3);font-size:14px}
