:root{--g:#1F6B3A;--g2:#0f3d21;--y:#F5B700;--cream:#FFF9EE;--r:#c62828;--ink:#1d2b20}
*{font-family:'Vazirmatn',sans-serif}
body{background:var(--cream);color:var(--ink);font-size:17px;
background-image:radial-gradient(circle at 15% 10%,rgba(245,183,0,.13) 0,transparent 40%),radial-gradient(circle at 90% 80%,rgba(31,107,58,.10) 0,transparent 45%),repeating-linear-gradient(45deg,rgba(31,107,58,.025) 0 2px,transparent 2px 14px);min-height:100vh}
.disp{font-family:'Lalezar','Vazirmatn',sans-serif;letter-spacing:.5px}
.card{background:#fff;border-radius:18px;box-shadow:0 2px 0 rgba(31,107,58,.08),0 10px 28px -12px rgba(31,107,58,.25);border:1px solid #efe6d2;animation:rise .45s ease both}
@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.btn{background:var(--g);color:#fff;border-radius:12px;padding:.55rem 1.1rem;font-weight:700;transition:.15s}
.btn:hover{background:var(--g2);transform:translateY(-1px)}
.btn-y{background:var(--y);color:#3a2a00}.btn-y:hover{background:#e0a600}
.btn-o{background:transparent;color:var(--g);border:2px solid var(--g)}.btn-o:hover{background:#e9f4ec;color:var(--g)}
.inp{width:100%;border:2px solid #e7dcc4;border-radius:12px;padding:.5rem .75rem;background:#fffdf8}
.inp:focus{outline:none;border-color:var(--y)}
.navb{display:flex;align-items:center;gap:.6rem;padding:.6rem .9rem;border-radius:12px;font-weight:700;color:#e8f5ec;width:100%;text-align:right}
.navb.on{background:var(--y);color:#2a1e00}
.navb:hover:not(.on){background:rgba(255,255,255,.1)}
.egg{width:46px;height:58px;background:radial-gradient(circle at 35% 30%,#fff 0,#ffe9b5 40%,#f0c46a 100%);border-radius:50% 50% 50% 50%/60% 60% 40% 40%;box-shadow:inset -4px -6px 10px rgba(0,0,0,.08)}
.ok{background:#e3f4e7;color:#1b6b33}.warn{background:#fff3cc;color:#8a6200}.bad{background:#fde3e1;color:#a11d1d}
.dot{width:12px;height:12px;border-radius:50%;display:inline-block}
input[type=range]{accent-color:var(--g);width:100%}
table td,table th{padding:.4rem .5rem}
.num{font-variant-numeric:tabular-nums}
@media print{.noprint{display:none!important}body{background:#fff}.card{box-shadow:none;border:1px solid #999}main{padding:0!important}}