:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#223c35;background:#f5f6f2;font-size:15px;--green:#174c43;--line:#dce3dc;--muted:#718079}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:10px;background:white;color:var(--green);padding:11px 16px;min-height:44px}button:hover{background:#eaf0e9}button:disabled{opacity:.5;cursor:wait}input,select,textarea{width:100%;padding:12px;border:1px solid #cbd7ce;border-radius:9px;background:white;min-height:46px;color:#203a33}input:focus,select:focus,textarea:focus{outline:2px solid #528c78;outline-offset:2px}label{display:block;font-size:13px;color:#62746b;margin-bottom:7px}h1,h2,h3,p{margin:0}h1{font-size:30px;letter-spacing:-1px}h2{font-size:21px}p{line-height:1.65}.muted{color:var(--muted)}.small{font-size:12px}.primary{background:var(--green);border-color:var(--green);color:white}.primary:hover{background:#286859}.danger{color:#a34d3e}.brand{font-weight:750;font-size:20px;letter-spacing:-.5px}.brand small{display:block;font-size:11px;letter-spacing:1.5px;font-weight:500;margin-top:7px;color:#a9c5b9}.sidebar{width:240px;position:fixed;inset:0 auto 0 0;background:var(--green);color:white;padding:34px 22px;display:flex;flex-direction:column}.sidebar nav{margin-top:46px;display:grid;gap:7px}.sidebar button{background:transparent;color:#c4d8cc;border-color:transparent;text-align:left}.sidebar button.active{background:#ffffff17;color:white;border:1px solid #ffffff24}.sidebar .bottom{margin-top:auto;font-size:12px;color:#abc4b7;line-height:1.8}.main{margin-left:240px;padding:30px 42px 70px;max-width:1680px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px;font-size:12px;color:var(--muted)}.heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:25px 0}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:1.6px;color:#789083;margin-bottom:10px}.panel{background:white;border:1px solid var(--line);border-radius:15px;padding:24px;margin:18px 0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.metric{border:1px solid var(--line);border-radius:14px;padding:22px;background:white}.metric strong{display:block;font-size:32px;font-weight:550;margin:14px 0 3px}.toolbar{display:flex;gap:12px;align-items:center;margin:22px 0}.toolbar input{max-width:560px}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;background:#f7f9f5;color:#7b897f;font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.6px}td,th{padding:16px 12px;border-bottom:1px solid #edf0ea}td{vertical-align:top}td:first-child{min-width:220px}td small{display:block;margin-top:5px;color:#8a948d;overflow-wrap:anywhere}.num{font-variant-numeric:tabular-nums;white-space:nowrap}.badge{display:inline-block;padding:5px 8px;border-radius:6px;font-size:11px;background:#eef3e9;color:#45725c}.badge.warn{background:#fff2d9;color:#95712c}.badge.bad{background:#fcece8;color:#9b4e3a}.notice{background:#f0f3e9;border-left:3px solid #96aa72;border-radius:5px;padding:14px 18px;color:#657353;line-height:1.6;font-size:13px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{margin:15px 0}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}.card{border:1px solid var(--line);background:white;border-radius:13px;padding:22px;display:flex;flex-direction:column;gap:16px}.card h3{font-size:16px;line-height:1.5}.card button{margin-top:auto;align-self:flex-start}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.spacer{flex:1}.recipe-instructions{white-space:pre-wrap;line-height:1.85;overflow-wrap:anywhere}.login{min-height:100dvh;display:grid;place-items:center;background:linear-gradient(140deg,#e4ebe0,#f8f7ee)}.loginbox{max-width:440px;width:calc(100% - 32px);background:white;border:1px solid var(--line);padding:40px;border-radius:22px}.loginbox .brand{margin-bottom:35px}.loginbox .brand small{color:#7b8f83}.loginbox h1{font-size:26px;margin-bottom:10px}.loginbox form{margin-top:24px}.loginbox button{width:100%;margin-top:12px}.error{color:#ae503e;margin:12px 0;font-size:13px;line-height:1.5}.empty{padding:50px 20px;text-align:center;color:#87958a}.print-header{display:none}#toast{position:fixed;bottom:25px;right:25px;background:#203e34;color:white;border-radius:12px;padding:0;max-width:380px;z-index:10;box-shadow:0 8px 35px #18302522}#toast:not(:empty){padding:18px 22px}.offline{background:#ffeac5;color:#87521a;padding:12px}.ingredient{display:grid;grid-template-columns:minmax(0,1fr) 130px 46px;gap:10px;margin:10px 0}.footer-note{margin-top:32px;font-size:12px;color:#97a197}.instruction-check{display:inline-block;border:1px solid #82927d;width:15px;height:15px;margin-right:10px}.document-lines{margin-top:20px}a{color:var(--green)}
@media(max-width:1050px){.sidebar{width:200px;padding:25px 16px}.main{margin-left:200px;padding:25px}.metrics{gap:10px}.grid{grid-template-columns:1fr}}
@media(max-width:700px){h1{font-size:25px}.sidebar{width:100%;height:72px;inset:auto 0 0;padding:0 5px calc(env(safe-area-inset-bottom) / 2);z-index:5;border-radius:15px 15px 0 0}.sidebar>.brand,.sidebar>.bottom{display:none}.sidebar nav{display:flex;justify-content:space-around;margin:0;height:100%;gap:0}.sidebar nav button{font-size:10px;padding:8px 4px;text-align:center;flex:1;border-radius:0}.main{margin:0;padding:17px 16px 100px}.topbar{margin-bottom:15px}.heading{align-items:flex-start}.metrics{grid-template-columns:1fr 1fr 1fr;gap:7px}.metric{padding:14px 10px}.metric strong{font-size:25px}.metric span{font-size:11px}.panel{padding:16px}.toolbar{flex-wrap:wrap}.toolbar input{max-width:none}.cards{grid-template-columns:1fr}.tablewrap{margin:0 -8px}td,th{padding:13px 8px}.ingredient{grid-template-columns:minmax(0,1fr) 85px 40px;gap:5px}#toast{bottom:85px;left:16px;right:16px;max-width:none}.grid{grid-template-columns:1fr}.loginbox{padding:28px}}
@media print{@page{size:A4;margin:15mm}body{background:white;color:black;font-size:11pt}.sidebar,.topbar,.heading button,.toolbar,button,.no-print,.footer-note,#toast{display:none!important}.main{margin:0;padding:0;max-width:none}.panel{border:0;padding:0;margin:15px 0}.print-header{display:block;border-bottom:1px solid black;padding-bottom:12px;margin-bottom:15px}.metrics{display:none}.grid{display:block}table{font-size:9pt}th,td{padding:8px 5px}.tablewrap{overflow:visible}tr{break-inside:avoid}thead{display:table-header-group}.recipe-instructions{font-size:10pt;line-height:1.65}.notice{font-size:9pt}.heading{margin:10px 0}h1{font-size:18pt}.field{break-inside:avoid}}

@media(max-width:700px){
 .stock-table,.stock-table tbody{display:block;width:100%}.stock-table thead{display:none}
 .stock-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;border-bottom:1px solid var(--line);padding:12px 0}
 .stock-table td{display:block;border:0;min-width:0;padding:9px 4px;overflow-wrap:anywhere}
 .stock-table td:first-child{grid-column:1/-1;min-width:0;font-weight:650;font-size:15px;padding-bottom:12px}
 .stock-table td:first-child small{font-size:10px;font-weight:400}
 .stock-table td:nth-child(2)::before{content:'В учёте'}.stock-table td:nth-child(3)::before{content:'Свободно'}
 .stock-table td:nth-child(4)::before{content:'Снимок МойСклад'}.stock-table td:nth-child(5)::before{content:'Статус'}
 .stock-table td::before{display:block;font-size:11px;color:var(--muted);margin-bottom:6px}
 .stock-table .num{font-size:19px;font-weight:600}.stock-table .badge{font-size:11px}
 .stock-table td:nth-child(4){font-size:12px}.stock-table td:nth-child(4) small{font-size:10px}
 .login-help{display:block;line-height:1.5;margin-top:10px;min-height:44px}
}

.recipe-preview{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.technology-panel .recipe-instructions{overflow-wrap:anywhere}
@media print{.technology-panel{break-inside:auto}.technology-panel h2,.technology-panel h3{break-after:avoid}.recipe-instructions{orphans:3;widows:3}}
