@font-face{font-family:Vazirmatn;src:url('/assets/fonts/Vazirmatn-Regular.woff2') format('woff2');font-display:swap}*{box-sizing:border-box}body{margin:0;background:#f4f7f3;color:#193d32;font:16px/1.9 Vazirmatn,Tahoma,sans-serif}a{color:#245d48;text-underline-offset:5px}button,.button{font:inherit;display:inline-block;padding:11px 22px;border:0;border-radius:12px;background:#173e32;color:white;cursor:pointer;text-decoration:none}button:disabled{opacity:.5;cursor:wait}[hidden]{display:none!important}.portal{max-width:1120px;margin:auto;padding:30px 24px 60px}.back{font-size:.9rem}.hero{padding:32px 0 14px}.eyebrow,.muted{color:#61736a}h1{font-size:clamp(2rem,5vw,3rem);margin:8px 0}h2{font-size:1.25rem}p{margin:10px 0}.card{background:white;border:1px solid #dbe5dc;border-radius:20px;padding:24px;margin:22px 0}.notice{padding:14px 20px;background:#e8f0e3;border-radius:12px}.notice.error{background:#fff0e8;color:#803d27}.identity{display:flex;justify-content:space-between;gap:20px;align-items:center}.tag{font-size:.85rem;border-radius:30px;padding:6px 14px;background:#edf3e6;white-space:nowrap}.services{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.services .card{margin:0;display:flex;flex-direction:column;align-items:flex-start}.services p{flex:1;margin-bottom:24px}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}select{font:inherit;border:1px solid #ccd9cf;padding:10px;border-radius:10px;background:white;max-width:100%}.table-wrap{overflow:auto;max-width:100%}table{border-collapse:collapse;width:100%;white-space:nowrap;font-size:.88rem}th,td{text-align:right;padding:14px 12px;border-bottom:1px solid #e2e9e1}th{background:#f2f6ef}caption{text-align:right;padding:10px 0;color:#61736a}td button{font-size:.8rem;padding:6px 12px}footer{font-size:.9rem}:focus-visible{outline:3px solid #b97f24;outline-offset:4px}@media(max-width:620px){.portal{padding:20px 16px}.services{grid-template-columns:1fr}.card{padding:20px}.identity{align-items:flex-start;flex-direction:column}.customer-access{flex-wrap:wrap}}
/* Customer panel visual update. Every new rule is scoped to the account page.
   The legacy portal/table styles above also serve the admin reports. */
body[data-account]{--account-ink:#193d32;--account-muted:#52675b;--account-green:#176b45;--account-blue:#245b82;--account-ochre:#805a16;background:#f2f5f3;line-height:1.65}
body[data-account] .account-main{max-width:1080px;margin:auto;padding:28px 24px 48px}
body[data-account] .account-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 24px;padding:0 0 18px;border-bottom:1px solid #d4dfd8}
body[data-account] h1{font-size:clamp(1.6rem,4vw,2rem);line-height:1.4;margin:0}
body[data-account] h2{font-size:1.25rem;line-height:1.6;margin:0 0 8px}
body[data-account] .account-home-link{display:inline-flex;align-items:center;gap:10px;min-height:48px;color:#245448;font-size:.94rem;font-weight:700;text-decoration:none}
body[data-account] .account-home-link:hover{text-decoration:underline}
body[data-account] .account-login{max-width:456px;background:#fff;border:1px solid #c5d5ca;border-top:5px solid #185447;border-radius:20px;padding:28px;margin:0 auto;box-shadow:0 8px 26px #173e3208}
body[data-account] .account-login-icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:16px;border-radius:16px;background:#e8f3ed;color:#185447}
body[data-account] .account-login-icon svg{width:30px;height:30px}
body[data-account] .account-login>p{color:var(--account-muted);font-size:.96rem;margin:0 0 24px}
body[data-account] .account-login label{display:block;font-weight:700;margin:0 0 8px}
body[data-account] .account-login input{width:100%;min-height:56px;border:1.5px solid #93ab9c;border-radius:12px;background:#fff;color:var(--account-ink);font:inherit;font-size:1.1rem;line-height:1.5;padding:12px 14px}
body[data-account] .account-login input::placeholder{color:#60766a;opacity:1}
body[data-account] .account-login input:read-only{background:#f4f7f5}
body[data-account] #customerCode{font-variant-numeric:tabular-nums;font-size:1.5rem;letter-spacing:.25em;text-align:center}
body[data-account] .account-login #customerSubmit{width:100%;min-height:52px;margin-top:16px;background:#185447;border:1px solid #185447;border-radius:12px;font-weight:700}
body[data-account] #customerSubmit:hover:enabled{background:#113f35}
body[data-account] button:disabled{cursor:default;opacity:.58}
body[data-account] .account-status{font-size:.96rem;color:#245448;margin:14px 0;padding:12px 14px;background:#eaf4ee;border:1px solid #c8ddce;border-radius:12px;overflow-wrap:anywhere}
body[data-account] .account-status:empty{display:none}
body[data-account] .account-status.error{background:#fff0ee;color:#8d302a;border-color:#e6b2ac;border-inline-start:4px solid #a83c32}
body[data-account] .account-code-actions{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
body[data-account] .account-text-button{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#245448;border:1px solid #9eb5a6;min-height:48px;padding:10px 14px;border-radius:12px;line-height:1.5}
body[data-account] .account-text-button:hover:enabled{background:#eef5f0;border-color:#577963}
body[data-account] .account-code-actions button{margin-top:12px;flex:1 1 145px;font-size:.94rem}
body[data-account] .account-login>.account-public-link{font-size:.94rem;margin:24px 0 0;padding-top:18px;border-top:1px solid #dce6df}
body[data-account] .account-public-link a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:10px 12px;border:1px solid #b9d4c3;border-radius:12px;background:#edf6f0;color:#176b45;font-weight:700;text-decoration:none;white-space:normal;text-align:center}
body[data-account] .account-public-link a:hover{background:#e2f0e7;border-color:#176b45}
body[data-account] .account-identity{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px;padding:18px 22px;background:#fff;border:1px solid #c5d5ca;border-radius:18px}
body[data-account] .account-identity-info{display:flex;align-items:center;gap:18px;flex-wrap:wrap;min-width:0}
body[data-account] .account-session-state{display:inline-flex;align-items:center;gap:7px;color:#315f46;font-size:.88rem}
body[data-account] .account-session-state::before{content:'';width:8px;height:8px;flex:none;background:#3d7a55;border-radius:50%}
body[data-account] #accountMobile{font-size:1.1rem;font-variant-numeric:tabular-nums;unicode-bidi:isolate}
body[data-account] #customerLogout{flex:none;font-size:.94rem}
body[data-account] .account-services-title{margin:0 0 18px;font-size:1.15rem}
body[data-account] .account-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
body[data-account] .account-service{--service-accent:#176b45;--service-tint:#edf6f0;--service-line:#b6d5c0;position:relative;display:flex;flex-direction:column;align-items:stretch;min-width:0;background:#fff;border:1px solid var(--service-line);border-top:5px solid var(--service-accent);border-radius:18px;padding:22px;box-shadow:0 4px 12px #173e3205}
body[data-account] .account-service[data-entry="feed-profit"]{--service-accent:#245b82;--service-tint:#eef4fa;--service-line:#b4ccdf}
body[data-account] .account-service[data-entry="farm-layout"]{--service-accent:#805a16;--service-tint:#fff5e4;--service-line:#dfc795}
body[data-account] .account-service h2{font-size:1.17rem;font-weight:700;color:var(--account-ink);margin:0 0 8px}
body[data-account] .account-service h2::before{content:'';display:block;width:52px;height:52px;margin-bottom:16px;border-radius:15px;background-color:var(--service-tint);background-position:center;background-repeat:no-repeat;background-size:30px}
body[data-account] .account-service[data-entry="feed-quantity"] h2::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23176b45' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21V3m0 6C8 9 6 7 6 4c4 0 6 2 6 5Zm0 5c-4 0-7-2-7-5 4 0 7 2 7 5Zm0 5c-4 0-7-2-7-5 4 0 7 2 7 5Zm0-10c4 0 6-2 6-5-4 0-6 2-6 5Zm0 5c4 0 7-2 7-5-4 0-7 2-7 5Zm0 5c4 0 7-2 7-5-4 0-7 2-7 5Z'/%3E%3C/svg%3E")}
body[data-account] .account-service[data-entry="feed-profit"] h2::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23245b82' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19h16M6 15v-3m6 3V8m6 7V5M5 8l5-4 4 2 5-4m-4 0h4v4'/%3E%3C/svg%3E")}
body[data-account] .account-service[data-entry="farm-layout"] h2::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23805a16' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 10 9-7 9 7M5 9v12h14V9M10 21v-7h4v7M3 21h18'/%3E%3C/svg%3E")}
body[data-account] .account-service p{font-size:.94rem;color:var(--account-muted);margin:0 0 22px}
body[data-account] .account-service .button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:11px 14px;margin-top:auto;background:var(--service-accent);border:1px solid var(--service-accent);border-radius:12px;color:#fff;font-size:1rem;font-weight:700;text-align:center;line-height:1.6}
body[data-account] .account-service .button::after{content:'←';font-size:1.2em;line-height:1}
body[data-account] .account-service .button:hover{filter:brightness(.9)}
body[data-account] .account-help{max-width:740px;margin:28px auto 0;padding:12px 16px;border:1px solid #d4dfd8;border-radius:14px;background:#f8faf8;font-size:.92rem;color:var(--account-muted)}
body[data-account] .account-help summary{cursor:pointer;min-height:48px;display:list-item;align-content:center;padding:10px 0;font-weight:700;color:#3d5d4b}
body[data-account] .account-help p{max-width:66ch;margin:8px 0 14px}
body[data-account] .account-help a{display:inline-flex;align-items:center;min-height:48px}
body[data-account] .account-login-timing{font-size:.94rem;font-variant-numeric:tabular-nums;color:#52675b;margin:8px 0}
body[data-account] :focus-visible{outline:3px solid #ac6a10;outline-offset:4px}
body[data-account] input:focus-visible{outline:3px solid #185447;outline-offset:3px}
@media(max-width:760px){body[data-account] .account-services{grid-template-columns:1fr}body[data-account] .account-service{padding:20px}body[data-account] .account-service h2{position:relative;padding-inline-start:66px;min-height:52px;display:flex;align-items:center;margin-bottom:6px}body[data-account] .account-service h2::before{position:absolute;inset-inline-start:0;top:0;margin:0}body[data-account] .account-service p{padding-inline-start:66px;margin:0 0 20px}body[data-account] .account-identity-info{gap:8px;align-items:flex-start;flex-direction:column}}
@media(max-width:540px){body[data-account] .account-main{padding:20px 16px 36px}body[data-account] .account-heading{gap:12px;margin-bottom:20px;padding-bottom:14px}body[data-account] .account-home-link{font-size:.88rem;gap:6px}body[data-account] .account-login{padding:22px 20px}body[data-account] .account-services{gap:16px}body[data-account] .account-identity{padding:16px;gap:12px;margin-bottom:24px}body[data-account] #customerLogout{font-size:.88rem;padding:10px 12px}body[data-account] .account-help{padding:10px 14px}}
@media(prefers-reduced-motion:no-preference){body[data-account] .account-service .button,body[data-account] .account-text-button,body[data-account] #customerSubmit{transition:background-color .15s,border-color .15s}}
@media(forced-colors:active){body[data-account] .account-service,body[data-account] .account-login,body[data-account] .account-identity{border-color:CanvasText}body[data-account] .account-service .button,body[data-account] #customerSubmit{border:2px solid ButtonText}}
