:root{
  --sf-bg:#f6f8fb; --sf-card:#fff; --sf-accent:#4f46e5; --sf-muted:#6b7280;
}
*{box-sizing:border-box}
body{font-family:Inter,system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial;margin:0;background:linear-gradient(180deg,#f8fafc,#f1f5f9);color:#0f172a}
.sf-wrap{max-width:1000px;margin:28px auto;padding:18px}
.sf-header{display:flex;gap:12px;align-items:center;margin-bottom:18px}
.sf-logo{width:52px;height:52px;border-radius:8px;background:var(--sf-accent);color:white;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px}
.sf-title{margin:0;font-size:20px}
.sf-muted{color:var(--sf-muted);font-size:13px}
.sf-grid{display:grid;grid-template-columns:1fr 320px;gap:16px}
@media(max-width:900px){.sf-grid{grid-template-columns:1fr}}
.sf-card{background:var(--sf-card);border-radius:12px;padding:14px;box-shadow:0 8px 20px rgba(15,23,42,0.06)}
.sf-h2{margin:0 0 10px 0;font-size:16px}
.sf-row{margin-bottom:10px}
.sf-row.two{display:flex;gap:10px}
.sf-label{display:block;font-size:13px;color:var(--sf-muted);margin-bottom:6px}
.sf-input,.sf-select{width:100%;padding:9px 10px;border-radius:8px;border:1px solid #e6edf3;font-size:14px}
.sf-input[type=number]{-moz-appearance:textfield}
.sf-inline{display:flex;gap:8px;align-items:center}
.sf-select.small{width:110px}
.sf-small-muted{font-size:12px;color:var(--sf-muted);margin-left:8px}
.inline{display:inline-block;margin-left:8px}
.sf-actions{display:flex;gap:8px;justify-content:flex-start;margin-top:12px}
.sf-btn{background:var(--sf-accent);color:#fff;padding:9px 12px;border-radius:8px;border:0;cursor:pointer;font-weight:600}
.sf-btn.secondary{background:#eef2ff;color:var(--sf-accent)}
.sf-results-card{position:relative}
.sf-result{display:flex;justify-content:space-between;align-items:center;padding:6px 0}
.sf-value{font-weight:700}
.sf-muted.small{font-size:12px;color:var(--sf-muted)}
.sf-download{margin-top:12px;text-align:center}
.sf-plan-card{grid-column:1/-1}
.sf-plan-item{border:1px solid #f1f5f9;padding:10px;border-radius:8px;margin-bottom:8px;background:#fff}
.sf-plan-item h3{margin:0 0 6px 0;font-size:14px}
.sf-food{font-size:13px;color:var(--sf-muted);margin-bottom:6px}
