.arcade-badge{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border:1px solid color-mix(in srgb, var(--brand-lime) 45%, transparent);color:var(--brand-lime);background:color-mix(in srgb, var(--brand-lime) 12%, transparent);border-radius:999px;align-items:center;gap:.35rem;padding:.2rem .6rem;font-size:.72rem;font-weight:700;display:inline-flex}.arcade-badge--orange{border-color:color-mix(in srgb, var(--brand-orange) 50%, transparent);color:var(--brand-orange);background:color-mix(in srgb, var(--brand-orange) 12%, transparent)}.arcade-badge--muted{border-color:var(--border-light);color:var(--muted);background:color-mix(in srgb, var(--surface) 70%, transparent)}.arcade-card-link{height:100%;min-height:44px;transition:transform .2s,border-color .2s,box-shadow .2s;display:block}.arcade-card-link:hover,.arcade-card-link:focus-visible{border-color:color-mix(in srgb, var(--brand-lime) 55%, transparent);box-shadow:var(--glow-lime), var(--shadow);transform:translateY(-3px)}.arcade-btn{text-align:center;cursor:pointer;justify-content:center;align-items:center;min-height:48px;display:inline-flex}.arcade-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.arcade-tab{white-space:nowrap;cursor:pointer;min-height:44px;color:var(--muted);border:1px solid var(--border-light);background:color-mix(in srgb, var(--surface) 70%, transparent);border-radius:999px;padding:.5rem .9rem;font-size:.85rem;font-weight:700}.arcade-tab[aria-selected=true],.arcade-tab[aria-pressed=true]{color:var(--bg);border-color:var(--brand-lime);background:var(--brand-lime)}.arcade-setting{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 55%, transparent);border-radius:.9rem;min-width:0;margin:0;padding:.85rem 1rem}.arcade-setting>legend{padding:0 .35rem}.arcade-option{cursor:pointer;min-height:44px;color:var(--text);border:1px solid var(--border-light);background:color-mix(in srgb, var(--surface) 70%, transparent);border-radius:999px;align-items:center;gap:.5rem;padding:.4rem .9rem;font-size:.875rem;font-weight:700;display:inline-flex}.arcade-option:has(input:checked){border-color:var(--brand-lime);box-shadow:inset 0 0 0 1px var(--brand-lime)}.arcade-option:has(input:focus-visible){outline:2px solid var(--brand-lime);outline-offset:2px}.arcade-option input{width:1.1rem;height:1.1rem;accent-color:var(--brand-lime);margin:0}.arcade-choice{text-align:left;width:100%;min-height:52px;color:var(--text);cursor:pointer;border:1px solid var(--border-light);background:color-mix(in srgb, var(--surface) 75%, transparent);border-radius:.75rem;align-items:center;gap:.75rem;padding:.75rem 1rem;font-weight:600;transition:border-color .15s,background .15s;display:flex}.arcade-choice:hover:not(:disabled),.arcade-choice:focus-visible{border-color:color-mix(in srgb, var(--brand-lime) 60%, transparent);background:color-mix(in srgb, var(--brand-lime) 8%, var(--surface))}.arcade-choice:disabled{cursor:default}.arcade-choice[data-state=right]{border-color:var(--brand-lime);background:color-mix(in srgb, var(--brand-lime) 18%, var(--surface));animation:.9s ease-out arcade-glow}.arcade-choice[data-state=wrong]{border-color:var(--brand-orange);background:color-mix(in srgb, var(--brand-orange) 14%, var(--surface));animation:.4s ease-in-out arcade-shake}.arcade-choice[data-state=dim]{opacity:.55}.arcade-choice-key{border:1px solid var(--border-light);width:1.75rem;height:1.75rem;color:var(--muted);border-radius:.5rem;flex:none;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:inline-flex}.arcade-timer{background:color-mix(in srgb, var(--text) 10%, transparent);border-radius:999px;height:6px;overflow:hidden}.arcade-timer>span{background:var(--brand-lime);border-radius:999px;height:100%;transition:width .25s linear,background .25s linear;display:block}.arcade-timer[data-low=true]>span{background:var(--brand-orange)}.arcade-progress{gap:4px;display:flex}.arcade-progress>span{background:color-mix(in srgb, var(--text) 12%, transparent);border-radius:999px;flex:1;height:6px}.arcade-progress>span[data-state=right]{background:var(--brand-lime)}.arcade-progress>span[data-state=wrong]{background:var(--brand-orange)}.arcade-progress>span[data-state=current]{background:color-mix(in srgb, var(--text) 45%, transparent)}.arcade-feedback{border:1px solid color-mix(in srgb, var(--brand-teal) 45%, transparent);background:color-mix(in srgb, var(--brand-teal) 10%, transparent);border-radius:.75rem;padding:.9rem 1rem}.arcade-feedback[data-state=right]{border-color:color-mix(in srgb, var(--brand-lime) 55%, transparent);background:color-mix(in srgb, var(--brand-lime) 10%, transparent)}.arcade-feedback[data-state=wrong]{border-color:color-mix(in srgb, var(--brand-orange) 55%, transparent);background:color-mix(in srgb, var(--brand-orange) 10%, transparent)}.arcade-notice{border:1px solid color-mix(in srgb, var(--brand-orange) 55%, transparent);background:color-mix(in srgb, var(--brand-orange) 10%, transparent);color:var(--text);border-radius:.75rem;padding:.75rem 1rem;font-size:.9rem}.arcade-row{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:.5rem .25rem;display:flex}.arcade-row:last-child{border-bottom:none}.arcade-rank{text-align:center;width:2rem;color:var(--muted);flex:none;font-weight:800}.arcade-row[data-top=true] .arcade-rank{color:var(--brand-orange)}.coa-report{border:1px solid var(--border-light);background:color-mix(in srgb, var(--text) 5%, var(--surface));border-radius:.9rem;overflow:hidden}.coa-report-head{border-bottom:1px dashed var(--border-light);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.coa-report dl{margin:0}.coa-report-line{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:1rem;padding:.6rem 1rem;display:flex}.coa-report-line:last-child{border-bottom:none}.coa-report-line dt{color:var(--muted);font-size:.9rem}.coa-report-line dd{text-align:right;font-variant-numeric:tabular-nums;margin:0;font-weight:700}.coa-report-line dd[data-missing=true]{color:var(--brand-orange);font-weight:600}.hempdle-grid{gap:6px;width:min(100%,20rem);margin:0 auto;display:grid}.hempdle-row{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.hempdle-row[data-shake=true]{animation:.4s ease-in-out arcade-shake}.hempdle-tile{aspect-ratio:1;text-transform:uppercase;border:2px solid var(--border-light);color:var(--text);background:color-mix(in srgb, var(--surface) 70%, transparent);-webkit-user-select:none;user-select:none;border-radius:.5rem;justify-content:center;align-items:center;font-size:clamp(1.25rem,6vw,1.75rem);font-weight:800;display:flex}.hempdle-tile[data-state=typed]{border-color:color-mix(in srgb, var(--text) 45%, transparent)}.hempdle-tile[data-state=correct],.hempdle-tile[data-state=present],.hempdle-tile[data-state=absent]{animation:.5s both arcade-flip;animation-delay:calc(var(--i,0) * .12s)}.hempdle-tile[data-state=correct]{background:var(--brand-lime);border-color:var(--brand-lime);color:var(--bg)}.hempdle-tile[data-state=present]{background:var(--brand-orange);border-color:var(--brand-orange);color:var(--bg)}.hempdle-tile[data-state=absent]{background:color-mix(in srgb, var(--text) 10%, var(--bg));color:var(--muted);border-color:#0000}.hempdle-keyboard{touch-action:manipulation;gap:6px;width:min(100%,31rem);margin:0 auto;display:grid}@media (max-width:480px){.hempdle-keyboard{width:calc(100vw - 12px);margin-left:calc(50% - 50vw + 6px);margin-right:0}}.hempdle-keyrow{justify-content:center;gap:4px;display:flex}.hempdle-key{min-width:0;height:52px;color:var(--text);cursor:pointer;border:1px solid var(--border-light);background:color-mix(in srgb, var(--text) 14%, var(--surface));border-radius:.45rem;flex:1 1 0;padding:0;font-size:.9rem;font-weight:700;transition:background .15s}.hempdle-key:disabled{cursor:not-allowed;opacity:.6}.hempdle-key--wide{flex:1.6 1 0;font-size:.72rem}.hempdle-key[data-state=correct]{background:var(--brand-lime);border-color:var(--brand-lime);color:var(--bg)}.hempdle-key[data-state=present]{background:var(--brand-orange);border-color:var(--brand-orange);color:var(--bg)}.hempdle-key[data-state=absent]{background:color-mix(in srgb, var(--text) 5%, var(--bg));color:var(--muted)}.hempdle-tile[data-state=present],.hempdle-key[data-state=present],.hempdle-swatch[data-state=present]{border:2px dashed var(--bg);border-radius:999px}.hempdle-legend{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:.35rem .9rem;margin:.75rem 0 0;padding:0;font-size:.75rem;list-style:none;display:flex}.hempdle-legend li{align-items:center;gap:.35rem;display:inline-flex}.hempdle-swatch{box-sizing:border-box;border:2px solid #0000;border-radius:.2rem;flex:none;width:1rem;height:1rem}.hempdle-swatch[data-state=correct]{background:var(--brand-lime)}.hempdle-swatch[data-state=present]{background:var(--brand-orange)}.hempdle-swatch[data-state=absent]{background:color-mix(in srgb, var(--text) 10%, var(--bg));border-color:var(--border-light)}body:has(.hempdle-keyboard) .mascot-widget{display:none}.mix-stepper{grid-template-columns:48px 1fr 48px;align-items:center;gap:.5rem;display:grid}.mix-stepper-btn{width:48px;height:48px;color:var(--brand-lime);cursor:pointer;border:2px solid var(--brand-lime);background:color-mix(in srgb, var(--brand-lime) 12%, transparent);border-radius:.75rem;font-size:1.4rem;font-weight:700;line-height:1}.mix-stepper-btn:disabled{opacity:.45;cursor:not-allowed}.mix-range{width:100%;height:44px;accent-color:var(--brand-lime);cursor:pointer}.mix-number{text-align:center;width:100%;min-height:48px;color:var(--text);border:1px solid var(--border-light);background:color-mix(in srgb, var(--surface) 80%, transparent);border-radius:.75rem;font-size:1.25rem;font-weight:700}.arcade-score-pop{animation:.5s cubic-bezier(.2,.9,.2,1.2) both arcade-pop}@keyframes arcade-flip{0%{filter:brightness(.6);transform:rotateX(0)}50%{transform:rotateX(90deg)}to{filter:none;transform:rotateX(0)}}@keyframes arcade-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes arcade-glow{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--brand-lime) 60%, transparent)}to{box-shadow:0 0 0 14px #0000}}@keyframes arcade-pop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.arcade-card-link,.arcade-choice,.hempdle-key,.arcade-timer>span{transition:none}.arcade-card-link:hover,.arcade-card-link:focus-visible{transform:none}.arcade-choice[data-state=right],.arcade-choice[data-state=wrong],.hempdle-row[data-shake=true],.hempdle-tile[data-state=correct],.hempdle-tile[data-state=present],.hempdle-tile[data-state=absent],.arcade-score-pop{animation:none}}
