:root{--cream:#FFF9EF;--green:#2F6B3A;--green2:#1f4a28;--yolk:#F5B700;--roast:#E07A2E;--shell:#EAD9BF;--ink:#2a2418;--red:#c2410c;--amber:#d97706;}
*{box-sizing:border-box}
body{margin:0;background:var(--cream);color:var(--ink);font-family:'Vazirmatn','Bricolage Grotesque',sans-serif;
background-image:radial-gradient(circle at 10% 0%,#fff3d1 0,transparent 40%),radial-gradient(circle at 100% 100%,#f8e2cf 0,transparent 45%),
url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44'%3E%3Ccircle cx='22' cy='22' r='2.5' fill='%23f2c14e' opacity='.25'/%3E%3C/svg%3E");background-attachment:fixed}
html[lang=en] body{font-family:'Bricolage Grotesque','Vazirmatn',sans-serif}
.mono{font-family:'JetBrains Mono',monospace}
.card{background:#fffdf8;border:1px solid var(--shell);border-radius:1.1rem;box-shadow:0 6px 20px -12px rgba(80,60,20,.35);padding:1rem;animation:rise .45s ease both}
@keyframes rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.inp{border:1px solid var(--shell);background:#fff;border-radius:.6rem;padding:.35rem .55rem;width:100%;font:inherit;font-size:.9rem}
.inp:focus{outline:2px solid var(--yolk);border-color:var(--yolk)}
.btn{background:var(--green);color:#fff;border-radius:.7rem;padding:.45rem .9rem;font-weight:700;font-size:.85rem;transition:.15s;white-space:nowrap;display:inline-block}
.btn:hover{background:var(--green2);transform:translateY(-1px)}
.btn2{background:#fff;border:1px solid var(--shell);color:var(--ink);border-radius:.7rem;padding:.4rem .8rem;font-size:.85rem;font-weight:600;white-space:nowrap;display:inline-block}
.btn2:hover{border-color:var(--yolk)}
.btny{background:var(--yolk);color:#2a2418;border-radius:.7rem;padding:.45rem .9rem;font-weight:800;font-size:.85rem}
.fld{display:flex;flex-direction:column;gap:.2rem;font-size:.8rem;font-weight:600;color:#5b4d33}
.chip{display:inline-block;padding:.1rem .5rem;border-radius:999px;font-size:.72rem;font-weight:700}
.s-ok{background:#dcf2df;color:#1f5a2a}.s-near{background:#ecf7c9;color:#4a6413}.s-warn{background:#fdeccc;color:#8a5200}.s-bad{background:#fbd9cf;color:#9a2b0c}.s-na{background:#eee;color:#777}
table.t{width:100%;border-collapse:collapse;font-size:.82rem}
table.t th{position:sticky;top:0;background:#f7eedd;text-align:start;padding:.4rem;font-weight:800;z-index:1;white-space:nowrap}
table.t td{padding:.35rem .4rem;border-bottom:1px dashed #eadfca}
.scrollx{overflow:auto;max-height:70vh}
.nav a{display:flex;gap:.6rem;align-items:center;padding:.5rem .8rem;border-radius:.7rem;cursor:pointer;font-size:.86rem;font-weight:600;color:#e8f1e5}
.nav a:hover{background:rgba(255,255,255,.08)}
.nav a.on{background:var(--yolk);color:#2a2418}
.barchick{position:absolute;inset-inline-end:-8px;top:-7px;font-size:13px;animation:bob 1.4s ease-in-out infinite}
.conf{position:fixed;top:-40px;font-size:22px;animation:fall 2.4s linear forwards;z-index:99;pointer-events:none}
@keyframes fall{to{transform:translateY(110vh) rotate(540deg)}}
.toast{animation:rise .3s ease both}
.hen{animation:bob 2.6s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-3px) rotate(-2deg)}}
input[type=range]{accent-color:var(--green);width:100%}
@media print{
 .no-print{display:none!important}
 body{background:#fff}
 body[data-print=label] .print-report{display:none!important}
 body[data-print=report] .print-label{display:none!important}
 .card{box-shadow:none;break-inside:avoid}
 main{padding:0!important;margin:0!important}
 .scrollx{max-height:none;overflow:visible}
}