.calc-wrap{max-width:820px;margin:30px auto;background:#fff;border-radius:16px;box-shadow:0 4px 24px rgba(0,0,0,.08);padding:32px}
.calc-wrap h2{text-align:center;color:#0052FF;font-size:24px;margin-bottom:6px}
.calc-wrap .sub{text-align:center;color:#888;font-size:14px;margin-bottom:28px}
.fg{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fi{display:flex;flex-direction:column}
.fi label{font-size:14px;font-weight:500;margin-bottom:6px;color:#555}
.fi label span{color:#999;font-weight:400;font-size:12px}
.fi input,.fi select{padding:10px 14px;border:1.5px solid #e0e0e0;border-radius:8px;font-size:15px}
.fi input:focus,.fi select:focus{outline:none;border-color:#0052FF}
.bc{grid-column:1/-1;background:#0052FF;color:#fff;border:none;padding:14px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;margin-top:8px}
.bc:hover{background:#0041cc}
.rs{margin-top:28px;padding:24px;background:linear-gradient(135deg,#f0f5ff,#e8f0fe);border-radius:12px;display:none}
.rs.show{display:block}
.rt{font-size:16px;font-weight:600;margin-bottom:16px;color:#0052FF}
.rg{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.ri{background:#fff;border-radius:10px;padding:16px;text-align:center}
.ri .lb{font-size:12px;color:#888;margin-bottom:4px}
.ri .vl{font-size:20px;font-weight:700}
.ri .vl.g{color:#00a868}.ri .vl.r{color:#e53935}.ri .vl.b{color:#0052FF}
.dt{width:100%;margin-top:16px;border-collapse:collapse}
.dt th,.dt td{padding:8px 12px;text-align:right;font-size:14px;border-bottom:1px solid #e8e8e8}
.dt th{text-align:left;color:#666;font-weight:500}
.dt tr:last-child{font-weight:600;background:#f0f5ff}
.pb{grid-column:1/-1;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;margin-top:4px}
.pbf{height:100%;border-radius:4px;transition:width .5s}
.tp{margin-top:20px;padding:12px 16px;background:#fff8e1;border-radius:8px;font-size:13px;color:#8d6e00;line-height:1.6}
@media(max-width:600px){.fg{grid-template-columns:1fr}.rg{grid-template-columns:1fr}.calc-wrap{padding:20px}}
🧮 Ozon利润计算器
精确计算Ozon店铺利润 · 支持FBO/FBS模式 · 汇率换算 · 佣金计算
FBO(Ozon仓库)FBS(自发货)
📊 利润分析结果
| 项目 | 金额(₽) | 金额(¥) |
| 商品售价 | – | – |
| Ozon佣金 | – | – |
| FBO配送费 | – | – |
| 物流费用 | – | – |
| 提现手续费 | – | – |
| 采购成本 | – | – |
| 包装/辅料 | – | – |
| 净利润 | – | – |
function r2c(r,e){return r/e}function c2r(c,e){return c*e}function f(n){return n.toFixed(2)}
function calc(){
var cc=+document.getElementById(‘cost_cny’).value||0,pr=+document.getElementById(‘price_rub’).value||0,
md=document.getElementById(‘delivery_mode’).value,cr=+document.getElementById(‘commission_rate’).value||15,
lr=+document.getElementById(‘logistics_rub’).value||0,pk=+document.getElementById(‘packaging_cny’).value||0,
er=+document.getElementById(‘exchange_rate’).value||12.5,wr=+document.getElementById(‘withdrawal_fee’).value||1;
if(cc<=0||pr<=0){alert('请填写采购成本和售价');return}
var cm=pr*cr/100,fb=0;
if(md==='fbo'){if(pr<=500)fb=60;else if(pr<=1500)fb=80;else if(pr<=3000)fb=100;else if(pr=0?’+’:”)+f(pf)+’¥’;pe.className=’vl ‘+(pf>=0?’g’:’r’);
var re=document.getElementById(‘rr’);re.textContent=f(pft)+’%’;re.className=’vl ‘+(pft>=0?’g’:’r’);
document.getElementById(‘pc’).textContent=f(r2c(pr,er))+’¥’;
var ba=document.getElementById(‘pb’);ba.style.width=Math.abs(Math.min(Math.max(pft,-100),100))+’%’;ba.style.background=pf>=0?’#00a868′:’#e53935′;
document.getElementById(‘t1’).textContent=f(pr);document.getElementById(‘t2’).textContent=f(r2c(pr,er));
document.getElementById(‘t3′).textContent=’-‘+f(cm);document.getElementById(‘t4′).textContent=’-‘+f(r2c(cm,er));
document.getElementById(‘t5′).textContent=md===’fbo’?’-‘+f(fb):’0.00’;document.getElementById(‘t6′).textContent=md===’fbo’?’-‘+f(r2c(fb,er)):’0.00’;
document.getElementById(‘t7′).textContent=lr>0?’-‘+f(lr):’0.00’;document.getElementById(‘t8′).textContent=lr>0?’-‘+f(r2c(lr,er)):’0.00’;
document.getElementById(‘t9′).textContent=’-‘+f(wd);document.getElementById(‘t10′).textContent=’-‘+f(r2c(wd,er));
document.getElementById(‘t11′).textContent=’-‘+f(cc);document.getElementById(‘t12′).textContent=pk>0?’-‘+f(pk):’0.00’;
document.getElementById(‘t13’).textContent=f(nr);
var ne=document.getElementById(‘t14′);ne.textContent=(pf>=0?’+’:”)+f(pf)+’¥’;ne.style.color=pf>=0?’#00a868′:’#e53935′;
var tp=”;
if(pf<0)tp='⚠️ 当前亏损!建议:①提高售价至 '+f(c2r(tc*1.3,er)+cm+fb+lr)+'₽ 以上 ②降低采购成本 ③选FBS模式';
else if(pft<15)tp='💡 利润率偏低(<15%),建议目标 ≥ 25%';
else if(pft<30)tp='✅ 利润率合理,建议预留5-10%退货缓冲';
else tp='🎉 利润率优秀!注意维持好评率';
tp+=' | 汇率:1¥ ≈ '+er+'₽';
document.getElementById('tp').textContent=tp;
}