Skip to content

Instantly share code, notes, and snippets.

export type Mode = "IDEAL" | "NEAR_INT" | "NORMAL";
export type CalcResult = {
mode: Mode;
n: number;
nRaw: number;
showEaster: boolean;
};
const PROTEIN_PER_KG = 0.83;
// webapp/src/lib/copy.ts
export const EASTER_EGGS = [
"Округлили вверх, чтобы точно хватило.",
"Потому что можно позволить себе немного больше.",
"Добавили вафельку для ровного расчёта.",
"С запасом — так надёжнее.",
] as const;
export function pickOne<T>(arr: readonly T[], rng: () => number): T {
<!doctype html>
<html lang="ru">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Protein → Kinder Bueno</title>
</head>
<body>
<div id="app">
<!-- SCREEN 1: ENTRY -->
:root {
color-scheme: dark;
}
* {
box-sizing: border-box;
}
body {
margin: 0;
import "./style.css";
import { calcBueno } from "./lib/calc";
const EASTER = [
"Округлили вверх, чтобы точно хватило.",
"Потому что можно позволить себе немного больше.",
"Добавили вафельку для ровного расчёта.",
"С запасом — так надёжнее.",
];
:root { font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
body { margin: 0; padding: 24px; background: #0f0f10; color: #f2f2f2; }
.card { max-width: 520px; margin: 0 auto; padding: 18px; border: 1px solid #2a2a2d; border-radius: 16px; background: #141416; }
h1 { margin: 0 0 8px; font-size: 22px; }
.muted { color: #a8a8ad; font-size: 13px; margin: 0 0 14px; }
.label { display: block; margin-top: 10px; margin-bottom: 6px; font-size: 13px; color: #cfcfd4; }
.input { width: 100%; padding: 12px; border-radius: 12px; border: 1px solid #2a2a2d; background: #0f0f10; color: #f2f2f2; font-size: 16px; box-sizing: border-box; }
.btn { margin-top: 12px; width: 100%; padding: 12px; border-radius: 12px; border: 1px solid #2a2a2d; background: #1c1c1f; color: #f2f2f2; font-size: 16px; cursor: pointer; }
.out { margin-top: 14px; line-height: 1.35; }
.big { font-size: 22px; }
:root {
font-family: system-ui, Avenir, Helvetica, Arial, sans-serif;
line-height: 1.5;
font-weight: 400;
color-scheme: light dark;
color: rgba(255, 255, 255, 0.87);
background-color: #242424;
font-synthesis: none;